高质量任务指令需五步构建:一、锚定角色与职责;二、结构化拆解步骤并设终止条件;三、绑定工具调用上下文与参数约束;四、注入动态环境变量;五、设置幻觉熔断机制。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您正在为 Hermes Agent 设计提示词,但发现其执行偏离目标、频繁产生幻觉或无法调用工具,则可能是由于任务指令缺乏结构化约束与上下文锚定。以下是写出高质量任务指令的具体方法:
一、明确角色与身份锚定
角色定义是任务指令的根基,它决定 Agent 的语言风格、知识边界与行为倾向。没有清晰角色的任务指令,会使 Hermes 在多义场景中随机选择响应策略,导致输出不稳定。
1、在系统提示开头使用“你是……”句式直接声明身份,例如:“你是资深金融合规审查员,专精于跨境支付条款校验”。
2、补充该角色的核心职责,避免抽象描述,如不写“专业可靠”,而写:“每次输出必须标注所依据的监管条文编号(如FATF Recommendation 16)”。
3、嵌入典型失败案例作为负向示例,例如:“禁止将‘T+1结算’解释为‘次日到账’,必须严格区分清算周期与资金到账时点”。
二、结构化任务拆解指令
Hermes Agent 具备自主规划能力,但需通过显式结构化指令激活其 ReAct 或 Reflexion 范式。模糊的整体性要求会抑制其分步推理机制,导致跳步或幻觉。
1、强制启用思考链流程,指令中嵌入步骤编号标识:“请按以下四步执行:①提取用户请求中的时间范围、主体对象、动作动词;②比对本地知识库中最近3次同类操作记录;③若存在冲突,列出差异项及置信度;④仅当置信度≥92%时生成最终操作指令”。
2、为每一步设定可验证输出格式,例如第二步要求返回:“{‘record_id’: ‘R-20260411-087’, ‘action’: ‘账户冻结’, ‘reason_code’: ‘AML-TRIG-04’}”。
3、在末尾添加路径终止条件:“若任意步骤缺失必要字段,则中止执行并返回ERROR_CODE:MISSING_CONTEXT”。
三、绑定工具调用上下文
Hermes 原生支持 browser_navigate、code_runner 等工具,但未显式声明调用前提时,Agent 可能忽略可用能力或错误匹配参数。必须将工具能力嵌入任务流而非孤立罗列。
1、在任务描述中直接关联工具动作,例如:“先调用 browser_navigate 访问 https://regulation.gov.cn/notice,再使用 browser_snapshot full=true 提取页面顶部公告栏DOM结构”。
2、为工具参数预设约束值,防止自由输入引发异常:“browser_type 的 ref 参数仅允许从上一步 snapshot 返回的元素ID中选取,格式必须为 @e[数字]”。
3、设置工具失败降级逻辑:“若 browser_vision 截图失败,则改用 execute_code 运行 selenium 截图脚本,并将错误日志写入 /tmp/hermes_tool_fail.log”。
四、注入动态环境变量
Hermes 支持记忆模块与会话状态读取,但默认不主动加载。需在指令中显式调用环境信息,否则其行为将脱离真实上下文。
1、引用持久化记忆字段:“查阅 memory_key=‘client_contract_terms_v3’ 中的第4.2条违约责任条款”。
2、绑定实时系统状态:“获取当前时区时间(timezone=Asia/Shanghai),判断是否处于监管报送窗口期(09:00–11:30)”。
3、嵌入用户历史行为特征:“参考 user_profile.preference.language=zh-CN 和 last_used_tool=code_runner 的习惯,优先生成Python而非Shell脚本”。
五、设置幻觉熔断机制
针对 Hermes 在复杂推理中可能生成看似合理实则虚构的中间结论,需部署多层验证规则,而非依赖单一“禁止编造”声明。
1、强制引用来源标识:“所有数据陈述后必须紧跟 [SRC:xxx] 标签,xxx 限选自 knowledge_base_id 列表或 tool_output_id”。
2、部署交叉验证指令:“对每个数值结论,同步调用 calculator 验证计算过程,并将 calculator 返回的 expression 字段与原始推导式逐字符比对”。
3、启用置信度阈值开关:“当 model_confidence_score 。











