Skip to content

Latest commit

 

History

History
118 lines (91 loc) · 3 KB

File metadata and controls

118 lines (91 loc) · 3 KB

OpenClaw + STG 集成测试报告

测试环境

测试结果

1. 基础功能测试 ✅

测试命令:

curl -X POST http://127.0.0.1:8404/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen/qwen3.5-27b",
    "messages": [{"role": "user", "content": "hello"}],
    "stream": false,
    "max_tokens": 50
  }'

结果:

  • ✅ STG 成功接收请求
  • ✅ 未触发压缩(8 tokens < 4096 阈值)
  • ✅ 成功转发到 OpenRouter
  • ✅ 返回正常响应(200 OK)
  • ⏱️ 延迟:30.96 秒

2. 压缩功能测试 ✅

测试数据:

  • 原始消息:8 条(包含大量重复内容)
  • 原始 tokens:31,077

压缩效果:

  • 压缩后 tokens:12,180 (39.19%)
  • 节省:18,897 tokens (60.81%)
  • 压缩器消耗:14,925 tokens
  • 净节省:9,488 tokens (29.5%)

详细数据:

项目 不压缩 使用压缩 节省
输入 tokens 31,077 6,664 24,413 (78.6%)
压缩成本 0 14,925 -14,925
输出 tokens 1,046 1,046 0
总计 32,123 22,635 9,488 (29.5%)

3. OpenClaw 集成配置 ✅

配置文件: /c/Users/yangpei/.openclaw/agents/main/agent/models.json

修改内容:

{
  "providers": {
    "openrouter": {
      "baseUrl": "http://127.0.0.1:8404/v1",  // 指向 STG
      "api": "openai-completions",
      ...
    }
  }
}

状态: ✅ 配置完成,OpenClaw 现在会通过 STG 发送所有请求

已知问题

1. UTF-8 解码错误 ⚠️

问题: 某些请求出现 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc4

原因: 中文内容编码问题

状态: 已修复(使用 body.decode('utf-8')

2. 模型 ID 兼容性 ⚠️

问题: OpenClaw 的 openrouter:auto 模型 ID 不被 OpenRouter 接受

解决方案: 使用具体的模型 ID(如 qwen/qwen3.5-27b

下一步计划

短期(核心功能)

  1. ✅ 基础代理功能
  2. ✅ Token 计数
  3. ✅ 压缩检测和触发
  4. ✅ 单轮压缩
  5. ⏳ 多轮渐进式压缩(合并摘要)
  6. ⏳ 二次压缩(摘要超过阈值时)
  7. ⏳ History Index(存储原始消息)
  8. ⏳ _stg_retrieve_history 工具注入

中期(增强功能)

  1. ⏳ L1/L2 语义缓存
  2. ⏳ 预算控制(四级限额)
  3. ⏳ Analytics 统计
  4. ⏳ Streaming 支持优化

长期(生产就绪)

  1. ⏳ 错误处理和降级策略
  2. ⏳ 性能优化
  3. ⏳ 完整的端到端测试
  4. ⏳ 文档和部署指南

结论

STG 核心压缩功能已经可以工作!

  • 成功实现了基础的 ASGI 代理
  • 压缩功能正常,能够将 31K tokens 压缩到 12K tokens
  • 实现了约 30% 的总 token 节省
  • 已配置 OpenClaw 使用 STG 作为代理

下一步重点: 实现多轮渐进式压缩和 History Index 功能。