前言
在 AI 浪潮席卷的当下,LMArena.ai 平台凭借丰富的大语言模型资源、多场景榜单对比优势,成为很多开发者测试、调用前沿 AI 模型的首选平台。而 LMArena2API 作为一款强大的开源工具,充当了 OpenAI 兼容接口与 LMArena.ai 平台之间的"桥梁",能让我们通过任意兼容 OpenAI API 的应用(如 AI 聊天客户端、编程插件),无缝调用 LMArena.ai 上的海量模型,还支持流式对话、文生图、Cookie 池配置等实用功能。
但实际部署 LMArena2API 时,不少开发者会陷入"环境配置混乱、依赖冲突、Cloudflare 验证绕坑难"的困境------本地环境版本不兼容、依赖包安装失败、部署后无法正常调用接口,甚至花费大量时间排查问题,最终半途而废。而 Docker作为容器化技术的代表,恰好能解决这些痛点:它将 LMArena2API 及其所需的运行环境、依赖包全部打包成标准化镜像,实现"一次构建、到处运行",彻底告别"在我电脑上能跑,部署就报错"的尴尬。
基于此,我整理了这份详细的 Docker 部署 LMArena2API 指南,从核心准备、镜像拉取、容器配置,到接口测试、常见问题排查,每一步都搭配清晰说明和实操命令,同时重点标注部署中的关键注意事项(如 Cloudflare 验证适配、Cookie 池配置技巧),无论是 AI 新手还是有一定经验的开发者,都能跟着教程快速完成部署,轻松解锁 LMArena.ai 的全部模型能力。
下载地址:
好像进官网要魔法?我不用的话好像进不去,你们尝试一下看看

进入口之后:
这访问的 arena.ai 是 LMSYS Org 官方的 Chatbot Arena 在线平台,它主要用于模型的公开评测和排名,并不提供一键部署或下载。
这个网站是 Arena.ai,它是一个专注于AI大模型对比评测的在线平台。
这个平台的核心玩法是"盲测":你可以在同一个界面,向两个匿名的顶尖AI模型(比如GPT-4、Claude、Gemini等)发送同一个问题,然后对比它们的回复,选出你认为更好的一个。你的每一次投票,都会帮助平台生成一个更贴近真实用户体验的AI模型排行榜。
为什么它值得关注?
免费体验顶级模型
你无需为GPT-4、Claude等付费模型单独订阅,在Arena.ai上就能免费体验它们的最新能力。
找到最适合你的AI
不同模型擅长的领域不同,有的强于写代码,有的强于创意写作。通过实际对比,你可以找到最符合你需求的AI助手。
了解AI行业动态
平台的排行榜会实时更新,是观察哪个模型最近变强了、哪家发布了新模型的绝佳窗口。
如何使用?
使用非常简单,无需安装,打开网页即可:
- 在中间的输入框里输入你的问题或指令。
- 系统会同时让两个匿名模型进行回复。
- 你阅读后,选择你认为更优的答案进行投票。
这个平台非常适合想深入了解和对比各大AI模型能力的用户。
🐳 使用 Docker 部署 LMArena2API
这是最简单、最推荐的部署方式,可以确保环境一致性,避免依赖冲突。社区中有一个名为 lmarena2api 的开源项目,它封装了 LMArena 的功能,让你可以在自己的服务器上搭建一个私有的访问接口。
第一步:准备环境
确保你的服务器或本地电脑已经安装了 Docker 和 Docker Compose。
第二步:获取必要的 Cookie
在运行容器之前,你需要准备两个关键的 Cookie 值,这是项目能够正常工作的核心:
LA_COOKIECF_CLEARANCE
这两个值通常需要通过浏览器访问 LMArena 官网,在开发者工具的"网络"(Network)面板中,找到相关请求并复制其请求头(Request Headers)里的 Cookie 字段获得。
这是最关键的一步。你需要从 arena.ai 官网获取两个关键的 Cookie 值:LA_COOKIE 和 CF_CLEARANCE。
- 打开浏览器,登录
arena.ai。 - 按
F12打开开发者工具,切换到"网络 (Network)"标签。
- 在网站上进行一次对话,然后在网络请求列表中找到一个
POST请求(例如v1/worker/get_conversation)。 - 点击该请求,在"请求头 (Request Headers)"部分找到
Cookie字段,从中复制出LA_COOKIE和CF_CLEARANCE的值。
具体操作步骤:
- 清空当前列表:点击开发者工具左上角的 🚫(禁止)图标,清空当前的网络请求记录,这样更容易找到新产生的请求。
- 触发一个对话请求 :回到网页,在输入框里随便输入一个词(比如"你好"),然后发送。
若你是第一次打开网站,大概率会出现这个界面
- 安全验证已触发:页面中间的弹窗说明网站正在通过 reCAPTCHA 验证你的身份,这是获取有效 Cookie 的前置条件。
- 目标请求已出现 :在开发者工具的列表中,你可以看到
create-evaluation这个请求,这正是我们寻找的、用于创建对话的核心 API 请求。虽然它目前显示为 403(禁止访问),但这恰恰证明了请求已被服务器接收,只是因为你尚未通过验证,所以被拒绝了。你需要做的就是完成这个安全验证,然后从
create-evaluation请求中复制 Cookie。
- 完成安全验证:点击弹窗中的复选框,完成 reCAPTCHA 验证。如果验证成功,弹窗会消失,你就可以正常与 AI 对话了。
- 重新发送请求 :验证通过后,再次在输入框里发送一条消息(比如"你好"),这会触发一个新的
create-evaluation请求。
获得新的 create-evaluation 请求有点难
虽然成功找到了 create-evaluation 这个核心请求,但服务器因为验证失败拒绝了它,这意味着当前获取到的 Cookie 是无效的。
这正是 LMSYS 网站最让人头疼的地方------它的反爬机制非常严格。

为什么会出现 403 错误
简单来说,LMSYS 的服务器在收到请求时,会检查 Cookie 里的两个关键字段:
cf_clearance: 这是 Cloudflare 防火墙颁发的"通行证",证明你不是机器人。arena-auth-prod-v1: 这是你的登录凭证。
你的截图显示,你虽然拿到了 Cookie,但服务器认为你的验证(reCAPTCHA)超时了,所以直接拒绝了请求(403 Forbidden)。这通常是因为 Cookie 过期了,或者是在非浏览器环境下(比如直接用代码请求)被防火墙拦截了。
解决方案:如何获取"新鲜"的有效 Cookie
要解决这个问题,你需要模拟一个"真实用户"的行为来获取最新的 Cookie。
方法一:手动刷新获取(最简单)
- 清除缓存 :在浏览器中,按
Ctrl + Shift + Delete(Mac 是Cmd + Shift + Delete),清除 Cookie 和缓存。 - 无痕模式打开:打开浏览器的"无痕/隐身模式",访问 LMSYS 网站。
- 完成验证 :此时网站会弹出 reCAPTCHA 验证框,务必手动完成验证。
- 再次发送消息:验证通过后,在聊天框发送一条消息。
- 复制新 Cookie :此时再去找
create-evaluation请求,复制它的 Cookie。这个 Cookie 应该是"新鲜"且有效的。
方法二:使用浏览器插件(推荐)
手动操作太麻烦?可以使用浏览器插件来自动管理 Cookie。
- 安装插件:在 Chrome 或 Edge 浏览器中安装 EditThisCookie 或 Cookie-Editor 插件。
- 导出 Cookie:在 LMSYS 网站页面,点击插件图标,选择"导出"或"复制为 JSON"。
- 在 Docker 中使用:将导出的 JSON 格式的 Cookie 字符串,作为环境变量传入 Docker 容器。

总结
你现在的状态是"找到了门,但钥匙不对"。只要按照上述方法,在无痕模式下重新完成一次验证,获取到最新的 Cookie,你的 Docker 部署就能成功了。
以下这个显示200ok的就是正确的cookie

- 锁定目标请求 :发送后,网络面板会立刻出现新的请求。你需要寻找一个名称类似于
v1/chat/completions或v1/worker/get_conversation的POST请求。- 复制 Cookie :点击这个
POST请求,在右侧的"请求头"(Request Headers)部分,找到Cookie这一行。这一长串字符里就包含了我们需要的LA_COOKIE和CF_CLEARANCE。
第三步:运行 Docker 命令
打开终端,执行以下命令来拉取并运行镜像。请务必将命令中的占位符替换为你自己的实际值。
方案一:自己构建镜像(最稳妥,推荐)
如果你是从 GitHub 或其他地方下载了代码(比如 Dockerfile),你需要先"制造"一个镜像。
-
找到 Dockerfile :
在你的代码文件夹里,应该有一个叫
Dockerfile的文件(没有后缀名)。 -
打开终端(命令行) :
进入这个
Dockerfile所在的文件夹。 -
运行构建命令 :
输入以下命令来创建镜像,并给它起个名字叫
lmarena-botdocker build -t lmarena-bot .(注意:命令最后有个点
.,代表当前目录)等待进度条跑完,显示
Successfully built ...后,你就有了镜像名称lmarena-bot。
若没有下好源码
这里有两种最可能的情况,你可以看看你是哪一种:
情况一:你在用 Browser Use(浏览器自动化)
看你的截图标题栏有
Browser Use,这通常是一个 Python 库,用来让 AI 控制浏览器。如果你是想运行它的示例代码:
去 GitHub 下载代码:
- 打开浏览器,访问这个地址:https://github.com/browser-use/browser-use
- 点击绿色的 "Code" 按钮,选择 "Download ZIP"。
- 解压下载好的压缩包。
准备运行环境(这一步比 Docker 更直接):
- 这个项目主要是 Python 写的,不一定非要用 Docker。
- 你需要安装 Python。
- 在解压的文件夹里打开终端,运行
pip install browser-use。写一个脚本 :
新建一个
main.py,把 Cookie 放进去:
import asyncio from browser_use import Browser, BrowserConfig async def main(): # 把你的长串 Cookie 放在这里 my_cookie = "user_country_code=JP; _ga=GA1.1..." browser = Browser( config=BrowserConfig( # 这里填入你的 Cookie cookies=my_cookie ) ) # ... 你的其他代码 ... asyncio.run(main())情况二:你在用 LMSYS Arena 的第三方 Docker 镜像
如果你是在找那个能自动跑 Arena 对战的 Docker 机器人(Bot),你需要找到提供这个镜像的 GitHub 项目。
最知名的开源项目是
lmsys-org/arena-hard-auto或者类似的社区项目。操作步骤:
下载代码:
- 访问 GitHub:https://github.com/lmsys-org/arena-hard-auto (或者你具体参考的那个项目的地址)
- 同样点击 "Code" -> "Download ZIP"。
- 解压。
构建镜像:
进入解压后的文件夹。
你应该能看到一个
Dockerfile。在文件夹地址栏输入
cmd或powershell打开终端。运行构建命令(给它起名叫
arena-bot):
docker build -t arena-bot .
总结
先找代码 :去 GitHub 搜你正在用的工具名(比如
Browser Use或LMSYS Arena Bot)。下载解压:把代码下到电脑上。
构建镜像 :在代码文件夹里用
docker build命令生成镜像。运行容 器 :构建完成后,就可以运行刚才生成的
arena-bot镜像了:
*
docker run -d --name my-arena-run ` -e FULL_COOKIE_STRING="你那一长串Cookie" ` arena-bot
方案二:使用现成的公共镜像(如果有)
如果你是在网上找的教程,通常作者会提供一个现成的镜像地址。
- 常见的镜像名格式 :通常是
用户名/仓库名:版本。 - 如果你找不到:你可以去 Docker Hub 搜一下你使用的这个项目的名字。
拿到镜像名后的完整步骤
假设你用了方案一 ,你的镜像名就是 lmarena-bot。
-
复制你的 Cookie :
把你刚才截图里的那一长串 Cookie 准备好。
-
运行完整的 Docker 命令 :
请把下面的
<你的长串Cookie>替换成你刚才截图里的那一长串内容(记得保留外面的引号"")。docker run --name lmarena2api -d --restart always
-p 10088:10088
-v $(pwd)/data:/app/lmarena2api/data
-e LA_COOKIE=你的_LA_COOKIE值
-e CF_CLEARANCE=你的_CF_CLEARANCE值
-e API_SECRET="自定义的API密钥"
-e TZ=Asia/Shanghai
deanxv/lmarena2api
命令参数详解:
--name lmarena2api: 为容器指定一个名称。-d: 让容器在后台运行。--restart always: 设置容器随 Docker 服务自动启动。-p 10088:10088: 将宿主机的 10088 端口映射到容器的 10088 端口,这是 API 服务的访问端口。-v $(pwd)/data:/app/lmarena2api/data: 将当前目录下的data文件夹挂载到容器内,用于持久化保存数据。-e LA_COOKIE和-e CF_CLEARANCE: 设置前面获取到的环境变量。-e API_SECRET: 设置一个自定义的密钥,用于保护你的 API 接口,防止被他人滥用。-e TZ=Asia/Shanghai: 设置容器时区为上海时间。
第四步:处理镜像拉取问题
如果上述命令中的 deanxv/lmarena2api 镜像无法拉取(例如网络问题),可以尝试使用 GitHub 的容器镜像仓库。只需将镜像名称替换为:
ghcr.io/deanxv/lmarena2api
第五步:验证部署
部署成功后,你可以通过访问 http://你的服务器IP:10088 来测试服务是否正常运行。如果配置了 API_SECRET,调用 API 时需要在请求头中带上这个密钥。
这个项目还提供了强大的监控功能,例如实时统计 QPS、响应时间,并能与 Prometheus 和 Grafana 集成,非常适合用于生产环境的性能分析和告警。


