Human approval workflows help make sure AI decisions are checked by people before final use. This keeps results safe and trustworthy.
Human approval workflows in Agentic AI
Start learning this pattern below
Jump into concepts and practice - no test required
workflow = HumanApprovalWorkflow(
ai_model=model,
approval_condition=condition_function,
human_reviewer=reviewer_function
)
result = workflow.run(input_data)HumanApprovalWorkflow connects AI output with human checks.
The approval_condition decides when human review is needed.
workflow = HumanApprovalWorkflow(
ai_model=my_model,
approval_condition=lambda output: output['confidence'] < 0.8,
human_reviewer=ask_human
)
result = workflow.run(data)def always_approve(output): return True workflow = HumanApprovalWorkflow( ai_model=my_model, approval_condition=always_approve, human_reviewer=ask_human ) result = workflow.run(data)
This program creates a simple AI model that outputs a prediction with confidence. If confidence is below 0.9, it asks a human to approve. The human approves only if confidence is at least 0.5. The program tests three cases with different confidence values.
class HumanApprovalWorkflow: def __init__(self, ai_model, approval_condition, human_reviewer): self.ai_model = ai_model self.approval_condition = approval_condition self.human_reviewer = human_reviewer def run(self, input_data): ai_output = self.ai_model(input_data) if self.approval_condition(ai_output): print('AI output needs human approval.') approved = self.human_reviewer(ai_output) if approved: print('Human approved the AI output.') return ai_output else: print('Human rejected the AI output.') return None else: print('AI output auto-approved.') return ai_output def simple_ai_model(data): # Simulate AI output with confidence return {'prediction': 'Accept', 'confidence': data} def human_review(output): # Simulate human approval if confidence >= 0.5 print(f"Human reviewing output with confidence {output['confidence']}") return output['confidence'] >= 0.5 workflow = HumanApprovalWorkflow( ai_model=simple_ai_model, approval_condition=lambda out: out['confidence'] < 0.9, human_reviewer=human_review ) print('Test with confidence 0.95:') result1 = workflow.run(0.95) print('Result:', result1) print('\nTest with confidence 0.7:') result2 = workflow.run(0.7) print('Result:', result2) print('\nTest with confidence 0.4:') result3 = workflow.run(0.4) print('Result:', result3)
Human approval adds time but improves safety and trust.
Design clear conditions to avoid too many or too few human checks.
Keep human reviewers informed and trained for consistent decisions.
Human approval workflows combine AI with people to check important decisions.
They help catch mistakes and meet rules for sensitive tasks.
Use simple conditions to decide when to ask humans for approval.
Practice
Solution
Step 1: Understand the role of human approval workflows
Human approval workflows are designed to combine AI with human checks to ensure important decisions are correct and safe.Step 2: Identify the correct purpose
The main goal is to have humans review AI decisions when needed, especially for sensitive or critical tasks.Final Answer:
To have people check AI decisions for important or sensitive tasks -> Option AQuick Check:
Human approval = human checks on AI decisions [OK]
- Thinking human approval replaces AI fully
- Believing it speeds up AI by skipping checks
- Assuming it trains AI without humans
Solution
Step 1: Understand the condition logic
We want to request human approval when confidence is less than 0.7, so the condition should check for values below 0.7.Step 2: Match the correct syntax
The correct syntax isif confidence < 0.7:followed by the approval request function.Final Answer:
if confidence < 0.7: request_approval()-> Option BQuick Check:
Less than 0.7 triggers approval [OK]
- Using > instead of <
- Checking equality instead of less than
- Using != which triggers on all but 0.7
confidence = 0.65?
if confidence < 0.7:
print('Request human approval')
else:
print('Auto approve')Solution
Step 1: Check the condition with given confidence
Since confidence is 0.65, which is less than 0.7, the conditionconfidence < 0.7is true.Step 2: Determine which print statement runs
Because the condition is true, the code prints 'Request human approval'.Final Answer:
Request human approval -> Option CQuick Check:
0.65 < 0.7 triggers approval print [OK]
- Choosing 'Auto approve' by confusing condition
- Thinking no output occurs
- Assuming syntax error without checking code
def check_approval(confidence):
if confidence < 0.7
return 'Request approval'
else:
return 'Auto approve'Solution
Step 1: Check syntax of if statement
The if statement is missing a colon (:) at the end, which is required in Python syntax.Step 2: Verify other parts of the code
The comparison operator is correct, indentation looks fine, and return statements are present.Final Answer:
Missing colon after if statement -> Option DQuick Check:
Python if needs colon [:] [OK]
- Ignoring missing colon syntax error
- Thinking indentation is wrong
- Assuming return statements are missing
Solution
Step 1: Understand the logic needed
Approval is requested if confidence is below 0.7 OR the task is 'high risk'. This means either condition triggers approval.Step 2: Match the correct Python condition
The correct condition uses the 'or' operator to combine the two checks:confidence < 0.7 or task == 'high risk'.Final Answer:
if confidence < 0.7 or task == 'high risk': request_approval()-> Option AQuick Check:
Use 'or' for either condition triggering approval [OK]
- Using 'and' instead of 'or' which requires both true
- Reversing comparison operators
- Confusing task string equality
