conversational-ai-flow
Эксперт conversational AI. Используй для chatbot flows, dialog design, NLU intents и conversational UX.
When & Why to Use This Skill
This Claude skill is a specialized expert in Conversational AI architecture, focusing on the end-to-end design of chatbot flows, NLU intent structures, and conversational UX. It provides technical frameworks for state management, intent-based routing, and sophisticated error recovery, enabling developers to build resilient and intuitive dialogue systems.
Use Cases
- Designing complex multi-turn dialogue flows for customer service bots and virtual assistants.
- Implementing intent-based routing and automated slot-filling logic to streamline user data collection.
- Developing robust error recovery strategies and fallback mechanisms to handle ambiguous user inputs gracefully.
- Architecting state management systems that maintain context and conversation history across long interactions.
- Optimizing conversational UX through contextual response generation and multimodal rich-media components.
- Monitoring and improving bot performance using flow metrics like completion rates and abandonment point analysis.
| name | conversational-ai-flow |
|---|---|
| description | Эксперт conversational AI. Используй для chatbot flows, dialog design, NLU intents и conversational UX. |
Conversational AI Flow Expert
Эксперт по проектированию и реализации потоков разговорного ИИ.
Основные принципы дизайна
Управление состоянием
class ConversationState:
def __init__(self):
self.current_intent = None
self.entities = {}
self.conversation_history = []
self.flow_position = "start"
self.confidence_threshold = 0.7
def update_context(self, user_input, intent, entities):
self.conversation_history.append({
"user_input": user_input,
"intent": intent,
"entities": entities
})
self.entities.update(entities)
self.current_intent = intent
Паттерны архитектуры потоков
Маршрутизация на основе намерений
flows:
booking_flow:
entry_conditions:
- intent: "book_appointment"
steps:
- name: "collect_datetime"
prompt: "When would you like to schedule?"
validation: "datetime_validator"
- name: "confirm_booking"
prompt: "Confirm booking on {datetime}?"
actions: ["create_booking", "send_confirmation"]
fallback_flow:
triggers: ["low_confidence", "unknown_intent"]
strategy: "clarification_questions"
Паттерн заполнения слотов
def slot_filling_handler(state, required_slots):
missing_slots = [s for s in required_slots if s not in state.entities]
if missing_slots:
return generate_slot_prompt(missing_slots[0], state)
return proceed_to_next_step(state)
Обработка ошибок и восстановление
Прогрессивное раскрытие
class ErrorRecovery:
def handle_misunderstanding(self, state, attempt_count):
strategies = {
1: "I didn't quite catch that. Could you rephrase?",
2: "Let me try differently. Are you looking to: [options]?",
3: "Let me connect you with a human agent."
}
return strategies.get(attempt_count, strategies[3])
Генерация ответов
Контекстуальные шаблоны
class ResponseGenerator:
templates = {
"confirmation": [
"Got it! {summary}. Is that correct?",
"Let me confirm: {summary}. Does this look right?"
],
"progress": [
"Great! We've got {completed}. Next, {next_step}.",
"Perfect! Just need {remaining} and we're done."
]
}
Мультимодальные ответы
{
"response_type": "rich",
"text": "Here are your options:",
"components": [
{
"type": "quick_replies",
"options": [
{"title": "Schedule Appointment", "payload": "intent:book"},
{"title": "Check Status", "payload": "intent:status"}
]
}
]
}
Аналитика и оптимизация
def track_flow_metrics(conversation_id, metrics):
return {
"completion_rate": metrics.completed / metrics.started,
"average_turns": metrics.total_turns / metrics.conversations,
"fallback_rate": metrics.fallbacks / metrics.total_turns,
"abandonment_points": identify_drop_off_points(conversation_id)
}
Лучшие практики
- Определите четкую личность и тон бота
- Предвосхищайте потребности пользователей
- Используйте резюме для длинных диалогов
- Тестируйте все пути и edge cases
- Мониторьте реальные разговоры для улучшения