Gliding Horse 的Token经济学:用 IRI 指针替代文本,让 Token 花在刀刃上

发布时间:2026/7/9 17:15:54

Gliding Horse 的Token经济学:用 IRI 指针替代文本,让 Token 花在刀刃上
Gliding Horse流马作为 AI Agent 操作系统提出了一套以“IRI 指针 摘要”为核心的上下文优化体系。通过将大段工具结果和历史对话转化为可寻址的 IRI 指针Token 消耗从随数据量线性增长变为近恒定单次任务平均节省约 47% 的 Token同时关键信息可 100% 追溯。本文深入解析其核心思想、架构设计、Token 优化工具箱及实测收益为构建长周期、多步骤的自主 Agent 提供可落地的 Token 经济学方案。关键词Gliding Horse流马Token 经济学上下文管理IRI 指针AI Agent摘要链JSON‑LDToken 优化大模型对于 AI Agent 来说上下文窗口就是金钱。每次调用大模型Prompt 的 Token 消耗直接决定了成本和响应延迟。而多轮对话中如果不加控制地把历史对话、工具返回的大段 JSON、文件内容全塞进去Token 会以 O(n) 的速度爆炸瞬间耗光珍贵的窗口导致模型“失忆”或拒绝服务。Gliding Horse流马作为 AI Agent 操作系统把上下文管理和Token 经济学视为内核级能力。我们设计了一套以“IRI 指针 摘要”为核心的上下文优化体系彻底摆脱了“保留原文 → 截断丢弃”的死循环。下面就把这套系统的设计思路、关键机制和落地效果完整展开。一、核心思想从“保留全部”到“按需引用”传统 Agent 处理长上下文的套路很粗暴尽量保留超出窗口就截断或让 LLM 自己总结。这导致截断丢弃了可能关键的信息LLM 总结可能遗漏细节甚至产生幻觉大工具结果如grep返回几万字符直接把上下文撑爆。Gliding Horse 的做法截然不同完整内容存入图数据库L0/L2上下文中只保留简短的摘要和一个全球唯一的 IRI类似 URL。当 LLM 真正需要细节时可以像点击链接一样通过内置工具沿着 IRI 精确查询。这套机制的基石就是全系统统一的JSON‑LD 语义总线任何一个数据块都有id天然可寻址。传统上下文 全部历史 全部工具结果 → Token 爆炸 → 截断丢失 流马上下文 摘要链 IRI 指针 → Token 恒定 → 按需检索二、上下文管理引擎架构上下文引擎位于应用层与记忆系统、工具系统、投影引擎深度集成。每次 LLM 调用前它按以下流水线组装最终 Prompt用户输入 / 上一轮结果SystemPromptBuilderL3 投影引擎按需从图库提取相关子图模板引擎注入角色专属提示词组装上下文结果路由器工具结果→摘要IRIL1 会话摘要链累积历史最终 PromptToken 预算内LLM 调用SystemPromptBuilder构建结构化的系统消息注入当前 Agent 角色PA/DA/CA/AA的宪法准则、激活的方法论以及可用工具清单。L3 投影引擎利用 SPARQL 查询从 L0 持久化图中提取当前任务最相关的知识例如相关技能、历史决策以 JSON‑LD 子图形式注入避免冗余。结果路由器工具返回的大结果被统一处理生成摘要和 IRI原始数据存档。L1 会话摘要链每一轮对话的summary自动追加到 L1形成高度压缩的“记忆流”当超过 Token 预算时较久远的摘要被淘汰到 L0但保留 IRI 供回溯。三、工具结果 IRI 化把 15KB 变成 200 字节Agent 执行工具调用时返回的数据往往非常庞大——grep搜索结果可能有 15KBcurl的网页响应甚至上百 KB。如果直接注入上下文几次调用就能耗光所有 Token。流马的设计是所有 ≥2KB 的工具结果自动触发“IRI 化”处理由ResultRouter统一完成内容存储原始结果写入 L0 持久化图分配唯一 IRI如iri://tool-result/call_abc。生成微工具同时注册一个专用的读取工具如read_full_result_call_abc供 Agent 后续按需调用。消息替换将原本的大段结果替换为一条简洁的摘要消息包含工具名、数据量级和 IRI。优化前消息grep 搜索结果15KB [tool] content: 找到 47 处匹配位于 12 个文件\n src/auth.rs:42: let token ... 后续数千行匹配详情 优化后消息约 200 字节 [grep_search] [已存档] 47 matches in 12 files | iri://tool-result/call_abc如果 LLM 需要查看具体匹配内容可以随时调用微工具read_full_result_call_abc系统会从图库中取出完整数据返回。Token 消耗从随结果线性增长变成近恒定关键信息还不会丢失。四、跨轮摘要引用化历史对话永不丢失多轮对话是 Agent 工作的常态。流马采用分层摘要链管理对话历史L1 工作记忆每轮 LLM 回复中强制要求输出summary字段由系统追加到 L1 的摘要缓冲区。这些摘要极短几十字累积起来也只占极少 Token。L0 归档完整的thought推理过程和content回答内容被存档到 L0并返回 IRI如iri://archive/task/xxx/turn_5。淘汰保留 IRI当 L1 摘要过多触发淘汰时被淘汰的摘要不会消失而是将其对应的 IRI 移入“弱引用”列表仍然可以在需要时找回。当发生消息截断当前硬顶为 30 条消息时我们不再插入一句模糊的“之前已执行 5 轮操作”而是生成结构化历史引用[历史摘要] [轮1/PA] 制定分析计划 → iri://archive/task/xxx/turn_1 [轮2/DA] 搜索认证接口 (grep×3) → iri://archive/task/xxx/turn_2 [轮3/DA] 分析JWT流程 → iri://archive/task/xxx/turn_3 如需详细信息请使用 kg_search / knowledge_query 查询 IRI。这样LLM 即便在长对话中也能清晰知道之前做过什么且可以主动检索任何一轮的完整细节。关键决策链得以完整保留不再被截断抹除。五、Token 优化工具箱除了 IRI 化与摘要链流马还配备了一套完整的 Token 优化组件全部实装并集成到主循环中组件功能收益ToolGroupManager按 Agent 角色PA/DA/CA/AA只暴露允许的工具列表减少 Prompt 中工具定义的 TokenContextWindowManager智能压缩历史消息优先保留近期和关键信息将有效轮次从 ~15 轮提升至 50 轮ToolResultCompressor对工具结果做摘要压缩保留核心字段避免大 JSON 直接撑爆窗口微工具系统为每个大结果自动注册专用查询工具LLM 无需保留原始数据需要时再查L1 语义淘汰策略根据时间、语义相关度和 Token 成本计算淘汰分数精准丢弃最不重要的摘要保证重要信息长期驻留六、配置化与性能收益整个上下文优化系统通过config.yaml集中控制开发者可以根据自己的模型窗口和成本敏感度灵活调整context_optimization: enabled: true tool_result_iri: threshold: 2048 # ≥2KB 的结果自动 IRI 化 preview_size: 500 # 消息中保留的摘要长度 cross_turn_summary: max_summary_turns: 10 # 截断时保留的最近轮数 summary_length: 100 # 每轮摘要最大字符 tool_result_compressor: enabled: true max_full_results: 2 # 最多保留完整结果数 max_summary_length: 200 context_window: enabled: true max_messages: 30 max_tokens: 16000 compression_ratio: 0.3经过完整实现后我们实测获得了显著的 Token 节省效果典型工具调用优化前消息体优化后消息体缩减比例grep_search15KB 结果15KB JSON~200 字节摘要IRI98.7%file_read5KB 文件5KB~500 字节90%web_fetch30KB 网页~2KB 摘要~500 字节75%bash命令输出20KB~2KB 摘要~500 字节75%总体来看单次任务的平均上下文 Token 消耗降低了约 47%同时关键信息的可追溯率达到 100%只要 IRI 存在数据就永不丢失。八、实战代码示例下面通过一个完整的 Python 示例展示如何在 Agent 工作流中调用 Gliding Horse 的上下文优化功能。该示例模拟了一个执行grep搜索的 Agent演示 IRI 指针和微工具系统如何避免大结果撑爆上下文。import json import hashlib from typing import Optional, Dict, Any from dataclasses import dataclass, field # # 模拟 Gliding Horse 上下文优化核心组件 # dataclass class ToolResult: 工具执行结果 tool_name: str raw_content: str content_size: int iri: Optional[str] None summary: Optional[str] None micro_tool_name: Optional[str] None class L0GraphStore: 模拟 L0 持久化图存储实际为图数据库 def __init__(self): self._store: Dict[str, str] {} def store(self, iri: str, content: str) - None: self._store[iri] content def retrieve(self, iri: str) - Optional[str]: return self._store.get(iri) class ResultRouter: 结果路由器将大工具结果 IRI 化 - 内容 ≥2KB 自动触发 IRI 化 - 生成摘要 注册微工具 def __init__(self, graph_store: L0GraphStore, threshold: int 2048): self.graph graph_store self.threshold threshold self._call_counter 0 def process(self, tool_name: str, raw_content: str) - ToolResult: result ToolResult( tool_nametool_name, raw_contentraw_content, content_sizelen(raw_content.encode(utf-8)) ) if result.content_size self.threshold: # 1. 生成唯一 IRI self._call_counter 1 content_hash hashlib.sha256(raw_content.encode()).hexdigest()[:12] iri firi://tool-result/{tool_name}_{self._call_counter}_{content_hash} # 2. 存储完整内容到 L0 self.graph.store(iri, raw_content) # 3. 注册微工具名称 micro_tool fread_full_{tool_name}_{self._call_counter} # 4. 生成摘要取前 200 字符 统计信息 lines raw_content.split(\n) match_count len([l for l in lines if l.strip()]) summary ( f[{tool_name}] 共 {match_count} 行结果 f大小 {result.content_size} 字节 | {iri} ) result.iri iri result.summary summary result.micro_tool_name micro_tool else: # 小结果直接保留原文 result.summary raw_content return result class ContextManager: 上下文管理器组装最终 Prompt - 工具结果用摘要 IRI 替代 - 历史对话用摘要链管理 def __init__(self, router: ResultRouter, max_messages: int 30): self.router router self.max_messages max_messages self.history: list [] def add_tool_call(self, tool_name: str, raw_content: str) - ToolResult: 添加工具调用结果自动 IRI 化 result self.router.process(tool_name, raw_content) self.history.append({ type: tool_result, summary: result.summary, iri: result.iri, micro_tool: result.micro_tool_name }) return result def build_prompt(self, user_query: str) - str: 组装最终 Prompt仅含摘要 IRI不含原始大结果 # 截断历史到最大消息数 recent_history self.history[-self.max_messages:] if len(self.history) self.max_messages else self.history prompt_parts [ ## 系统指令, 你是一个 AI Agent可以使用工具执行任务。, 工具结果已优化大结果以摘要IRI形式呈现, 如需查看完整内容请调用对应的微工具。, , ## 用户查询, user_query, , ## 历史工具调用摘要 ] for i, entry in enumerate(recent_history, 1): if entry[type] tool_result: line f [{i}] {entry[summary]} if entry[micro_tool]: line f\n → 微工具: {entry[micro_tool]} prompt_parts.append(line) return \n.join(prompt_parts) # # 模拟 Agent 工作流 # def simulate_grep_agent(): 模拟一个执行 grep 搜索的 Agent演示 IRI 指针和微工具系统 print( * 60) print(Gliding Horse 上下文优化实战演示) print( * 60) # 初始化组件 graph L0GraphStore() router ResultRouter(graph, threshold2048) context ContextManager(router) # 模拟用户查询 user_query 在项目中搜索所有包含 token 关键字的代码行 print(f\n[用户查询] {user_query}\n) # 模拟 grep 工具返回的大结果15KB grep_results for i in range(1, 48): # 模拟 47 处匹配 grep_results fsrc/auth.rs:{i}: let token extract_jwt_token(request);\n grep_results fsrc/handler.rs:{i}: let decoded decode_token(token);\n grep_results fsrc/middleware.rs:{i}: if validate_token(token).is_ok() {{\n print(f[grep 工具] 原始结果大小: {len(grep_results.encode(utf-8))} 字节) print(f[grep 工具] 原始结果行数: {len(grep_results.split(chr(10)))} 行\n) # 通过 ResultRouter 处理自动 IRI 化 result context.add_tool_call(grep_search, grep_results) print(f[IRI 化处理]) print(f - IRI: {result.iri}) print(f - 摘要: {result.summary}) print(f - 微工具: {result.micro_tool_name}) print(f - 上下文占用: {len(result.summary.encode(utf-8))} 字节) print(f - 缩减比例: {(1 - len(result.summary.encode(utf-8)) / result.content_size) * 100:.1f}%\n) # 构建最终 Prompt不含原始大结果 final_prompt context.build_prompt(user_query) print([最终 Prompt上下文窗口内]) print(- * 40) print(final_prompt) print(- * 40) print(f\nPrompt 总大小: {len(final_prompt.encode(utf-8))} 字节) # 模拟 Agent 需要查看完整结果时调用微工具 print(f\n[Agent 决策] 需要查看完整 grep 结果调用微工具: {result.micro_tool_name}) full_content graph.retrieve(result.iri) print(f[微工具返回] 完整结果大小: {len(full_content.encode(utf-8))} 字节) print(f[微工具返回] 前 200 字符预览: {full_content[:200]}...\n) print( * 60) print(演示完成大结果通过 IRI 指针引用) print(上下文窗口仅保留 200 字节摘要) print(关键信息通过微工具按需追溯永不丢失。) print( * 60) if __name__ __main__: simulate_grep_agent()

相关新闻

AMP by Example实战:使用amp-img组件优化图片加载的10个技巧

AMP by Example实战:使用amp-img组件优化图片加载的10个技巧

2026/7/9 17:13:48

AMP by Example实战:使用amp-img组件优化图片加载的10个技巧 【免费下载链接】amp-by-example DEPRECATED: AMP by Example has been merged into amp.dev 项目地址: https://gitcode.com/gh_mirrors/am/amp-by-example AMP(Accelerated Mobile P…

GeoQ高级功能:地理空间分析、标记和社交标签系统详解

GeoQ高级功能:地理空间分析、标记和社交标签系统详解

2026/7/8 4:15:42

GeoQ高级功能:地理空间分析、标记和社交标签系统详解 【免费下载链接】geoq Django web application to collect geospatial features and manage feature collection among groups of users 项目地址: https://gitcode.com/gh_mirrors/ge/geoq GeoQ是一款强…

EarlyBird高级功能解析:JKS文件检测、JWT令牌验证与密码强度评估

EarlyBird高级功能解析:JKS文件检测、JWT令牌验证与密码强度评估

2026/7/8 6:43:45

EarlyBird高级功能解析:JKS文件检测、JWT令牌验证与密码强度评估 【免费下载链接】earlybird EarlyBird is a sensitive data detection tool capable of scanning source code repositories for clear text password violations, PII, outdated cryptography metho…

3分钟快速美化OpenWrt界面:luci-theme-argon主题终极指南

3分钟快速美化OpenWrt界面:luci-theme-argon主题终极指南

2026/7/9 17:10:19

3分钟快速美化OpenWrt界面:luci-theme-argon主题终极指南 【免费下载链接】luci-theme-argon Argon is a clean and tidy OpenWrt LuCI theme that allows users to customize their login interface with images or videos. It also supports automatic and manual…

计算机毕业设计之基于uniapp的微信记账小程序

计算机毕业设计之基于uniapp的微信记账小程序

2026/7/9 17:10:19

随着移动互联网技术的飞速发展和消费水平的不断提升,个人财务管理变得越来越重要。然而,传统的记账方式繁琐且易出错,无法满足现代人高效、准确管理个人财务的需求。基于uni-app的微信记账小程序采用Java语言作为主要开发语言,结合…

提示词工程实战指南:从基础原则到AI应用开发

提示词工程实战指南:从基础原则到AI应用开发

2026/7/9 17:10:19

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 1. 先搞清楚提示词工程到底在解决什么问题 如果你刚接触大模型,看到“提示词工程”这个词,可能会觉得它很神秘…

Windows经典游戏兼容性解决方案:dxwrapper完整实践指南

Windows经典游戏兼容性解决方案:dxwrapper完整实践指南

2026/7/9 17:10:19

Windows经典游戏兼容性解决方案:dxwrapper完整实践指南 【免费下载链接】dxwrapper Fixes compatibility issues with older games running on Windows 10/11 by wrapping DirectX dlls. Also allows loading custom libraries with the file extension .asi into g…

MAX77654与PIC18F47K42的低功耗电源管理方案

MAX77654与PIC18F47K42的低功耗电源管理方案

2026/7/9 17:10:19

1. 项目背景与核心器件选型在低功耗嵌入式系统设计中,电源管理一直是决定产品续航能力和稳定性的关键因素。MAX77654作为Analog Devices推出的高集成度电源管理IC,配合Microchip的PIC18F47K42微控制器,能够构建一套高效可靠的电源解决方案。这…

告别漏检误判!流水线视觉检测设备平台化身智能工厂“超级质检员”

告别漏检误判!流水线视觉检测设备平台化身智能工厂“超级质检员”

2026/7/9 17:00:19

随着制造业向智能化、自动化加速转型,产线对质量管控的标准达到了前所未有的高度。传统依靠人工肉眼抽检的方式,不仅耗时费力,还容易因视觉疲劳导致漏检。在此背景下,流水线视觉检测设备平台应运而生,它依托人工智能与…

解锁AMD Ryzen处理器深层性能:SMU Debug Tool完全指南

解锁AMD Ryzen处理器深层性能:SMU Debug Tool完全指南

2026/7/8 0:44:47

解锁AMD Ryzen处理器深层性能:SMU Debug Tool完全指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://gi…

6个月转型AI工程师:实战路径与核心技能

6个月转型AI工程师:实战路径与核心技能

2026/7/8 6:29:42

1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公…

YOLOv5模型剪枝与量化实战:边缘设备部署优化

YOLOv5模型剪枝与量化实战:边缘设备部署优化

2026/7/8 14:04:34

1. 项目背景与核心价值在计算机视觉领域,YOLOv5因其出色的实时检测性能成为工业界宠儿。但当我们尝试将其部署到边缘设备(如树莓派、Jetson Nano或手机终端)时,立刻会遇到两个致命问题:模型体积庞大(原始YO…

平价正宗重庆火锅实测|理性避坑选型指南

平价正宗重庆火锅实测|理性避坑选型指南

2026/7/9 0:09:12

一、引言:重庆火锅消费现存痛点当下大众平价川渝火锅赛道竞争白热化,普通消费者就餐普遍面临三大选型难题:一是口味同质化严重,大量门店采用预制锅底、半成品食材,打着重庆老火锅旗号弱化牛油本味,麻辣口感…

AcFunDown:打破A站视频离线观看壁垒的终极解决方案

AcFunDown:打破A站视频离线观看壁垒的终极解决方案

2026/7/9 0:09:12

AcFunDown:打破A站视频离线观看壁垒的终极解决方案 【免费下载链接】AcFunDown 包含PC端UI界面的A站 视频下载器。支持收藏夹、UP主视频批量下载 😳仅供交流学习使用喔 项目地址: https://gitcode.com/gh_mirrors/ac/AcFunDown 想象一下这样的场景…

【复现】面向新能源消纳能力评估的年负荷序列建模及场景生成方法(Matlab代码实现)

【复现】面向新能源消纳能力评估的年负荷序列建模及场景生成方法(Matlab代码实现)

2026/7/9 0:09:12

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 &#x1f381…