algorithmicsuperintelligence/optillm · 上手攻略

  • 仓库:algorithmicsuperintelligence/optillm
  • 链接:https://github.com/algorithmicsuperintelligence/optillm
  • 分类:ai
  • 作者:Tom
  • 更新:2026-08-10

这是什么

OptiLLM 是一个OpenAI API 兼容的推理优化代理(inference proxy),通过在推理时(inference-time)应用 20+ 种推理优化技术,在不需要任何训练或微调的情况下,将 LLM 在数学、代码、逻辑推理任务上的准确率提升 2-10 倍

它的核心思路是:在现有 API 调用层加一层代理,对请求进行后处理(优化推理路径),再转发给底层模型,对调用方完全透明。支持 OpenAI、Anthropic、Google、Cerebras 以及 100+ 模型(通过 LiteLLM)。

解决什么问题

  • 小模型能力不足:用 GPT-4o-mini 级别的成本,通过 MoA(Mixture of Agents)等技术达到 GPT-4o 的效果(如 Arena-Hard-Auto 基准)。
  • 数学 / 代码推理差:基础模型在 AIME、GPQA 等推理基准上表现不佳,通过 MCTS、PlanSearch、CoT Reflection 等技术显著提升。
  • 推理成本高:不想微调或训练,直接在推理时通过优化技术榨取更多能力。
  • 多模型接入复杂:需要同时接入多个 LLM 提供方做对比实验,OptiLLM 通过统一代理层简化这件事。

快速安装

方式一:pip(最简)

pip install optillm

# 启动服务(默认监听 localhost:8000)
export OPENAI_API_KEY="your-key-here"
optillm

方式二:Docker(隔离环境,推荐生产使用)

# 全量镜像(含本地推理和插件)
docker pull ghcr.io/algorithmicsuperintelligence/optillm:latest
docker run -p 8000:8000 \
  -e OPENAI_API_KEY="your-key-here" \
  ghcr.io/algorithmicsuperintelligence/optillm:latest

# 仅代理镜像(轻量,无本地推理能力)
docker pull ghcr.io/algorithmicsuperintelligence/optillm:latest-proxy
docker run -p 8000:8000 \
  -e OPENAI_API_KEY="your-key-here" \
  ghcr.io/algorithmicsuperintelligence/optillm:latest-proxy

方式三:源码安装

git clone https://github.com/algorithmicsuperintelligence/optillm.git
cd optillm
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python optillm.py

⚠️ 默认绑定 localhost:安全考虑默认只监听 127.0.0.1,外网访问需加 --host 0.0.0.0,并配合 --optillm-api-key 做认证。

核心用法

基本调用(3 步上手)

from openai import OpenAI

client = OpenAI(
    api_key="your-openai-key",
    base_url="http://localhost:8000/v1"   # OptiLLM 代理地址
)

# 标准模型调用(自动使用 auto 策略)
response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": "Solve: 2x + 3 = 7, what is x?"}]
)
print(response.choices[0].message.content)

混合专家优化(MoA)——用小模型成本达到大模型效果

response = client.chat.completions.create(
    model="moa-gpt-4o-mini",   # 前缀 moa- 触发 Mixture of Agents
    messages=[{"role": "user", "content": "Write a Python quicksort implementation"}]
)

指定优化技术(三种方式)

方式 1:模型名前缀

model="re2-gpt-4o-mini"          # ReRead 二次阅读
model="bon-gpt-4o-mini"          # Best-of-N 采样
model="mcts-gpt-4o-mini"         # Monte Carlo Tree Search
model="cot_reflection-gpt-4o-mini"  # CoT + 反思
model="plansearch-gpt-4o-mini"   # 计划搜索

方式 2:extra_body 指定

response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[...],
    extra_body={"optillm_approach": "bon|mcts|moa"}
)

方式 3:Prompt 内标签指定

response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": "<optillm_approach>re2</optillm_approach> How many r's in 'strawberry'?"}]
)

组合技术(Pipeline 或并行)

# & 串联:前一个技术输出作为下一个输入
model="re2&cot_reflection-gpt-4o-mini"

# | 并联:多个技术并行执行,取最优
model="bon|mcts|plansearch-gpt-4o-mini"

多 Provider 支持

# OpenAI
export OPENAI_API_KEY="..."

# Anthropic
export ANTHROPIC_API_KEY="..."

# Cerebras(高速推理)
export CEREBRAS_API_KEY="..."

# Azure OpenAI
export AZURE_OPENAI_API_KEY="..."
export AZURE_API_VERSION="2024-06-01"
export AZURE_API_BASE="https://your-resource.openai.azure.com"

# 然后 model 前缀指定 provider
model="anthropic/claude-3-5-sonnet"
model="cerebras/llama-3.3-70b"

MCP 客户端(调用任何 MCP Server)

# OptiLLM 集成了 MCP Client,可连接任意 MCP Server
# 在启动时配置 MCP Server 地址
optillm --mcp-servers "http://localhost:8080"

私有模型路由

# 使用 Router 插件自动选择最优技术
export OPTILLM_ROUTER_MODEL="codelion/optillm-modernbert-large"
optillm

优化技术速查表

技术 前缀 适用场景
Mixture of Agents moa- 通用推理,小模型追赶大模型
MARS mars- 数学推理(AIME +30 分)
CePO cepo- 数学与长文本
PlanSearch plansearch- 代码生成(LiveCodeBench +20%)
ReRead (Re2) re2- 简单但易错的 QA
CoT Reflection cot_reflection- 需要自我修正的推理
Best of N bon- 需要多样性的生成
MCTS mcts- 决策类推理
Z3 Solver z3- 严格逻辑推理
LEAP leap- 少样本原则学习
Majority Voting majority_voting- 投票消歧
Deep Think deepthink- Gemini 式深度思考

典型适用场景

  1. 数学竞赛辅助:AIME、GPQA 等高难度数学基准,MARS/CePO 技术可将准确率提升 10-30 个百分点。
  2. 代码生成质量提升:PlanSearch + MoA 在 LiveCodeBench 等代码基准上显著优于原始模型。
  3. 小模型降本:用 GPT-4o-mini + moa 前缀替代 GPT-4o,估算可节省约 60% API 成本同时保持相近效果(⚠️ 需针对具体任务验证)。
  4. 研究推理基准:快速复现 inference-time scaling 相关论文的实验结果。
  5. 生产环境推理代理:作为统一 API 网关,对内部服务隐藏 LLM 提供方细节,支持热切换。

坑与注意

⚠️ 延迟增加:优化技术会带来额外的 API 调用(A 部分技术如 MoA、MCTS 需要多次调用底层模型),延迟可能增加 2-10 倍,不适合对延迟敏感的场景。

⚠️ 成本可能增加:Bon/MoA/MCTS 等技术会增加底层 API 调用次数,对应费用也会上升。使用前评估 cost/speed trade-off。

⚠️ 并非所有技术都支持 proxy 模式:DeepConf、CoT Decoding、Entropy Decoding、Thinkdeeper、AutoThink 等技术标记为"N/A for proxy",需要本地推理模式。

⚠️ 安全默认值:默认只绑定 127.0.0.1,Docker 部署时需显式暴露端口并配置认证。

⚠️ Flask 开发服务器:默认以 Flask 开发模式运行,不要直接用于生产,加 --production 或用 gunicorn 包装。

⚠️ benchmark 数字来源:README 中的 benchmark 数字(MARS +30 AIME2025、CePO +18.6 Math-L5 等)来自论文或有据可查的实验,但具体任务效果可能不同,建议在自己的任务集上验证后再决定是否上生产。

⚠️ SSL 验证:企业内网环境可能需要 --ssl-cert-path 配置自签名证书,或用 --no-ssl-verify(仅开发环境)。

与同类对比

特性 OptiLLM vLLM LiteLLM Axonn
定位 推理优化代理 高吞吐量推理引擎 多 provider 统一接口 推理优化
核心能力 20+ 推理优化技术 PagedAttention/Continuous batching 统一 API 封装 模型压缩/加速
微调需求 ❌ 零训练 ⚠️ 部分方案需
多模型 ✅ 100+ ✅ 40+ ⚠️ 有限
MoA / MCTS ✅ 原生 ⚠️
OpenAI API 兼容 ✅ 完全兼容 ⚠️ 部分兼容 ⚠️

结论:OptiLLM 适合在已有 API 调用基础上优化推理质量的场景,不需要换模型、不需要训练,直接加一层代理就能提升效果。如果你的场景是降低推理延迟和提高吞吐(而非提升推理质量),vLLM 是更合适的选择。

一句话推荐结论

OptiLLM 是目前最完整的推理优化代理——零训练、零微调,通过 20+ 优化技术让小模型在推理任务上追赶大模型,适合所有想挖掘现有 LLM 潜力而不愿重训的研究者和工程师。