用途:在 Agently 中于请求发送前编排模型输入,聚焦提示词槽位、提示词分层、快捷提示方法、占位符映射、可序列化提示数据、底层 chat_history 与附件。不涉及模型配置、输出结构控制、YAML/JSON 提示模板文件或会话生命周期管理。前置条件:Agently >= 4.0.8.5。
主要能力:区分 agent 级与 request 级提示状态,使用 set_agent_prompt(...) 与 set_request_prompt(...);使用 system()、role()、rule()、user_info()、input()、info()、instruct()、examples()、attachment() 等快捷方法;决定何时使用 always=True;用标准槽位组合输入;在提示键与值中使用占位符映射;传入列表、字典等可序列化数据;用底层 chat_history 作为输入侧上下文;用 attachment() 输入富内容;用 to_text() 或 to_messages(...) 检查提示物化结果。
核心模型:输入分持久 agent 提示状态与单次 request 提示状态两层,get_response() 会快照两层并清空 request 提示,因此部分内容跨轮保留、部分不保留。提示生成将合并状态物化为纯文本或聊天式消息;涉及 chat_history 或 attachment 时,富内容仅在消息模式下忠实呈现。
选择规则:长期基线指令用 agent 级;单轮问题或临时上下文用 request 级;需显式控制 system/developer 消息用 set_agent_prompt(...) 或 set_request_prompt(...);稳定身份或人设通常用 system() 或 role(..., always=True);支撑事实或检索上下文用 info(...);行为约束用 instruct(...) 或 rule(...);少样本示例用 examples(...);手动多轮上下文用 chat_history;图像或富内容用 attachment(...);重复模板加变量替换用占位符映射;精确检查多模态载荷用 to_messages(rich_content=True)。
限制:普通提示至少需 input、info、instruct、output、attachment 之一,且需存在自定义额外提示键,否则生成失败;仅 system、developer、chat_history 不满足该规则。不适用于 provider、端点、认证、代理或超时设置,.output(...)、ensure_keys、流式响应或结果解析,YAML/JSON 提示文件加载或往返,会话激活、调整或长期记忆管理,以及 TriggerFlow 运行时流组合。具体参考文件内容暂未提供。