AI Product Quality Plan the rollout
UX and Fallback Scenarios for an AI Product
AI products inevitably face uncertainty. Deploying without fallback scenarios risks losing trust. Here’s an architectural approach to failure management—from interface to logging.
What is a fallback scenario in an AI product?
Fallback — a pre-defined action plan when an AI system cannot complete a task: insufficient data, model error, ambiguous request, or limit exceeded. It is not a “crash,” but rather smooth switching to a safe, predictable operating mode.
Unlike traditional systems, where fallback is a 500 error, in AI products it must preserve user context and provide a path to resolve the situation.
Architecture level fallback: 4 layers
flowchart TD
A[User Request] --> B{AI Agent}
B -->|Success| C[Response]
B -->|Uncertainty| D[Fallback Level 1: Clarification]
D -->|No Help| E[Fallback Level 2: Human-in-the-Loop]
E -->|Required| F[Fallback Level 3: Rollback/Manual Mode]
F -->|Critical| G[Fallback Level 4: Logging + Notification]
Each level is not a “fallback option,” but part of the UX flow. The higher the level, the greater the user engagement and control.
Examples of fallback scenarios
- Model uncertainty“I’m not sure I understood your request. Could you clarify: do you want a sales report for April or for the quarter?”
- No data available“I don’t yet have access to the data for the ‘Innovation’ department. For now, I have the report for the other departments. Can I request access?”
- Rights restriction“I can’t change the deal status—I don’t have the rights. Send to the manager for confirmation?”
- Technical failure: “Service temporarily unavailable. Saving request to queue—will process once restored.”
Pseudocode for agent fallback logic
// Level 1: confidence check
if agent.confidence < 0.85:
return fallback_request_clarification()
// Level 2: data access check
if not data_source.has_permission(request.context):
return fallback_human_review(
action="grant_access",
reason="missing_data_permission"
)
// Level 3: critical error
if system_error.is_critical():
log_critical_error()
notify_admin(channel="slack", priority="high")
return fallback_manual_mode(
message="System switched to manual mode. Please contact an operator."
)
Key parameters: confidence, permission_check, error_severity. All fallback scenarios must return a structured object with action, message, next_step.
Common mistakes
- “Silent Fallback”: the system silently returns an empty response—the user thinks the product is “broken.”
- Too aggressive fallback: switching to a human at every doubt reduces efficiency and causes fatigue.
- Lack of feedback: After the fallback scenario, it’s not logged what happened or how to improve.
- No fallback quality control: doesn’t check how often and why the fallback triggers—loses the ability to improve the model.
What to check before launching
| Criterion | Check |
|---|---|
| Do all API calls have fallback handling? | ✅ / ❌ |
| Have UX texts for fallback scenarios been reviewed for empathy? | ✅ / ❌ |
| Is fallback event logging enabled and structured? | ✅ / ❌ |
| Is the “human-in-the-loop” mechanism configured and tested? | ✅ / ❌ |
| Is there a metric: % fallback scenarios by type? | ✅ / ❌ |
Recommended KPI: ≤15% fallback scenarios per 1,000 requests. Higher values signal the need to improve data or model quality.
Next step: Integration with the quality control system
Fallback scenarios are not just about UX—they’re also a source of data to improve the product. Each fallback should:
- Log with context: request, model, confidence, action, user.
- Hit the “AI Quality” dashboard (in CodeVibers— Telegram channel There are examples).
- Trigger automatic review: if fallback for one type increases, initiate data audit or retraining.
Next topic: Roles and Responsibilities in AI Implementation.