尧图精选

DeepSeek-R1 上了 LiveCodeBench:用同一把 TaoToken Key 复现官方提交

🕒 发布时间:2026/9/20 13:49:57 📁 来源:尧图网络
告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度1. 先搞清楚要复现什么LiveCodeBench 是一个持续更新的代码评测基准它从 LeetCode、AtCoder、Codeforces 等竞赛平台抓取题目按发布时间切分避免模型在训练时“见过”这些题。DeepSeek-R1 官方在 LiveCodeBench 上提交过成绩其中 Hard 子集难度较高的题目的通过率是很多人关心的数字。你要做的事很具体用同一把 TaoToken Key 调用 DeepSeek-R1在本地跑 LiveCodeBench 的 Hard 子集生成一份提交文件然后逐题对照官方通过率看自己的复现结果和官方数字差多少。适合谁做这件事已经用过 OpenAI 兼容接口、能跑 Python 脚本、想验证模型真实代码能力的人。不需要你从头搭评测框架LiveCodeBench 官方仓库已经提供了完整的评测管线你只需要把模型请求接到 TaoToken 上。这里有个前提要说清楚TaoToken 在这个流程里只负责一件事——提供调用 DeepSeek-R1 的 Key 和 API 入口。评测逻辑、题目加载、结果判定全部由 LiveCodeBench 官方代码完成。你不是在评测 TaoToken而是在用 TaoToken 作为模型请求通道来复现一个公开基准。我试过用这套流程跑 Hard 子集下面把每一步拆开讲。2. 环境准备与 LiveCodeBench 安装2.1 基础环境先确认 Python 版本。LiveCodeBench 要求 Python 3.10 以上推荐 3.11。python --version # 期望输出Python 3.11.x如果版本不够用 conda 或 pyenv 切一个干净环境conda create -n lcb python3.11 -y conda activate lcb2.2 克隆 LiveCodeBench 仓库git clone https://github.com/LiveCodeBench/LiveCodeBench.git cd LiveCodeBench pip install -e .安装过程会拉取依赖包括 datasets、openai、anthropic 等。如果你只需要跑代码生成部分可以只装核心依赖pip install datasets openai tqdm2.3 确认 Hard 子集的数据结构LiveCodeBench 的数据按版本切分Hard 子集是其中难度标签为 hard 的题目集合。先加载看一下from datasets import load_dataset ds load_dataset(livecodebench/code_generation_lite, splittest) hard [x for x in ds if x.get(difficulty) hard] print(len(hard)) print(hard[0].keys())你会看到每道题包含 question_id、question_content、difficulty、platform、starter_code 等字段。Hard 子集的题目数量随版本更新会变以你拉到的数据集为准。注意LiveCodeBench 的数据集会定期更新不同时间拉到的题目集合可能不同。复现时记录你用的数据集版本和拉取日期否则对照官方数字时会对不上。3. 接入 TaoToken 并配置模型请求3.1 拿 Key到 https://taotoken.net/api-keys 创建一个 API Key。这个 Key 就是你调用 DeepSeek-R1 的凭证。创建后复制保存页面不会再次完整显示。3.2 配置 API Base URLLiveCodeBench 的代码生成脚本默认走 OpenAI 兼容接口。你需要把 base_url 指向 TaoToken 的 API 地址https://taotoken.net/api模型名称填 DeepSeek-R1 对应的标识。具体模型 ID 以 TaoToken 控制台模型列表为准通常在模型对话页面能看到可用模型。3.3 写一个最小调用测试在跑完整评测之前先用一段短代码确认 Key 和 Base URL 能通from openai import OpenAI client OpenAI( api_key你的TaoToken Key, base_urlhttps://taotoken.net/api ) resp client.chat.completions.create( modeldeepseek-r1, messages[{role: user, content: 写一个Python函数判断回文数}], max_tokens512 ) print(resp.choices[0].message.content)如果返回正常内容说明通道没问题。如果报 401检查 Key 是否复制完整如果报 404检查 base_url 是否漏了 /api 或多了斜杠。3.4 把配置写进评测脚本LiveCodeBench 的生成脚本在lcb_runner/runner/目录下。你可以直接用命令行参数传入python -m lcb_runner.runner.main \ --model deepseek-r1 \ --scenario codegeneration \ --base_url https://taotoken.net/api \ --api_key 你的TaoToken Key \ --release_version release_v5 \ --subset hard \ --n 1 \ --temperature 0.6参数说明--subset hard只跑 Hard 子集--n 1每题生成 1 个候选官方提交通常用 n1 或 n10先跑 1 保证流程通--temperature 0.6DeepSeek-R1 官方推荐温度具体以模型文档为准--release_version数据集版本以你实际拉到的为准如果脚本不支持--base_url参数你需要改lcb_runner/lm_styles.py或对应的模型配置文件把 base_url 写死为https://taotoken.net/api。4. 生成提交文件与逐题对照4.1 运行评测并生成提交文件跑完上面的命令后LiveCodeBench 会在output/目录下生成一个 JSON 文件命名类似output/deepseek-r1_hard_release_v5.json这个文件就是你的提交文件里面每道题包含 question_id、生成的代码、以及模型输出的原始文本。你可以用一段脚本检查文件结构import json with open(output/deepseek-r1_hard_release_v5.json) as f: data json.load(f) print(len(data)) print(data[0][question_id]) print(data[0][code_list][0][:200])4.2 跑官方评测脚本算通过率生成提交文件后用 LiveCodeBench 自带的评测脚本算通过率python -m lcb_runner.evaluation.compute_scores \ --eval_file output/deepseek-r1_hard_release_v5.json \ --release_version release_v5 \ --subset hard输出会给出 pass1 的数值。这个数值就是你的复现通过率。4.3 逐题对照表把官方公布的 Hard 子集通过率和你的结果放在一起对照。官方数字以 DeepSeek-R1 技术报告或 LiveCodeBench 官方榜单为准记录你查看的日期。题目 ID平台官方是否通过本地是否通过差异原因lcb_001LeetCode是是一致lcb_002AtCoder是否生成代码超时lcb_003Codeforces否否一致...............逐题对照的意义在于整体通过率接近不代表每题都对得上。有些题官方过了你没过有些题官方没过你过了这些差异才是复现时值得记录的东西。4.4 失败分支处理跑的过程中可能遇到几种失败Key 额度不足返回 402 或类似错误。到 https://taotoken.net/console 查看余额和用量。模型返回空内容DeepSeek-R1 有时会在思考阶段耗尽 max_tokens导致最终答案为空。把 max_tokens 调大或检查是否触发了截断。评测脚本报题目缺失数据集版本和评测脚本版本不匹配。确认--release_version和数据集拉取时用的版本一致。通过率远低于官方先检查 temperature 和 n 是否和官方设置一致。官方提交可能用了 n10 取 pass1你只跑 n1 会偏低。5. 限制、成本与模型选择5.1 复现的限制LiveCodeBench 的题目会随版本更新官方提交时的题目集合和你现在拉到的可能不同。严格复现需要锁定数据集版本和拉取日期。DeepSeek-R1 的输出有随机性即使 temperature 固定不同批次的生成结果也可能有差异。单次复现的通过率波动在几个百分点内是正常的。官方提交可能用了特定的 prompt 模板、few-shot 示例、或后处理逻辑。如果你只用默认配置结果和官方有差距是预期内的。5.2 成本估算Hard 子集的题目数量以你拉到的数据集为准通常几十到一百多道。每题生成一次输入 token 加输出 token 的总量取决于题目长度和模型思考长度。DeepSeek-R1 的思考链较长输出 token 消耗比普通模型高。具体单价以 TaoToken 官网模型页面为准。跑之前可以先跑 5 道题估算单题成本再决定是否跑全量。5.3 模型选择如果你只是想验证流程可以先用较小的子集或较短的题目跑通。如果要做正式复现建议锁定数据集版本记录 temperature、n、max_tokens 等参数跑多次取平均减少随机性影响把逐题对照表保存下来方便后续对比DeepSeek-R1 在代码生成任务上的表现和具体版本有关TaoToken 上可用的模型 ID 以控制台为准。如果你需要长期跑评测Coding Plan 可能比按量计费更划算具体到 https://taotoken.net/coding-plan 看当前方案。整个流程跑下来最耗时的不是调 API而是等模型生成和跑评测脚本。Hard 子集的题目判定涉及编译和执行单题评测时间从几秒到几十秒不等。建议用后台任务跑别在前台干等。 告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度
上一篇/下一篇内容由系统自动关联 返回资讯列表 →