尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

FastChat MT-bench 评测如何用 vLLM 后端加速模型答案生成?

FastChat MT-bench 评测如何用 vLLM 后端加速模型答案生成? FastChat MT-bench 评测如何用 vLLM 后端加速模型答案生成【免费下载链接】FastChatAn open platform for training, serving, and evaluating large language models. Release repo for Vicuna and Chatbot Arena.项目地址: https://gitcode.com/GitHub_Trending/fa/FastChat在 FastChat 的 MT-bench 评测流程里第一步是让被测模型回答全部 MT-bench 题目默认使用gen_model_answer.py本地推理。这一步对长评测集来说可能明显偏慢llm_judge README 在 Step 1. Generate model answers 一节中明确提示如果答案生成慢可以改用推理引擎如 vLLM来加速文档给出的预期是最高可提速 20 倍speed up by 20x来自该 README 的原文表述。这篇文章只解决一个问题把 MT-bench 的模型答案生成这一步从本地推理切换到 vLLM 服务并让生成出的答案文件能继续走后续 GPT-4 评分流程。前提是你要评测的模型在 vLLM 的支持范围内——README 的 Other backends 一节写明该路径 can be faster for the models supported by vLLM。准备安装 FastChat 与 vLLM按照 llm_judge README 的 Install 一节先克隆仓库并安装带llm_judge依赖的 FastChatgit clone https://github.com/lm-sys/FastChat.git cd FastChat pip install -e .[model_worker,llm_judge]再安装 vLLM。docs/vllm_integration.md 给出的安装命令是pip install vllm注意vllm serve服务与pip install vllm是两个独立动作前者是 vLLM 自带的命令行服务后者是 Python 包安装两者缺一不可。启动 vLLM 服务README Other backends 一节的第 1 步是启动 vLLM 服务vllm serve [MODEL-PATH] --dtype auto其中[MODEL-PATH]是权重路径可以是本地文件夹也可以是 Hugging Face 仓库 ID替换成你要评测的模型--dtype auto是文档给出的原样参数。服务启动后默认监听http://localhost:8000这是 README 第 2 步命令中 API 地址的隐含约定不需要额外配置。通过 API 生成 MT-bench 答案第 2 步是调用 gen_api_answer.py 生成答案命令从fastchat/llm_judge目录下执行python gen_api_answer.py --model [MODEL-NAME] --openai-api-base http://localhost:8000/v1 --parallel 50参数说明以 README 原文为准[MODEL-NAME]是第 1 步中 vLLM 服务承载的模型名--parallel是并发调用 vLLM worker 的请求数文档示例值 50。两个需要在执行前确认的行为来自 gen_api_answer.py 源码输出文件名由--model决定。脚本默认把答案写入data/mt_bench/model_answer/{args.model}.jsonl即文件名直接取--model的值。因此建议把--model直接命名为你想用于评测记录的模型 ID例如lmsys/vicuna-7b-v1.5这样与走gen_model_answer.py --model-id路径产出的文件位置一致data/mt_bench/model_answer/[MODEL-ID].jsonl。采样参数按题目类别自动选择。脚本会读取题目的required_temperature或按类别查temperature_configwriting/roleplay 为 0.7math/coding/extraction/reasoning 为 0.0 等见 common.py--max-tokens默认 1024--num-choices默认 1。如果你要复现 MT-bench 的标准采样设定保持这些默认值即可不要随意用--force-temperature覆盖——源码中--force-temperature与含required_temperature的题目不能同时存在断言会直接失败。另外gen_api_answer.py内部会通过get_conversation_template为模型构造对话模板这与本地推理路径一样依赖模型在 FastChat 中的注册。README 提示如果 FastChat 没有加载正确的 prompt template参照 docs/model_support.md 中 How to support a new model 一节为模型添加 conversation template 和 adapter。验证结果并继续评分流程答案生成完成后按 README 的标准流程继续确认答案文件已生成data/mt_bench/model_answer/[MODEL-ID].jsonl脚本运行结束时会按 question_id 排序并去重reorg_answer_file你可以检查行数与题目数一致。可选用 QA browser 浏览答案。README 说明可以用本地浏览器查看自己生成的答案python3 qa_browser.py --share生成 GPT-4 判断默认 single-answer 评分模式需要 OpenAI API keyexport OPENAI_API_KEYXXXXXX python gen_judgment.py --model-list [LIST-OF-MODEL-ID] --parallel [num-concurrent-api-call]判断结果写入data/mt_bench/model_judgment/gpt-4_single.jsonl。展示分数python show_result.py --model-list [MODEL-ID]这一步能跑通就说明 vLLM 路径生成的答案文件与标准 MT-bench 评分流程完全兼容评测闭环完成。适用边界vLLM 路径只对 vLLM 支持的模型更快换模型前先确认支持范围不支持的模型仍应走gen_model_answer.py本地路径该路径还支持--num-gpus-per-model和--num-gpus-total做多卡并行。本文只替换了 MT-bench 的答案生成一步。GPT-4 判断Step 2走 OpenAI API与 vLLM 无关命令保持不变。vllm serve常驻 GPU 显存评测结束后需要自行停止该进程再释放显存用于其他任务。参考文档fastchat/llm_judge/README.mdOther backends 一节、docs/vllm_integration.mdvLLM 作为 FastChat worker 的通用说明。【免费下载链接】FastChatAn open platform for training, serving, and evaluating large language models. Release repo for Vicuna and Chatbot Arena.项目地址: https://gitcode.com/GitHub_Trending/fa/FastChat创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表