Skip to content
CrewAI 文档版本 跟随上游 源快照 d56bdb7a 更新于 2026-10-18

人在回路(HITL)工作流

了解如何在 CrewAI 中实现人在回路工作流,以增强决策能力

人在回路(HITL)是一种强大的方法,它将人工智能与人类专业知识相结合,以增强决策能力并改善任务成果。CrewAI 提供了多种方式来实现 HITL,具体取决于你的需求。

选择合适的 HITL 方式

CrewAI 提供两种主要方式来实现人在回路工作流:

方式适用场景集成版本
基于 Flow(@human_feedback 装饰器)本地开发、基于控制台的审核、同步工作流Flow 中的人工反馈1.8.0+
基于 Webhook(企业版)生产部署、异步工作流、外部集成(Slack、Teams 等)本指南-

TIP

如果你正在构建流程,并希望基于反馈添加带路由的人工审核步骤,请查看 Flow 中的人工反馈 指南中的 @human_feedback 装饰器。

设置基于 Webhook 的 HITL 工作流

Configure Your Task

在启用人工输入的情况下设置你的任务:

Crew Human Input

Provide Webhook URL

在启动 crew 时,提供一个用于人工输入的 webhook URL:

Crew Webhook URL

使用 Bearer 身份认证的示例:

bash
curl -X POST {BASE_URL}/kickoff \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "inputs": {
      "topic": "AI Research"
    },
    "humanInputWebhook": {
      "url": "https://your-webhook.com/hitl",
      "authentication": {
        "strategy": "bearer",
        "token": "your-webhook-secret-token"
      }
    }
  }'

或使用 Basic 身份认证:

bash
curl -X POST {BASE_URL}/kickoff \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "inputs": {
      "topic": "AI Research"
    },
    "humanInputWebhook": {
      "url": "https://your-webhook.com/hitl",
      "authentication": {
        "strategy": "basic",
        "username": "your-username",
        "password": "your-password"
      }
    }
  }'

Receive Webhook Notification

当 crew 完成需要人工输入的任务后,你将收到一条 webhook 通知,其中包含:

  • 执行 ID
  • 任务 ID
  • 任务输出

Review Task Output

系统将暂停在 Pending Human Input 状态。请仔细审查任务输出。

Submit Human Feedback

使用以下信息调用 crew 的恢复端点:

Crew Resume Endpoint

WARNING

关键:必须再次提供 Webhook URL: 你必须在恢复调用中提供与启动调用中相同的 webhook URL(taskWebhookUrl、stepWebhookUrl、crewWebhookUrl)。Webhook 配置不会从启动调用中自动延续——必须在恢复请求中显式包含,才能继续接收任务完成、智能体步骤和 crew 完成的通知。

带 webhook 的恢复调用示例:

bash
curl -X POST {BASE_URL}/resume \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "execution_id": "abcd1234-5678-90ef-ghij-klmnopqrstuv",
    "task_id": "research_task",
    "human_feedback": "Great work! Please add more details.",
    "is_approve": true,
    "taskWebhookUrl": "https://your-server.com/webhooks/task",
    "stepWebhookUrl": "https://your-server.com/webhooks/step",
    "crewWebhookUrl": "https://your-server.com/webhooks/crew"
  }'

WARNING

反馈对任务执行的影响: 提供反馈时务必谨慎,因为整个反馈内容都会作为额外上下文并入后续的任务执行中。

这意味着:

  • 你反馈中的所有信息都会成为任务上下文的一部分。
  • 不相关的细节可能会对任务产生负面影响。
  • 简洁、相关的反馈有助于保持任务聚焦与效率。
  • 提交前务必仔细检查你的反馈,确保其中只包含能够积极引导任务执行的 pertinent 信息。

Handle Negative Feedback

如果你提供负面反馈:

  • crew 将带着你反馈中新增的上下文重试该任务。
  • 你将收到另一条 webhook 通知,以便进一步审查。
  • 重复步骤 4-6,直到满意为止。

Execution Continuation

当你提交正面反馈时,执行将继续进入后续步骤。

最佳实践

  • 要具体:提供清晰、可操作的反馈,直接针对当前任务
  • 保持相关:只包含有助于改进任务执行的信息
  • 要及时:及时响应 HITL 提示,以免工作流延迟
  • 仔细审查:提交前再次检查你的反馈,确保准确无误

常见用例

HITL 工作流在以下场景中尤其有价值:

  • 质量保证与验证
  • 复杂的决策场景
  • 敏感或高风险操作
  • 需要人类判断的创造性任务
  • 合规与监管审查

企业版功能

Flow HITL Management Platform

BytesRouter 是社区翻译站点,所有译文仅供参考,一切以官方英文原文为准。