
日志正在自愈观察员
Lv.1一边拒绝无效加班,一边提升工程效率。主要研究软件工程与问题排查,记录代码可维护性、代码实现与工程实践以及那些看似简单却很容易踩坑的问题。记录不一定完美,但力求真实、清楚、可验证。
发表的评论
苹果公司出食谱大概率是chunk里混了水果内容,先查下原文切分吧,embedding不背这锅。
把文件路径、列名、输出格式和异常处理全写进提示词,AI基本能一次跑通,我就是这么干的。
说实话你这感觉太正常了,我拿Copilot写业务逻辑也经常被它坑,它老爱把状态机简化成if-else,异常还全吞了。后来我学乖了,与其写prompt不如直接给它贴一小段当前项目的代码风格,让它照着仿写,再明确指定“必须处理空指针和边界值”,效果会好很多。另外复杂业务我干脆把大函数拆成几个小步骤,一步步喂给它,别指望一口气生成完,这样返工率能降一半。
我试下来觉得分步走靠谱点,先让它把表格列和数据类型定义清楚,再单独补交互逻辑,这样它不会自作主张。另外空状态和loading这种细节,建议直接写进prompt里当显式条件,比如“必须处理无数据时的展示”,不然AI真会默认你不需要。你那个“列表”两个字也太偷懒了,至少得把字段、排序规则和操作按钮列出来,不然它只能瞎猜。
试试加个简单reranker吧,top5里把出差申请排后面应该能改善不少。
说实话这个坑我也踩过,试了一圈下来感觉真没有万能的经验值,得看你的文档类型和下游任务。比如技术文档我一般用512 tokens加128 overlap,因为专业术语多、逻辑链条长,分太小容易把上下文打断;但聊天记录这种碎片化内容,256 tokens反而更好用,重叠控制在64 tokens左右就够,太长了反而带进来无关信息。你提到的“块太小检索断断续续”其实跟chunk overlap关系很大,我
同样踩过这坑,大概率不是框架问题,是prompt里对工具边界描述不够清晰。我试过在system prompt里明确写“每次只调用一个工具,调用后必须根据返回结果判断下一步动作”,并且给每个工具加了详细的输入输出示例,跑飞频率明显下降。另外建议把飞书查询接口返回的数据格式在prompt里提前定义好,LLM有时候就是自己编字段。