Dependable AI: What It Takes to Build AI Systems You Can Actually Trust
Dependable AI: What It Takes to Build AI Systems You Can Actually Trust
"Dependable AI" is one of those terms that sounds like marketing until you run an AI agent on production data and it hallucinates a customer name, skips a step, or silently fails at 2 AM. Then dependability becomes the only thing that matters.
This guide breaks down what dependable AI actually means in practice, the properties that make an AI system trustworthy, and the concrete patterns you can use to evaluate and build AI that works when it counts.
What Does Dependable AI Actually Mean?
Dependable AI refers to AI systems that consistently produce correct, predictable results under real-world conditions. It is not about perfection. It is about knowing how the system behaves when things go right, when things go wrong, and everything in between.
The term comes from dependable computing, a field that has been thinking about reliability since the 1960s. The core idea: a system is dependable when you can place justified confidence in the service it delivers.
For AI specifically, dependability covers several properties that traditional software reliability did not need to worry about:
| Property | What it means for AI | Example failure | |---|---|---| | Reliability | Produces correct outputs consistently over time | A coding agent that works 95% of the time but corrupts files the other 5% | | Availability | Ready when you need it, not stuck in a retry loop | An API agent that hangs for 30 seconds on every third request | | Safety | Does not cause harm even when it fails | A desktop agent that deletes the wrong folder when confused | | Integrity | Does not corrupt or lose data silently | An email agent that sends half-written drafts without confirmation | | Maintainability | Can be updated, debugged, and improved | A fine-tuned model with no eval suite, so nobody knows if the next update helps or hurts |
The Gap Between Demo and Dependable
Most AI demos look impressive. The agent fills out a form, writes code, or answers a question correctly. But a demo is a single path through a single scenario. Dependability is what happens across thousands of paths, edge cases, and failure modes.
Here is the gap in concrete terms:
Demo behavior: The agent opens a spreadsheet, reads the data, generates a report. Looks great on stage.
Production behavior: The spreadsheet has a blank row at line 47. The agent treats it as end-of-data and misses 200 rows. Nobody notices for three days because the report still looks plausible.
This is the core problem with AI dependability. Traditional software fails loudly (a crash, an error code, a stack trace). AI systems fail quietly, producing outputs that look reasonable but are wrong. The more capable the model, the more convincing the wrong answer.
Five Patterns for Building Dependable AI
1. Verification Loops
The simplest pattern: after the agent acts, verify the result before moving on. This is not a suggestion. It is the single most effective reliability technique for AI systems.
# Bad: fire and forget
result = agent.run("Extract all emails from this PDF")
save_to_database(result)
# Good: verify before committing
result = agent.run("Extract all emails from this PDF")
verification = agent.run(
f"Check if these are valid email addresses: {result}"
)
if verification.confidence > 0.95:
save_to_database(result)
else:
flag_for_human_review(result)
At Fazm, we run a verification step after every multi-step desktop automation. The agent takes a screenshot, compares the actual screen state to the expected state, and only proceeds if they match. This catches roughly 15% of actions that would have gone wrong silently.
2. Structured Outputs Over Free Text
Free-text outputs are the enemy of dependability. When an agent returns "I updated the spreadsheet and also fixed a few formatting issues," you have no way to programmatically verify what actually happened.
Structured outputs (JSON schemas, typed return values, enum-constrained fields) give you something you can validate:
{
"action": "update_cells",
"target": "Sheet1!A2:C50",
"cells_modified": 48,
"validation": {
"row_count_before": 50,
"row_count_after": 50,
"checksum_changed": true
}
}
3. Human-in-the-Loop Checkpoints
Not every action needs human approval. But irreversible, high-stakes actions should require a confirmation step. The key is knowing which actions are which.
| Action type | Risk level | Checkpoint needed? | |---|---|---| | Reading a file | Low | No | | Writing to a staging database | Medium | Optional | | Sending an email to a customer | High | Yes | | Deleting production data | Critical | Yes, with explicit confirmation | | Deploying code to production | Critical | Yes, with review |
The pattern is not "ask the human every time" (that defeats the purpose of automation). It is "ask the human at the irreversibility boundary."
4. Eval Suites That Test Real Failures
Most AI eval suites test whether the model can produce the right answer. Dependability evals test whether the model fails safely when it cannot.
Good eval cases for a dependable AI system:
5. Graceful Degradation
When a dependable AI system hits a wall, it should not crash, loop forever, or produce garbage. It should degrade to a simpler, safer behavior.
For a desktop automation agent, that means:
- If the screen does not match the expected state, stop and report rather than clicking blindly
- If a step fails three times, escalate to the user rather than retrying indefinitely
- If the model is uncertain about which button to click, highlight the candidates and ask rather than guessing
How to Evaluate AI Dependability
When choosing an AI tool or building your own, here are the questions that separate marketing from reality:
Evaluation checklist
Ask these before trusting any AI system with real work: What happens when the input is malformed? What happens when the network drops mid-task? Can you reproduce a failure from last Tuesday? Does it tell you when it is not confident? Can you roll back its actions?
The answers reveal the difference between an AI that works in a demo and one that works in production. A system that cannot answer these questions is not dependable yet, regardless of how good its benchmark scores look.
Dependable AI vs. Related Terms
You will see several terms used interchangeably, but they mean different things:
| Term | Focus | Key question | |---|---|---| | Dependable AI | Holistic trust across reliability, safety, and integrity | "Can I count on this system day after day?" | | Trustworthy AI | Ethics, fairness, transparency | "Is this system aligned with human values?" | | Responsible AI | Governance, accountability, bias mitigation | "Who is accountable when this goes wrong?" | | Reliable AI | Consistency of outputs | "Does it give the same answer for the same input?" | | Safe AI | Preventing harm | "What is the worst thing this system can do?" |
Dependable AI is the most operational of these. It is less about ethics frameworks and more about "does this thing work when I need it to."
Common Pitfalls
- Testing only the happy path. If your eval suite is 100% correct-input, correct-output pairs, you are testing accuracy, not dependability. Add failure cases.
- Confusing confidence with correctness. An LLM that says "I'm sure this is right" with high token probability is not more dependable. Calibration matters more than confidence.
- Over-relying on retries. Retrying a failed LLM call works for transient errors (timeouts, rate limits). It does not work for systematic failures (wrong interpretation, hallucinated data). If retry 1 and retry 2 give the same wrong answer, retry 3 will too.
- Skipping the human checkpoint to save time. The 30 seconds you save by auto-sending that email costs 3 hours when the agent hallucinates a client name.
- No observability. If you cannot see what the agent did, when it did it, and why, you cannot debug failures. Logging every action with its inputs and outputs is table stakes.
A Dependability Checklist for AI Agents
Before deploying an AI agent to handle real work, walk through this list:
1. Does the agent verify its own outputs before committing them?
2. Does it fail visibly (not silently) when something goes wrong?
3. Can you reproduce any failure from logs alone?
4. Does it ask for help when uncertain instead of guessing?
5. Are irreversible actions gated behind confirmation?
6. Is there an eval suite that includes failure cases?
7. Can you roll back any action the agent took?
8. Does the system degrade gracefully under load or error?
If you answered "no" to more than two of these, the system is not dependable yet. That does not mean it is useless. It means you should scope its autonomy to match its current reliability.
Wrapping Up
Dependable AI is not a feature you bolt on at the end. It is an architecture decision you make from the start: verification loops at every step, structured outputs you can validate, human checkpoints at irreversibility boundaries, and eval suites that test how the system fails, not just how it succeeds. The bar for "good enough" depends on what the agent is doing. Reading files? High autonomy is fine. Sending customer emails? Every action should be verified. Match the level of trust to the level of risk.
Fazm is an open source macOS AI agent that puts dependability first with built-in verification, structured outputs, and human-in-the-loop checkpoints. Open source on GitHub.