去年排查过一个性能问题. 一个包含很多正则替换的函数, 在处理几十万字符长度的文本时, 跑了 10 秒才完成. 最后定位到问题正则形式如下:
\s*xyz blahblah
几年前排查过 灾难性回溯 问题, 但这个正则的结构其实完全没有相关特征. 如果真的是灾难性回溯, 处理几十万字符的字符串早就卡死了, 而不是只跑 10 秒.
最后解决方案是先用
xyz blahblah
找 match, 再处理 leading spaces. 时延是毫秒内.
去年排查过一个性能问题. 一个包含很多正则替换的函数, 在处理几十万字符长度的文本时, 跑了 10 秒才完成. 最后定位到问题正则形式如下:
\s*xyz blahblah
几年前排查过 灾难性回溯 问题, 但这个正则的结构其实完全没有相关特征. 如果真的是灾难性回溯, 处理几十万字符的字符串早就卡死了, 而不是只跑 10 秒.
最后解决方案是先用
xyz blahblah
找 match, 再处理 leading spaces. 时延是毫秒内.
源于一个比喻, 模型是 horse, 人是 rider, 中间那层是 harness. 从字面来看 harness 是指为确保模型按预期行为运行而构建的约束框架与支撑体系. 至少可以从两个角度理解.
随着模型能力变化, harness 也需要改变, 如 Harness design for long-running application development.
书接上回, 增补 Auto Memory 保存和召回细节; 以及介绍 auto-dream.
WebSearch 调用服务端的搜索工具, WebFetch 本地抓 URL、HTML 转 markdown、再交给一个小模型按 prompt 提炼.
分为 Session Memory和 Auto Memory (跨 session).
若干层压缩.
2025 年大家都忙着开发 agent, 这里简要回顾一下 RAG.
RAG 基本操作
这套早在 2023 年就玩烂了.