最近在做一个多步骤的Agent,需要让LLM先生成SQL,再根据查询结果写总结。我参考了网上一些最佳实践,把每个子任务的Prompt都写得很详细,加了角色设定、输出格式、few-shot示例,甚至还有“如果xxx就yyy”的边界处理。结果单步测试还行,一旦串成Agent流程,经常出现中间步骤输出格式漂移,或者后一个LLM错误理解前一个的输出。