优化 LLM 效率:使用 Adola 将输入 Token 减少 70%

随着大语言模型(LLM)被集成到生产环境中,与庞大上下文窗口相关的成本和延迟正成为关键瓶颈。当开发者实现检索增强生成(RAG)或复杂的代理工作流时,常会遇到“噪声”上下文——冗余信息、无关片段或臃肿的工具记录——这些会在不提升最终答案价值的情况下增加 Token 消耗。

Adola 推出了 Rose 1,这是一款语义提示压缩引擎,旨在模型调用前裁剪这些噪声。通过专注于“保留重要内容”,Rose 1 目标是将输入 Token 减少高达 70%,同时确保模型的核心推理和事实准确性保持完整。

语义压缩的工作原理

不同于可能在提示末尾截断重要信息的简单截断,Adola 使用语义压缩。该过程识别并移除冗余或无关的数据,同时保留回答特定查询所需的关键文本片段。

例如,在技术支持场景中,提示可能包含来自支持线程的重复笔记或无关的工单历史。Rose 1 会过滤这些内容,仅保留模型提供安全、准确响应所必需的关键模式、政策例外、账户层级和引用轨迹。

性能与基准测试

提示压缩的主要挑战之一是“让模型失明”的风险——删除过多信息导致准确率下降。Adola 已在六个主要评估集上发布了 Rose 1 的生产基准测试,展示了即使在 70% 压缩率(仅保留原始提示的 30%)下也能保持高度稳定性。

基准测试结果

评估集 关注领域 准确率影响
AIME Competition Math 0% decrease
GPQA Diamond Expert Science QA 0% decrease
GDPval-AA Professional Tasks 0% decrease
CommonsenseQA Commonsense Reasoning 0% decrease
GSM8K Grade-school Math 0% decrease
ARC-Challenge Grade-school Science 2% decrease

这些结果表明,对于绝大多数复杂推理任务,语义噪声可以被剔除,而不会影响模型得出正确结论的能力。

生产使用案例

Adola 被定位为“模型前置 API”或提示网关,这意味着它可以嵌入现有工作流,而无需更换模型提供商。关键应用领域包括:

1. 代理轨迹

在多步骤的代理工作流中,工具记录可能变得异常冗长。Adola 可以在下一步规划之前裁剪这些记录,降低后续对话轮次的成本。

2. RAG 检索

检索系统常常过度检索块以确保答案存在。Rose 1 在保留包含答案的片段的同时,压缩这些过度检索的块,从而优化上下文窗口。

3. 支持副驾驶

对于客服机器人,压缩工单历史、政策文档和账户上下文,使模型能够处理更多的历史和文档,而不会触及 Token 限制或增加延迟。

实现

该工具旨在方便开发者使用,提供 Python、JavaScript、TypeScript、Go 和 Rust 的 SDK。典型的实现方式是将原始上下文和用户查询发送至 Adola API,并指定目标压缩率。

from adola import Adola

client = Adola(api_key="rose_...")
result = client.compress(
    input=open("retrieved_context.txt").read(),
    query="Which incident caused latency?",
    compression={"target_ratio": 0.3},
    include_spans=False,
)

compressed = result["output"]

社区观点

虽然最初的反馈凸显了成本节约的潜力,但部分用户对压缩策略的灵活性提出了疑问。一位用户指出:

“我可以根据优化目标选择一种 Token 减少策略吗?例如,我可能接受质量下降,以换取巨大的成本节约。”

这表明对在准确性与激进成本削减之间进行更细粒度控制的需求,这一功能将使开发者能够根据任务的具体关键性调节压缩水平。

Sources