Skip to content

v2.6.6: response_format 支持 + Thinking 误判修复 + 上下文压缩策略重构

Choose a tag to compare

@7836246 7836246 released this 15 Mar 04:35
· 106 commits to main since this release

✨ 新功能
response_format 完整支持
支持 OpenAI 标准的 response_format 参数(json_object / json_schema)
自动将 JSON 格式约束追加到用户消息末尾,引导模型输出合规 JSON
支持 json_schema 模式:自动附带 Schema 定义供模型参考
后处理自动剥离:模型返回 Markdown 代码块包裹的 JSON 时,自动剥离 json 包裹,确保下游直接拿到可解析的 JSON 字符串
流式和非流式响应均支持
上下文压缩策略可配置化
新增 enableSummary 配置项:控制 AI 摘要压缩(用额外 API 调用对旧消息进行摘要压缩)
新增 enableProgressiveTruncation 配置项:控制渐进式截断(保留最近消息完整,仅截短早期超长消息)
两种策略可独立启用/禁用,灵活适配不同使用场景
🐛 修复
Thinking 提取顺序修复(非流式模式)
问题: 块中的内容可能包含触发拒绝检测的关键词,导致正常响应被误判为"拒绝"并触发不必要的重试
修复:将 Thinking 提取逻辑移到拒绝检测之前执行,确保 isRefusal() 只检测实际输出内容
重试响应同样先提取 Thinking 再进行拒绝检测
提示词中性化优化
进一步优化 converter.ts 中的提示词策略,减少模型拒绝率
调整上下文压缩逻辑的代码结构,提升可读性和可维护性
📦 配置变更
config.yaml 新增字段:

yaml

AI 摘要压缩(质量不稳定,默认关闭)

enableSummary: false

渐进式截断(默认开启)

enableProgressiveTruncation: true
📝 其他
简化 README 稳定性排名描述,避免频繁更新版本号
代码结构优化:上下文压缩策略从单一 if-else 重构为独立分支,逻辑更清晰