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

这个 Plugin 让 OpenClaw 减少Skill 90%Token消耗

别让 Skill 列表烧光你的 Token——用一个 Plugin 让 OpenClaw 瘦身 90%95 个 Skill每轮对话就消耗 5000 多个 Token本文将分享我们如何通过 Elasticsearch 语义搜索和一个 OpenClaw Plugin将 Skill 列表从“全量注入”变为“按需加载”将 Token 消耗减少 92%并且即时生效。一、你的 OpenClaw正被 Skill 列表“偷走”Token玩 OpenClaw 的人都知道安装 Skill 一时爽Token 消耗火葬场。起初你只装了 5 个 Skill体验非常好。但随着你不断添加天气、GitHub、飞书文档、企业微信、腾讯云、Elasticsearch等功能系统中逐渐堆积了 50 个、80 个甚至 100 个 Skill。你可能觉得“多就是好”但 OpenClaw 每次对话都会将所有Skill 的名称和描述放入 System Prompt。我们的实测结果是•95 个 Skill→ System Prompt 占用~5,238 Token• 用户即使只说一句“你好”这 5000 个 Token 也先被耗掉• 按 OpenRouter 的价格计算每轮对话仅 Skill 列表就烧掉约 $0.005更要命的是——无关的 Skill 还会干扰 LLM 的判断导致“幻觉率上升”。明明是问天气模型却在纠结是否应该用 GitHub Skill。二、思路为 OpenClaw 安装一个“智能筛子”解决方案非常直观——按需供给。用户问天气就只提供天气相关的 Skill。用户问代码就只提供 GitHub 相关的 Skill。其他 90 个 Skill 不注入Token 自然节省。这本质上就是 RAG检索增强生成的思路先用语义搜索筛选再将结果提供给 LLM。但这里面临一个技术选型的问题用什么做语义检索用什么 Embedding 模型三、技术选型为什么选择 Elasticsearch Jina v5市面上有一些方案——基于本地 ONNX 模型和对象存储向量桶。它们的思路是使用本地量化模型生成向量写入对象存储查询时再次生成向量进行检索。整个流程需要Embedding API、向量存储和手动管理维度与距离度量。我们选择了Elasticsearchsemantic_text Jina Embeddings v5原因如下1. 一步到位零 Embedding 管理传统方案需要两步先调用 Embedding API 生成向量然后写入向量存储。查询时也需两步先将用户消息向量化再去向量库检索。而 ES 的semantic_text字段类型自动处理一切——只需写入文本ES 会在内部自动调用推理端点生成向量。查询时也一样直接传文本ES 内部完成 Embedding 和向量检索。不需要外部 Embedding API也不需要管理向量维度。2. Jina Embeddings v5紧凑型顶尖多语言模型我们的 Embedding 推理端点使用的是Jina Embeddings v5——由 Jina AI 和 Elastic 联合发布的新一代文本嵌入模型在多语言 MTEBMMTEB基准测试中同级别第一。jina-embeddings-v5-text-small的核心数据•677M 参数远小于许多同类模型•32,768 Token输入上下文窗口•1024 维嵌入向量• 支持211 种语言中英文均衡不偏科它的杀手锏是LoRA 插件架构一个基础模型加上四个任务专用的 LoRA 插件检索、文本匹配、聚类、分类在不增加模型体积的前提下每个任务都能做到最优。ES 在索引和检索时会自动选择合适的 LoRA 插件。更进一步Jina v5 支持Matryoshka 表示学习——嵌入截断。默认 1024 维可以截断到 512 甚至 256 维存储和计算成本成倍下降精度损失极小。加上二进制量化嵌入大小可以从 2KB 压缩到 128 字节减少 94%性能几乎无损。对我们的场景意味着什么95 个 Skill 描述的语义索引即使全量存储也只需极小的空间。而且因为 Jina v5 原生多语言中文查询“企业微信发消息”能精准匹配英文 description 的wecom-msgSkill不偏科。jina-embeddings-v5-text MMTEB 得分3. 检索延迟从秒级降到百毫秒级基于本地模型和对象存储的方案链路是用户消息 → 本地模型推理500ms→ 网络请求到向量存储500ms→ 返回结果。总计~1-2 秒。ES 方案用户消息 → ES 集群内完成 Embedding 和检索~100ms。推理在集群内完成没有额外的网络往返。用户几乎无感知。4. 关键发现——异步 Hook 方案存在“永远差一轮”的致命缺陷我们在深入研究过程中发现了一个严重问题很多方案使用message:received事件 Hook 来做路由——这个 Hook 在 Gateway 层面异步执行与 Agent Loop 是并行的。代码语言javascriptAI代码解释1 2 3 4 时间线 00:00 消息到达Agent 开始加载 Skill用旧的配置 00:20 Hook 才完成向量检索写入配置文件 00:21 SIGUSR1 热重载——但 Agent 已经在运行了结果是Agent 永远用的是上一轮的 Skill 配置当前轮永远失效。而且因为每轮都会覆盖配置连续对话时 Skill 列表一直在变Agent 永远追不上。我们的方案绕过了这个问题使用 OpenClaw 的Plugin 机制注册before_prompt_buildHook。这个 Hook 在 Agent Loop内部同步执行——检索、过滤、注入一气呵成当轮就生效。四、效果实测我们在 95 个 Skill 的环境下测试指标无 Router有 ES Skill Router变化System Prompt Token~5,238~391-92.5%单轮成本$0.0053$0.0004-92.5%Top-1 Skill 命中率N/A80%—检索延迟N/A~100ms零感知几个真实场景场景 A查天气• 用户“深圳明天天气怎么样”• Router 推荐[weather, tavily-search, gemini, ...]• Token 节省97.8%场景 B企业微信发消息• 用户“企业微信发消息”• Router 推荐[wecom-msg, bluebubbles, wacli, ...]wecom-msg 命中0.87 分• Token 节省92%场景 C创建飞书文档• 用户“创建飞书文档”• Router 推荐[feishu-doc, wecom-doc-manager, tencent-docs, ...]feishu-doc 命中0.83 分• Token 节省92%场景 D中文查英文 Skill• 用户“腾讯云开发者社区任务”• Router 推荐[tencent-cloud-community, tencent-cos-skill, ...]0.81 分命中• 跨语言语义理解零配置[图片位置6Token 消耗对比柱状图——95 Skills vs 5 Skills]五、5 分钟安装教程前置条件• 一个 Elasticsearch 集群Elastic Cloud 或自建• 集群已配置.jina-embeddings-v5-text-small推理端点Elastic Cloud 默认可用• Python 3 pip install elasticsearch pyyaml步骤 1安装 Plugin代码语言javascriptAI代码解释1 2 git clone https://github.com/oldcodeoberyn/es-skill-router.git openclaw plugins install -l ./es-skill-router步骤 2配置 ES 连接编辑~/.openclaw/openclaw.json在plugins.entries中添加代码语言javascriptAI代码解释{ plugins: { entries: { es-skill-router: { enabled: true, config: { esUrl: https://your-cluster:9243, esUser: elastic, esPassword: your-password, index: openclaw-skills, topK: 5, minScore: 0.5 } } } } }也可以用环境变量ES_URL、ES_USER、ES_PASSWORD。步骤 3索引你的 Skill代码语言javascriptAI代码解释export ES_URLhttps://your-cluster:9243 export ES_USERelastic export ES_PASSWORDyour-password python3 es-skill-router/skills/es-vector-skill/scripts/index_skills.py \ --index openclaw-skills --recreate输出代码语言javascriptAI代码解释Found 95 skills Created index: openclaw-skills {success: true, indexed: 95, errors: 0}步骤 4重启 Gateway代码语言javascriptAI代码解释1 openclaw gateway restart步骤 5验证发一条消息给你的 Agent然后检查日志代码语言javascriptAI代码解释1 grep es-skill-router\|ready.*index /tmp/openclaw/openclaw-$(date %Y-%m-%d).log你应该看到代码语言javascriptAI代码解释1 2 ready: indexopenclaw-skills topK5 minScore0.5 message_id: om_x100b53fc8 → [tencent-cloud-community(0.74), tlon-skill(0.71), session-logs(0.71), wecom-msg(0.71), tencent-cos-skill(0.69)]大功告成六、进阶配置参数默认值说明topK5保留的 Skill 数量建议 3-10minScore0.5最低相关度分数低于此值的 Skill 不注入indexopenclaw-skillsES 索引名enabledtrue开关设 false 可临时禁用安装新 Skill 后重新运行索引脚本即可增量更新不会覆盖已有的代码语言javascriptAI代码解释1 python3 es-skill-router/skills/es-vector-skill/scripts/index_skills.py --index openclaw-skills七、总结传统本地对象存储方案ES Skill Router本文Embedding需要外部 API 或本地模型ES 内置Jina v5路由机制异步 Hook SIGUSR1同步 Plugin Hook生效时序永远差一轮当轮生效部署复杂度Embedding 服务 向量存储 Hook一个 Plugin延迟1-2 秒~100ms多语言取决于模型选择Jina v5 原生 211 语言Token 节省~92%~92%一句话做减法才是工程功底的试金石。为大模型减轻上下文负担它反而会表现得更聪明。开源地址github.com/oldcodeoberyn/es-skill-router

相关文章:

这个 Plugin 让 OpenClaw 减少Skill 90%Token消耗

别让 Skill 列表烧光你的 Token——用一个 Plugin 让 OpenClaw 瘦身 90% 95 个 Skill,每轮对话就消耗 5000 多个 Token?本文将分享我们如何通过 Elasticsearch 语义搜索和一个 OpenClaw Plugin,将 Skill 列表从“全量注入”变为“按需加载”&…...

利用Google Earth与KML技术高效提取数字高程等高线

1. 从零开始认识数字高程与KML技术 数字高程模型(DEM)就像给地球表面拍了一张"立体照片",它能精确记录每个位置的海拔高度。我第一次接触DEM数据时,被它的实用性震惊了——从洪水模拟到城市规划,再到手机导…...

GLM-OCR模型处理SolidWorks工程图中的技术说明

GLM-OCR模型处理SolidWorks工程图中的技术说明 在制造业和工程设计领域,SolidWorks输出的二维工程图是产品信息的核心载体。一张图纸里,除了几何图形,还包含了大量的文本信息:技术要求、标题栏里的零件名称与材料、明细表中的零件…...

5 款主流开源 SDD 框架深度体验与 PK

强大的 AI Coding 似乎无时无刻不在制造新的焦虑:程序员、IDE、甚至软件工程都不再被需要,“会说话就会开发软件”。这是极端且不负责任的。毕竟,还有更多需要逻辑严密的商业软件系统。 强如 OpenAI,在使用Codex开发内部系统时依…...

uni-app——语音识别后 UI 卡死?微信小程序 getRecorderManager 的坑,用 getRecordRecognitionManager 一步解决

问题 语音输入功能使用 getRecorderManager() voiceToText() 实现,用户说完话点击「完成」后,弹窗卡死,转圈动画不停,按钮无法点击,只能重启小程序。 原因: 异步链路过长(stop → onStop → re…...

全球化内容创作新范式:MoneyPrinterTurbo多语言工具全攻略

全球化内容创作新范式:MoneyPrinterTurbo多语言工具全攻略 【免费下载链接】MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频 Generate short videos with one click using AI LLM. 项目地址: https://gitcode.com/GitHub_Trending/mo/MoneyPrinte…...

掌握智能温控:从噪音控制到散热效率的进阶指南

掌握智能温控:从噪音控制到散热效率的进阶指南 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/FanCon…...

深入解析7段式S形曲线加减速算法:从理论到实践

1. 为什么需要7段式S形曲线加减速 在工业机器人和CNC机床控制中,运动平滑性直接影响加工质量和设备寿命。想象一下开车时的体验:急刹车会让乘客前仰后合,而渐进式制动则平稳舒适。传统梯形加减速就像急刹,会在速度突变处产生机械…...

从实战案例出发:面阵与线阵相机选型策略及镜头配置全解析

1. 面阵与线阵相机的本质区别 第一次接触工业相机选型时,我也曾被各种参数搞得晕头转向。直到有次在产线上亲眼看到两种相机的实际表现,才真正理解了它们的差异。简单来说,面阵相机就像我们平时用的数码相机,一次拍摄就能获取整个…...

半导体工艺模拟进阶:如何用Sentaurus Sprocess实现精确的刻蚀/沉积建模

半导体工艺模拟进阶:Sentaurus Sprocess刻蚀与沉积建模实战解析 在半导体制造工艺开发中,TCAD仿真已成为缩短研发周期、降低试错成本的关键工具。作为Synopsys Sentaurus套件的核心模块,Sprocess凭借其精确的几何处理能力和丰富的工艺模型库&…...

生成对抗网络(GAN)实战指南:从原理到图像生成

1. 生成对抗网络(GAN)初探:当画家遇上鉴定师 第一次听说生成对抗网络时,我脑海中浮现的是一个有趣的场景:有个刚入行的画家在拼命模仿梵高的画作,而旁边坐着一位经验丰富的艺术鉴定师。画家每完成一幅仿作,鉴定师就会…...

Kazumi动漫播放器:3步打造你的专属追番神器

Kazumi动漫播放器:3步打造你的专属追番神器 【免费下载链接】Kazumi 基于自定义规则的番剧采集APP,支持流媒体在线观看,支持弹幕,支持实时超分辨率。 项目地址: https://gitcode.com/gh_mirrors/ka/Kazumi 还在为追番资源分…...

保姆级教程:用Python搞定数美滑块验证码(含DES加密还原与轨迹模拟)

Python实战:数美滑块验证码全流程破解指南 每次看到那个烦人的滑块验证码,是不是都有种想砸键盘的冲动?特别是当你的爬虫程序在数据采集过程中频繁触发数美验证时,整个项目进度可能都会被拖慢。作为爬虫开发者,我们需要…...

如何彻底解决微信QQ消息撤回难题?3步打造终极防撤回方案

如何彻底解决微信QQ消息撤回难题?3步打造终极防撤回方案 【免费下载链接】RevokeMsgPatcher :trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了) 项目地址: https://gitcode.…...

性能引擎:G-Helper让创意工作流告别卡顿与过热

性能引擎:G-Helper让创意工作流告别卡顿与过热 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Strix, Scar, and…...

QwQ-32B与Token技术实现安全认证系统

QwQ-32B与Token技术实现安全认证系统 1. 引言 在现代应用开发中,安全认证系统是保护用户数据和系统资源的第一道防线。传统的认证方案往往面临诸多挑战:复杂的密码策略让用户头疼,静态的访问控制难以应对动态的业务需求,而多因素…...

新手友好:借助快马平台从零复刻w777.7cc经典小游戏

作为一个刚接触编程的新手,最近在InsCode(快马)平台尝试复刻w777.7cc经典小游戏时,发现整个过程比想象中简单许多。这种翻牌匹配类游戏规则明确、交互直观,特别适合用来理解前端三件套(HTML/CSS/JavaScript)的协作逻辑…...

多语言语音识别新选择:Fun-ASR-MLT-Nano模型部署与应用

多语言语音识别新选择:Fun-ASR-MLT-Nano模型部署与应用 1. 项目概述与技术亮点 1.1 多语言语音识别新标杆 Fun-ASR-MLT-Nano-2512是阿里通义实验室推出的轻量级多语言语音识别模型,凭借800M参数的紧凑架构,实现了对31种语言的高精度识别。…...

openpilot终极指南:快速实现300+车型自动驾驶辅助的完整方案

openpilot终极指南:快速实现300车型自动驾驶辅助的完整方案 【免费下载链接】openpilot openpilot is an operating system for robotics. Currently, it upgrades the driver assistance system on 300 supported cars. 项目地址: https://gitcode.com/GitHub_Tr…...

SEO 系统培训班有哪些推荐_SEO 系统培训班包括哪些内容

SEO 系统培训班推荐及其内容详解 在当前数字化和信息化飞速发展的时代,SEO(搜索引擎优化)已经成为每一个网站和企业不可或缺的一部分。SEO系统培训班不仅能帮助你了解SEO的基本原理,还能深入探讨其实际应用和最新技巧。本文将详细…...

SEO优化与网站内链优化有什么区别_SEO优化的方法论有哪些

SEO优化与网站内链优化有什么区别 在现代数字营销中,SEO优化和网站内链优化是两个紧密相关但又各有侧重的领域。了解它们之间的区别,对于提升网站的整体流量和搜索引擎排名至关重要。本文将详细探讨这两者的不同之处,并为你提供一些SEO优化的…...

如何高效解析城通网盘链接:这款开源工具让下载速度提升10倍

如何高效解析城通网盘链接:这款开源工具让下载速度提升10倍 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet ctfileGet作为一款专注于城通网盘链接解析的开源工具,通过纯前端技术…...

终极指南:如何用Anemone3DS轻松打造个性化3DS主题界面

终极指南:如何用Anemone3DS轻松打造个性化3DS主题界面 【免费下载链接】Anemone3DS A theme and boot splash manager for the Nintendo 3DS console 项目地址: https://gitcode.com/gh_mirrors/an/Anemone3DS 你是否厌倦了任天堂3DS千篇一律的默认界面&…...

SEO_新手必看的SEO优化入门教程与核心方法(271 )

SEO优化入门教程:新手必看的核心方法 在当今的数字时代,搜索引擎优化(SEO)已经成为了每一个想要在互联网上站稳脚跟的人必不可少的技能。无论你是一个小企业的网站管理员,还是一个内容创作者,了解和掌握SE…...

利用GCC特性实现MCU固件版本号的绝对地址存储

1. 为什么需要绝对地址存储版本号 在嵌入式开发中,固件版本号是一个看似简单却至关重要的信息。想象一下你正在调试一台远程设备,突然发现它运行的是旧版本固件,但翻遍整个代码库都找不到版本号定义在哪里——这种场景我遇到过不止一次。传统…...

网盘下载速度太慢?这款开源工具让你告别限速烦恼!

网盘下载速度太慢?这款开源工具让你告别限速烦恼! 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘…...

电源工程师必看:平均电流模式BUCK双环控制详解(从传递函数到Psim仿真)

电源工程师必看:平均电流模式BUCK双环控制详解(从传递函数到Psim仿真) 在电力电子领域,BUCK变换器的控制策略一直是工程师们关注的重点。作为一名刚入行的电源工程师,我曾被各种控制模式搞得晕头转向——电压模式、峰值…...

别再只当CANopen网关用!EL6751的‘直通CAN’模式,让你像用CAN盒一样调试非标设备

EL6751的直通CAN模式:解锁非标设备调试新姿势 当你的工控柜里躺着几台国产非标设备,厂商只提供了CAN盒调试软件,而手边只有倍福PLC时,那种抓狂的感觉每个自动化工程师都懂。别急着下单采购USBCAN工具,你需要的可能只是…...

桌游设计师的终极神器:CardEditor卡牌批量生成器完整指南

桌游设计师的终极神器:CardEditor卡牌批量生成器完整指南 【免费下载链接】CardEditor 一款专为桌游设计师开发的批处理数值填入卡牌生成器/A card batch generator specially developed for board game designers 项目地址: https://gitcode.com/gh_mirrors/ca/C…...

3步快速解锁QQ音乐加密文件:qmc-decoder完整使用指南

3步快速解锁QQ音乐加密文件:qmc-decoder完整使用指南 【免费下载链接】qmc-decoder Fastest & best convert qmc 2 mp3 | flac tools 项目地址: https://gitcode.com/gh_mirrors/qm/qmc-decoder 你是否遇到过QQ音乐下载的歌曲无法在其他播放器播放的困扰…...