当前位置: 首页 > news >正文

OpenClaw从入门到应用——Agrnt:上下文窗口与压缩

通过OpenClaw实现副业收入:《OpenClaw赚钱实录:从“养龙虾“到可持续变现的实践指南》

每个模型都有一个上下文窗口(即模型能够处理的最大令牌数)。长时间运行的对话会不断积累消息和工具结果;一旦上下文窗口空间紧张,OpenClaw 就会压缩较早的历史记录,以保持在限制范围内。

什么是压缩

压缩将较早的对话内容汇总成一个紧凑的摘要条目,同时保留最近的消息。该摘要会存储在会话历史记录中,因此后续请求将使用:

  • 压缩摘要
  • 压缩点之后的最近消息

压缩会持久保存在会话的 JSONL 历史记录文件中。

配置

使用openclaw.json中的agents.defaults.compaction设置来配置压缩行为(模式、目标令牌数等)。

压缩摘要默认会保留不透明的标识符(identifierPolicy: "strict")。你可以通过设置identifierPolicy: "off"来覆盖此行为,或者通过设置identifierPolicy: "custom"并提供identifierInstructions自定义文本来覆盖。

你还可以通过agents.defaults.compaction.model为压缩摘要指定一个不同的模型。当你的主模型是本地模型或小型模型,而你希望由能力更强的模型来生成压缩摘要时,此功能非常有用。该覆盖设置接受任何provider/model-id格式的字符串:

{"agents":{"defaults":{"compaction":{"model":"openrouter/anthropic/claude-sonnet-4-5"}}}}

这也适用于本地模型,例如,专门用于摘要生成的第二个 Ollama 模型,或者一个经过微调的压缩专家模型:

{"agents":{"defaults":{"compaction":{"model":"ollama/llama3.1:8b"}}}}

如果未设置该值,压缩将使用代理的主模型。

自动压缩(默认开启)

当会话接近或超过模型的上下文窗口时,OpenClaw 会触发自动压缩,并可能使用压缩后的上下文重试原始请求。你会看到:

  • 在详细模式下显示🧹 Auto-compaction complete
  • /status命令显示🧹 Compactions:

在压缩之前,OpenClaw 可以执行一次静默内存刷新操作,将持久性笔记存储到磁盘。有关详细信息和配置,请参阅内存(请参考:https://blog.csdn.net/hy592070616/article/details/81707766)。

手动压缩

使用/compact命令(可选择附带指令)来强制进行一次压缩:

/compact 关注决策和未解决的问题

上下文窗口来源

上下文窗口大小是模型特定的。OpenClaw 使用配置的提供者目录中的模型定义来确定限制。

压缩 vs. 修剪

  • 压缩:对内容进行摘要并持久保存到 JSONL 文件中。
  • 会话修剪:仅修剪旧的工具结果,每次请求时在内存中操作。有关修剪的详细信息,请参阅 /concepts/session-pruning(请参考:https://blog.csdn.net/hy592070616/article/details/81707766)。

OpenAI 服务端压缩

OpenClaw 还支持兼容的 OpenAI 直接模型使用 OpenAI Responses 服务端压缩提示。这与本地的 OpenClaw 压缩是分开的,可以同时运行。

  • 本地压缩:OpenClaw 生成摘要并持久保存到会话 JSONL 文件中。
  • 服务端压缩:当启用storecontext_management时,OpenAI 在提供者一侧压缩上下文。请参阅 OpenAI 提供者(请参考:https://blog.csdn.net/hy592070616/article/details/81707766)了解模型参数和覆盖设置。

提示

  • 当会话感觉陈旧或上下文臃肿时,使用/compact
  • 大型工具输出已被截断;修剪可以进一步减少工具结果的累积。
  • 如果你需要一个全新的开始,使用/new/reset可以启动一个新的会话 ID。
http://www.jsqmd.com/news/688377/

相关文章:

  • 英雄联盟Akari助手:3分钟快速上手的终极游戏效率工具
  • 2026贵阳装修怎么选?半包、全包、整装头部品牌权威解析 - 深度智识库
  • Ubuntu 16.04 上搜狗输入法卸载不干净?试试这个彻底清理脚本(附ibus/fcitx安装)
  • 数据治理是什么?数据治理、数据管理和数据合规有什么区别?
  • Steam Achievement Manager终极指南:如何快速管理你的Steam游戏成就
  • 3分钟快速上手QtScrcpy:跨平台Android投屏控制的完整指南
  • Reference Extractor:如何高效提取Word文档中的Zotero和Mendeley引用?
  • 保姆级教程:在Ubuntu 18.04上为爱芯元智AX630A编译并烧录Linux系统到eMMC
  • 为机器人 Agent 设计 Harness 实时控制循环
  • Blender贝塞尔曲线终极工具:5个技巧让你的3D建模效率提升300%
  • 手把手教你用UniApp的live-pusher+plus.zip.compressImage打造安卓人脸登录功能
  • 虚拟机磁盘 IOPS 不够用 / 占用过高?ESXi 两种调整限制的实用教程
  • C++26反射元编程生产就绪评估报告(基于Linux x86_64/ARM64双平台+glibc 2.38+内核5.15实测,含编译时间增幅阈值警戒线)
  • 第五篇:《WebDriver等待机制详解:隐式等待、显式等待与流畅等待》
  • 2026年,如何从TOP10软件开发源头厂家选出你的最佳合作伙伴?
  • 室内扫地机器人行业分析报告
  • 内存不够用?手把手教你理解CXL Type 3内存扩展卡如何给服务器“加内存条”
  • 别再为工业CCD黑屏发愁!手把手教你用Keyence视觉软件搞定新相机调试(附参数详解)
  • 北京金发钹祥金属材料贸易:北京不锈钢焊接哪家好 - LYL仔仔
  • PDF转MOBI排版乱?手把手教你用Calibre+代码实现智能分段与标题识别
  • 别再手动P图了!用DCGAN+TensorFlow 2.x自动修复人脸老照片(附CelebA数据集处理技巧)
  • 2026款乐道L90上市:30万级集齐顶尖智能科技,八大板块超70项升级刷新出行标杆
  • 用C语言给TM1651数码管驱动写个“温度计”:从硬件接线到闪烁报警的完整实战
  • 如何使用 GPT-Image-2 一键生成顶刊级科研图表
  • 避开B题大坑!华中杯数学建模中‘文本转数据’的3个实用技巧与相似度计算实战
  • LA MENTE美燕美活饮建议买吗?2026抗衰科技新选择 - 品牌排行榜
  • STM32G4 HAL库下IIC通信避坑指南:模拟IIC驱动AT24C02和MCP4017的常见时序问题
  • 第六篇:《Page Object设计模式:让UI测试代码可维护、可复用》
  • 3分钟掌握星穹铁道抽卡数据分析,告别盲目氪金!
  • 链游革命2.0:源码开放与智能合约驱动的下一代游戏经济体