何时使用
安装
基础 Harness 扩展已随 VeADK 内置,无需额外安装。需要 Headroom 压缩实现时安装harness 依赖组:
进程内插件模式
进程内模式通过build_harness_plugins() 构建插件列表,挂载到 Runner:
app.py
app.py 后执行 python app.py,应先输出插件名称,再输出智能体回复。回答校验是规则检查,不保证回答事实正确;压缩可能丢失细节,应按任务评估效果
插件能力
通过环境变量配置
使用build_harness_plugins_from_env() 从环境变量构建插件:
组件与场景分别优先读取
HARNESS_ENHANCE_COMPONENTS、HARNESS_ENHANCE_PROFILE,再回退到不带 ENHANCE 的同名变量。字符上限、存储路径、压缩提供方和校验模式则优先读取不带 ENHANCE 的变量;不要对所有变量套用同一种优先级
受管 Sidecar 模式
受管 Sidecar 模式通过HarnessExtension 启动受控运行时,由运行时负责执行全部 Harness 增强行为。HarnessExtension 仅负责启动运行时、应用模型与 MCP 绑定并管理生命周期。
通过环境变量启用
设置HARNESS_SIDECAR_ENABLED=true 后,HarnessExtension.from_env() 会读取相关环境变量并启动 Sidecar:
HarnessExtension 支持上下文管理器协议,退出时自动关闭 Sidecar:通过构造参数启用
也可以通过sidecar 参数直接启用:
sidecar 接受布尔值或配置字典。传入配置字典时,其中的字段会用于解析 Sidecar 计划;传入 True 时使用默认配置。
通过配置对象启用
使用HarnessSidecarConfig 构建完整配置,再传给 HarnessExtension:
HarnessSidecarConfig.from_env() 也可以从环境变量构建配置对象。
Sidecar 状态
Sidecar 环境变量
受管 Sidecar 模式通过以下环境变量配置。未显式设置时使用默认值。通用配置
模型代理配置
MCP 网关配置
HarnessExtension 参数
通过
HarnessExtension(profile="ops") 使用默认组件时,会增加 long_run_control;显式提供组件列表或直接调用 build_harness_plugins() 时,应自行包含该组件。直接使用模块
进程内模式的各个模块也可以直接使用:确认 Sidecar 状态
设置环境变量后,在构造智能体前创建HarnessExtension,结束时调用 close() 或退出上下文管理器。检查 sidecar_status_payload():ok 表示启动成功,degraded 表示降级,不能据此认定优化已生效。HARNESS_SIDECAR_FAIL_OPEN=true 默认允许失败后继续运行;业务要求必须启用 Sidecar 时应设为 false
独立 Harness 服务的 HTTP 接口、会话和部署步骤见Harness 服务部署。Sidecar 绑定会影响模型和 MCP 请求的去向,接入前确认上游端点和凭据来源