geo/docs/02-模块说明/agent-protocol.md

3.2 KiB
Raw Blame History

Agent间通信协议

概述

本文档详细描述Agent Framework中各Agent之间的通信协议和数据结构。

消息类型

TaskMessage (任务消息)

从调度器发往Agent的任务消息。

字段 类型 必填 说明
task_id str UUID格式的任务ID
agent_name str 目标Agent名称
task_type str 任务类型
priority int 优先级0-99最高
input_data dict 输入参数
callback_url str 回调URL
created_at datetime 创建时间
timeout_seconds int 超时时间默认300秒

TaskResult (任务结果)

从Agent返回的结果消息。

字段 类型 必填 说明
task_id str 对应的任务ID
agent_name str 执行任务的Agent名称
status str 任务状态 (completed/failed/cancelled)
output_data dict 输出数据
error_message str 错误信息
started_at datetime 开始时间
completed_at datetime 完成时间
metrics dict 执行指标耗时、token消耗等

TaskProgress (进度上报)

Agent执行过程中上报的进度信息。

字段 类型 必填 说明
task_id str 任务ID
agent_name str Agent名称
progress float 进度 (0.0-1.0)
message str 进度描述
updated_at datetime 更新时间

状态枚举

TaskStatus (任务状态)

class TaskStatus(str, Enum):
    PENDING = "pending"      # 等待执行
    RUNNING = "running"      # 执行中
    COMPLETED = "completed"  # 已完成
    FAILED = "failed"       # 执行失败
    CANCELLED = "cancelled"  # 已取消

AgentStatus (Agent状态)

class AgentStatus(str, Enum):
    ONLINE = "online"   # 在线
    OFFLINE = "offline" # 离线
    BUSY = "busy"       # 忙碌中

通信流程

1. 外部请求 → Dispatcher.dispatch(TaskMessage) → Redis Queue
2. Redis Queue → Agent消费 → 执行任务
3. Agent执行完成 → TaskResult → Dispatcher.handle_result
4. Dispatcher更新数据库 → 触发回调(如有)

Agent类型

类型 说明 职责
CITATION_DETECTOR 引用检测Agent 解析AI平台响应识别品牌引用
CONTENT_GENERATOR 内容生成Agent 生成GEO优化内容
DEAI_AGENT 去AI化Agent 去除AI生成痕迹
GEO_OPTIMIZER GEO优化Agent SEO和GEO优化
RULE_CHECKER 规则检查Agent 内容合规审核
COMPETITOR_ANALYZER 竞品分析Agent 竞品数据收集分析
PERFORMANCE_TRACKER 性能追踪Agent 追踪内容表现

任务类型

Agent task_type 说明
CitationDetector citation_detect 检测品牌引用
ContentGenerator generate 生成内容
DeAIAgent humanize 去AI化处理
GEOOptimizer optimize GEO优化

心跳机制

Agent通过定时更新心跳来维持在线状态

  • 心跳超时阈值90秒
  • 超时后Agent被标记为OFFLINE
  • Registry.check_health() 定期检查所有Agent状态