如何快速上手LiveCodeBench?从安装到首次评估的完整教程
如何快速上手LiveCodeBench从安装到首次评估的完整教程【免费下载链接】LiveCodeBenchOfficial repository for the paper LiveCodeBench: Holistic and Contamination Free Evaluation of Large Language Models for Code项目地址: https://gitcode.com/gh_mirrors/li/LiveCodeBenchLiveCodeBench是一个全面且无污染的代码大语言模型评估工具能够持续收集新的编程问题并评估模型的代码生成、自我修复、代码执行和测试输出预测等多方面能力。本教程将帮助你快速完成从安装到首次评估的全过程让你轻松掌握这一强大工具的使用方法。LiveCodeBench简介为什么选择它 LiveCodeBench提供了对代码能力的全方位评估与传统评估工具相比具有显著优势持续更新的问题集不断从LeetCode、AtCoder和CodeForces等竞赛平台收集新问题多维度评估不仅评估代码生成还包括自我修复、代码执行和测试输出预测等能力无污染保证通过时间窗口筛选确保评估问题是模型训练后发布的新问题图LiveCodeBench的工作流程展示包括问题陈述、代码生成、自我修复、测试输出预测和代码执行等环节准备工作环境要求与依赖安装 在开始前请确保你的系统满足以下要求Python 3.11或更高版本Git工具足够的存储空间建议至少1GB安装步骤克隆仓库git clone https://gitcode.com/gh_mirrors/li/LiveCodeBench cd LiveCodeBench安装依赖管理工具uv我们推荐使用uv来管理依赖它比传统的pip更快更高效# 根据你的系统选择合适的安装方式详情可参考uv官方文档 # 安装完成后验证 uv --version创建虚拟环境并安装依赖uv venv --python 3.11 source .venv/bin/activate uv pip install -e .对于需要额外功能的用户可以安装以下可选依赖pip install google-generativeai pebble anthropic openai mistralai pip install vllm # 用于开源模型的推理数据集版本选择找到适合你的评估集 LiveCodeBench作为持续更新的基准提供了多个版本的数据集release_v1初始版本包含2023年5月至2024年3月发布的400个问题release_v2更新版本包含2023年5月至2024年5月发布的511个问题release_v3包含2023年5月至2024年7月发布的612个问题release_v4包含2023年5月至2024年9月发布的713个问题release_v5包含2023年5月至2025年1月发布的880个问题release_v6包含2023年5月至2025年4月发布的1055个问题默认情况下系统使用release_latest版本你可以通过--release_version标志指定其他版本。首次评估代码生成能力测试 让我们以代码生成场景为例进行首次评估基本命令python -m lcb_runner.runner.main --model {model_name} --scenario codegeneration --evaluate其中{model_name}需要根据lcb_runner/lm_styles.py文件中的定义来选择。关键参数说明--tensor_parallel_size设置GPU并行推理的数量--use_cache缓存生成的输出结果--continue_existing使用已有的结果文件继续运行--local_model_path指定本地模型路径--num_process_evaluate设置评估的进程数--timeout设置每个测试用例的超时时间示例评估特定版本数据集python -m lcb_runner.runner.main --model gpt4 --scenario codegeneration --evaluate --release_version release_v2评估结果解读评估完成后你将得到pass1和pass5等指标这些指标表示模型在一次或五次尝试中生成正确代码的概率。LiveCodeBench使用修改版的apps benchmark检查器来计算这些指标解决了原始检查器中的一些边缘情况问题。图不同模型在LiveCodeBench上的pass1得分对比展示了API访问模型和开放访问模型的性能差异其他评估场景全面了解模型能力 LiveCodeBench不仅支持代码生成评估还提供了其他重要的代码能力评估场景自我修复能力评估python -m lcb_runner.runner.main --model {model_name} --scenario selfrepair --codegen_n {num_codes_codegen} --n 1 --evaluate此场景评估模型修复自身生成的错误代码的能力需要先进行代码生成并指定生成的代码数量。测试输出预测评估python -m lcb_runner.runner.main --model {model_name} --scenario testoutputprediction --evaluate评估模型预测代码测试输出的能力这对于理解模型对代码行为的认知非常重要。代码执行能力评估python -m lcb_runner.runner.main --model {model_name} --scenario codeexecution --evaluate此外还支持COT思维链设置python -m lcb_runner.runner.main --model {model_name} --scenario codeexecution --cot_code_execution --evaluate图不同模型在代码生成、代码执行、自我修复和测试输出预测四个场景的性能雷达图自定义评估使用自己的模型输出 ️如果你已经有模型生成的代码想要使用LiveCodeBench进行评估可以使用自定义评估器python -m lcb_runner.runner.custom_evaluator --custom_output_file {path_to_custom_outputs}自定义输出文件需要按照以下格式排列[ {question_id: id1, code_list: [code1, code2]}, {question_id: id2, code_list: [code1, code2]} ]常见问题与解决方法 ❓评估结果波动较大时间限制可能导致pass1和pass5指标有轻微0.5波动。如果观察到显著变化可以尝试降低--num_process_evaluate或增加--timeout参数。如何添加新模型支持在lcb_runner/lm_styles.py文件中扩展LMStyle类在lcb_runner/prompts/generation.py文件中添加新模型的提示格式哪里可以找到更多帮助查看项目中的ERRATA.md文件了解已知问题和更新检查lcb_runner/runner/parser.py文件获取更多参数详情通过本教程你已经掌握了LiveCodeBench的基本安装和使用方法。这个强大的工具将帮助你全面评估代码大语言模型的各种能力无论是学术研究还是工业应用都能为你提供有价值的 insights。现在就开始你的评估之旅吧【免费下载链接】LiveCodeBenchOfficial repository for the paper LiveCodeBench: Holistic and Contamination Free Evaluation of Large Language Models for Code项目地址: https://gitcode.com/gh_mirrors/li/LiveCodeBench创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考