使用vLLM部署LLM实现RAG时遇模板及参数报错求助
问题解决方案
问题1:极简启动服务器后请求报错需定义模板
原因:Hermes-2-Pro-Llama-3-8B这类指令微调模型,vLLM未内置默认聊天模板,Chat Completions API无法自动格式化对话内容。
解决办法:
- 启动时添加
--chat-template auto参数,让vLLM自动加载模型HF仓库中定义的聊天模板:vllm serve --model NousResearch/Hermes-2-Pro-Llama-3-8B --chat-template auto - 若模型仓库未提供模板,可手动指定自定义jinja模板文件路径(需自行编写或从官方示例库获取):
vllm serve --model NousResearch/Hermes-2-Pro-Llama-3-8B --chat-template your_custom_template.jinja
问题2:启动参数--enable-auto-tool-choice和--tool-call-parser不被识别
原因:这两个参数是vLLM较新版本新增的特性,当前使用的vLLM版本过低,不支持该参数。
解决办法:
- 升级vLLM到最新稳定版本:
pip install --upgrade vllm - 若无法升级,查看当前版本的官方文档,使用对应版本的工具调用配置参数(旧版本可能通过其他逻辑实现工具调用功能)。
额外修正:调用代码模型名不匹配
你提供的调用代码中,model="facebook/opt-125m"与实际启动的模型(Hermes-2-Pro或Mistral-7B-Instruct)不一致,需修改为启动时指定的模型名称,否则会报错模型不存在:
chat_response = client.chat.completions.create( model="NousResearch/Hermes-2-Pro-Llama-3-8B", # 或替换为mistralai/Mistral-7B-Instruct-v0.3 messages=[ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Tell me a joke."}, ] )
内容的提问来源于stack exchange,提问作者Laz
相关产品推荐
相关产品推荐

