如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
🚀 零训练情况下推理任务准确率提升 2-10 倍
🤗 HuggingFace Space • 📓 Colab 演示 • 💬 讨论区
OptiLLM 是一款兼容 OpenAI API 的优化推理代理,它实现了 20 多种最先进的技术,可显著提升 LLM 在推理任务上的准确率和性能——无需任何模型训练或微调。
通过在推理时进行额外计算,使用这些技术可以在各种任务上超越前沿模型。Cerebras 提出的 CePO 方法 就是一个很好的示例,展示了如何将这些技术组合使用。
通过 3 个简单步骤获得强大的推理能力提升:
# 1. 安装 OptiLLM
pip install optillm
# 2. 启动服务器
export OPENAI_API_KEY="your-key-here"
optillm
# 3. 与任何 OpenAI 客户端配合使用 - 只需更改模型名称!
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1")
# 添加 'moa-' 前缀启用 Mixture of Agents 优化
response = client.chat.completions.create(
model="moa-gpt-4o-mini", # 这能让 GPT-4o-mini 达到 GPT-4o 的性能!
messages=[{"role": "user", "content": "求解:若 2x + 3 = 7,x 的值是多少?"}]
)
使用 OptiLLM 前:"x = 1" ❌
使用 OptiLLM 后:"让我逐步解答:2x + 3 = 7,因此 2x = 4,所以 x = 2" ✅
OptiLLM 在各种基准测试中均实现了可衡量的提升:
| 技术 | 基础模型 | 提升 | 基准测试 |
|---|---|---|---|
| MARS | Gemini 2.5 Flash Lite | +30.0 分 | AIME 2025 (43.3→73.3) |
| CePO | Llama 3.3 70B | +18.6 分 | Math-L5 (51.0→69.6) |
| AutoThink | DeepSeek-R1-1.5B | +9.34 分 | GPQA-Diamond (21.72→31.06) |
| LongCePO | Llama 3.3 70B | +13.6 分 | InfiniteBench (58.0→71.6) |
| MOA | GPT-4o-mini | 媲美 GPT-4 | Arena-Hard-Auto |
| PlanSearch | GPT-4o-mini | +20% pass@5 | LiveCodeBench |
完整基准测试结果见 下方 ⬇️
pip install optillm
optillm
2024-10-22 07:45:05,612 - INFO - Loaded plugin: privacy
2024-10-22 07:45:06,293 - INFO - Loaded plugin: memory
2024-10-22 07:45:06,293 - INFO - Starting server with approach: auto
docker pull ghcr.io/algorithmicsuperintelligence/optillm:latest
docker run -p 8000:8000 ghcr.io/algorithmicsuperintelligence/optillm:latest
2024-10-22 07:45:05,612 - INFO - Loaded plugin: privacy
2024-10-22 07:45:06,293 - INFO - Loaded plugin: memory
2024-10-22 07:45:06,293 - INFO - Starting server with approach: auto
可用的 Docker 镜像变体:
latest):包含本地推理和插件的所有依赖latest-proxy):轻量级镜像,无本地推理能力latest-offline):独立镜像,包含预下载模型(spaCy),支持完全离线运行# 仅代理(最小)
docker pull ghcr.io/algorithmicsuperintelligence/optillm:latest-proxy
# 离线版(最大,包含预下载模型)
docker pull ghcr.io/algorithmicsuperintelligence/optillm:latest-offline
使用 git 克隆仓库,并通过 pip install 安装依赖。
git clone https://github.com/algorithmicsuperintelligence/optillm.git
cd optillm
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
OptiLLM 支持 SSL 证书验证配置,可用于自签名证书或企业代理环境。
禁用 SSL 验证(仅开发环境):
# 命令行
optillm --no-ssl-verify
# 环境变量
export OPTILLM_SSL_VERIFY=false
optillm
使用自定义 CA 证书:
# 命令行
optillm --ssl-cert-path /path/to/ca-bundle.crt
# 环境变量
export OPTILLM_SSL_CERT_PATH=/path/to/ca-bundle.crt
optillm
[!WARNING] 禁用 SSL 验证不安全,仅应在开发环境中使用。对于具有自定义 CA 的生产环境,请改用
--ssl-cert-path。详见 SSL_CONFIGURATION.md。
| 插件 | Slug | 描述 |
|---|---|---|
| 系统提示学习 | spl | 实现了Andrej Karpathy所说的LLM学习的第三种范式,使模型能够获取程序解决知识和策略 |
| 深度思考 | deepthink | 使用推理时间缩放为推理型LLM实现类Gemini的深度思考方法 |
| 长上下文Cerebras规划与优化 | longcepo | 结合规划和分治处理长文档,实现无限上下文 |
| 多数投票 | majority_voting | 生成k个候选解决方案,并通过多数投票选择最频繁的答案(默认k=6) |
| MCP客户端 | mcp | 实现模型上下文协议(MCP)客户端,使您能够将任何LLM与任何MCP服务器一起使用 |
| 路由 | router | 使用optillm-modernbert-large模型根据用户提示将请求路由到不同的方法 |
| 代码链 | coc | 实现代码链方法,将CoT与代码执行和基于LLM的代码模拟相结合 |
| 内存 | memory | 实现短期内存层,使您能够对任何LLM使用无界上下文长度 |
| 隐私 | privacy | 对请求中的PII数据进行***化,并在响应中将其还原为原始值 |
| 读取URL | readurls | 读取请求中找到的所有URL,获取URL处的内容并将其添加到上下文中 |
| 执行代码 | executecode | 允许使用代码解释器执行请求和LLM生成响应中的python代码 |
| JSON | json | 使用outlines库实现结构化输出,支持pydantic类型和JSON模式 |
| 生成选择 | genselect | 生成式解决方案选择——生成多个候选方案并根据质量标准选择最佳方案 |
| 网络搜索 | web_search | 使用Chrome自动化(Selenium)执行Google搜索,以收集搜索结果和URL |
| 深度研究 | deep_research | 实现测试时扩散深度研究员(TTD-DR),通过迭代优化生成全面的研究报告 |
| 代理 | proxy | 跨多个LLM提供商的负载均衡和故障转移,具有健康监控和轮询路由 |
我们支持在optillm中直接加载任何HuggingFace模型或LoRA。要使用内置推理服务器,请将OPTILLM_API_KEY设置为任意值(例如export OPTILLM_API_KEY="optillm"),然后在OpenAI客户端中使用相同的值。您可以在model字段中传入任何HuggingFace模型。如果是私有模型,请确保将HF_TOKEN环境变量设置为您的HuggingFace密钥。我们还支持通过+分隔符在模型之上添加任意数量的LoRA。
例如,以下代码加载基础模型meta-llama/Llama-3.2-1B-Instruct,然后在其之上添加两个LoRA——patched-codes/Llama-3.2-1B-FixVulns和patched-codes/Llama-3.2-1B-FastApply。您可以通过OpenAI SDK客户端的extra_body字段中的active_adapter参数指定要使用的LoRA。默认情况下,我们将加载最后指定的适配器。
OPENAI_BASE_URL = "http://localhost:8000/v1"
OPENAI_KEY = "optillm"
response = client.chat.completions.create(
model="meta-llama/Llama-3.2-1B-Instruct+patched-codes/Llama-3.2-1B-FastApply+patched-codes/Llama-3.2-1B-FixVulns",
messages=messages,
temperature=0.2,
logprobs = True,
top_logprobs = 3,
extra_body={"active_adapter": "patched-codes/Llama-3.2-1B-FastApply"},
)
您还可以直接在本地推理服务器上使用替代解码技术,如cot_decoding和entropy_decoding。
模型上下文协议(MCP)插件使 OptiLLM 能够连接 MCP 服务器,将外部工具、资源和提示引入语言模型的上下文中。这支持与文件系统访问、数据库查询、API 连接等进行强大集成。
OptiLLM 通过多种传输方式支持本地和远程 MCP 服务器:
什么是 MCP?
模型上下文协议(MCP)是一种开放协议标准,允许 LLM 通过标准化接口安全访问工具和数据源。MCP 服务器可提供:
配置
设置 MCP 配置
[!NOTE] 关于向后兼容性:现有 MCP 配置将继续正常工作,无需更改。未指定
transport字段时,默认值为 "stdio",与现有设置保持完全向后兼容。
~/.optillm/mcp_config.json 创建配置文件,结构如下:本地服务器(stdio)- 传统方式:
{
"mcpServers": {
"filesystem": {
"transport": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/allowed/directory1",
"/path/to/allowed/directory2"
],
"env": {},
"description": "Local filesystem access"
}
},
"log_level": "INFO"
}
旧版格式(仍可使用):
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/directory"],
"env": {}
}
}
}
远程服务器(SSE)- 新功能:
{
"mcpServers": {
"github": {
"transport": "sse",
"url": "https://api.githubcopilot.com/mcp",
"headers": {
"Authorization": "Bearer ${GITHUB_TOKEN}",
"Accept": "text/event-stream"
},
"timeout": 30.0,
"sse_read_timeout": 300.0,
"description": "GitHub MCP server for repository access"
}
},
"log_level": "INFO"
}
远程服务器(WebSocket)- 新功能:
{
"mcpServers": {
"remote-ws": {
"transport": "websocket",
"url": "wss://api.example.com/mcp",
"description": "Remote WebSocket MCP server"
}
},
"log_level": "INFO"
}
混合配置(本地 + 远程):
{
"mcpServers": {
"filesystem": {
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/user/docs"],
"description": "Local filesystem access"
},
"github": {
"transport": "sse",
"url": "https://api.githubcopilot.com/mcp",
"headers": {
"Authorization": "Bearer ${GITHUB_TOKEN}"
},
"description": "GitHub MCP server"
},
"remote-api": {
"transport": "websocket",
"url": "wss://api.company.com/mcp",
"description": "Company internal MCP server"
}
},
"log_level": "INFO"
}
配置参数
通用参数:
stdio 传输(本地服务器):
sse 传输(服务器发送事件):
websocket 传输(WebSocket):
环境变量扩展:
头信息和其他字符串值支持使用 ${VARIABLE_NAME} 语法进行环境变量扩展。这对于 API 密钥尤其有用:
{
"headers": {
"Authorization": "Bearer ${GITHUB_TOKEN}",
"X-API-Key": "${MY_API_KEY}"
}
}
可用的 MCP 服务器
OptiLLM 支持本地和远程 MCP 服务器:
本地 MCP 服务器(stdio 传输)
您可以使用任何官方 MCP 服务器或作为本地进程运行的第三方服务器:
@modelcontextprotocol/server-filesystem - 文件操作mcp-server-git - Git 仓库操作@modelcontextprotocol/server-sqlite - SQLite 数据库访问@modelcontextprotocol/server-brave-search - 网络搜索功能远程 MCP 服务器(SSE/WebSocket 传输)
远程服务器提供集中式访问,无需本地安装:
https://api.githubcopilot.com/mcp - 仓库管理、问题跟踪和代码分析示例:综合配置
{
"mcpServers": {
"filesystem": {
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/user/documents"],
"description": "Local file system access"
},
"search": {
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "your-api-key-here"
},
"description": "Web search capabilities"
},
"github": {
"transport": "sse",
"url": "https://api.githubcopilot.com/mcp",
"headers": {
"Authorization": "Bearer ${GITHUB_TOKEN}",
"Accept": "text/event-stream"
},
"description": "GitHub repository and issue management"
}
},
"log_level": "INFO"
}
optillm 可以选择使用 Docker 和提供的 https://github.com/algorithmicsuperintelligence/optillm/blob/main/Dockerfile 进行构建和运行。
来自真实用户的反馈,见证轩辕镜像的优质服务