^__^ • 1 / 09
错误1:Prompt过长,模型注意力分散 表现:1000+行超长Prompt,模型经常"忘记"关键指令 原因:模型注意力机制的限制,过长的Prompt导致关键信息被淹没 解决方案: 1 采用Multi-Agent架构,每个Agent只负责一个子任务 2 分层加载上下文,只加载当前步骤相关的信息 3 单个Agent的Prompt控制在500行以内 实战案例:将超长Prompt拆分为多个聚焦的小Prompt,每个控制在300-500行以内 错误2:状态管理混乱,多轮对话不连贯 表现:Agent"忘记"用户之前的诉求,重复提问,用户体验差 原因:依赖LLM从历史对话中推断状态,但LLM不擅长状态管理 解决方案: 状态显式传递:在Prompt开头明确告知当前状态 职责分离:LLM负责内容生成,代码负责状态管理 实战案例:在每个Agent的Prompt开头添加"## 当前状态"部分 错误3:边界case处理不当,误判率高 表现:相似意图经常混淆,如"为什么限制我的支付?"被误判为其他意图 原因:边界规则描述不清晰,缺少边界case的示例 解决方案: 1 用表格清晰展示边界规则 2 提供大量边界case的Few-shot示例 3 明确判断逻辑 错误4:输出格式不稳定,程序解析失败 表现:LLM有时输出JSON,有时输出自然语言,导致程序解析报错 原因:格式约束不够强,示例不够多 解决方案: 在Prompt中明确要求"严格遵循XML/JSON格式" 提供至少5个完整的输出格式示例 明确标注必填和可选字段 在输出要求中强调"不要输出分析过程,直接输出结果" 实战案例:在每个Agent的Prompt中添加"## 输出格式"部分,提供6-7个示例 6大核心原则: 单一职责:一个Agent只做一件事,做好一件事。 职责分离:LLM擅长创造性生成,不擅长确定性决策。 显式优于隐式:状态、规则、示例都显示,明确告知优于期待模型推断。 结构化优于自然语言:使用表格、列表、代码块展示规则、要求、示例。 示例优于说明:边界case、输出格式都要有示例而非说明。 测试驱动优化:建立测试用例集、准确率baseline,根据错误case分析优化。 各位彦祖亦菲,你学会了吗?延展阅读:Prompt设计六要素