【AI大模型微调】第 7 章 模型部署

📅 发布时间:2026/8/12 19:54:57
【AI大模型微调】第 7 章 模型部署
第 7 章 模型部署在实际生产环境下微调之后的模型需要经过部署之后才能使用。部署的本质就是将模型转换成可通过HTTP调用的服务本章介绍如何使用vLLM对大模型进行部署以及如何在实际代码当中进行调用。7.1 vLLM模型部署7.1.1 简介vLLM 是一个面向大语言模型推理的高性能推理框架专为大规模并发请求优化底层基于PyTorch 构建。vLLM项目主页https://docs.vllm.ai/en/latest/index.htmlGithub开源地址https://github.com/vllm-project/vllm从各种基准测试数据来看同等配置下使用 vLLM 框架与 Transformer 等传统推理库相比其吞吐量可以提高一个数量级这归功于以下几个特性高级 GPU 优化利用 CUDA 和 PyTorch 最大限度地提高 GPU 利用率从而实现更快的推理速度。高级内存管理通过PagedAttention算法实现对显存的高效管理减少内存浪费从而优化大模型的运行效率。批处理功能支持连续批处理和异步处理从而提高多个并发请求的吞吐量。安全特性内置 API 密钥支持和适当的请求验证不像其他完全跳过身份验证的框架。易用性支持多种流行的大型语言模型并兼容 OpenAI 的 API 服务器。7.1.2 安装环境要求OS: LinuxPython: 3.9 – 3.12创建并激活vllm环境uv venv --python 3.12安装vllmuv pip install vllm -i https://pypi.tuna.tsinghua.edu.cn/simple查看安装信息uv pip show vllm7.1.3 启动此处使用vllm将前面经过微调后的模型进行部署操作首先需要将原模型目录和微调后的模型目录都拷贝到vllm_dir目录下按照个人实际操作过程中的目录结构调整。启动命令vllm serve /root/autodl-tmp/vllm_dir/Qwen3-0.6B-sft-lora \–served-model-name Qwen3-0.6B-sft-lora \–tokenizer /root/autodl-tmp/vllm_dir/Qwen3-0.6B \–max-model-len 32768注意小写的k单位是1000大写的K单位是1024正式运行应后台运行nohup vllm serve /root/autodl-tmp/vllm_dir/Qwen3-0.6B-sft-lora \–served-model-name Qwen3-0.6B-sft-lora \–tokenizer /root/autodl-tmp/vllm_dir/Qwen3-0.6B \–max-model-len 32K \vllm.log 21 7.1.4 调用1快速测试curl http://localhost:8000/v1/chat/completions \-H “Content-Type: application/json” \-d {model: Qwen3-0.6B-sft-lora, messages: [ {role: user, content: 抽取出下文中的关键词\n目的分析结节性甲状腺肿(NG)合并甲状腺微小癌(TMC)的超声声像图特点,以提高 TMC 的术前超声检出率.资料与方法回顾性分析经手术病理证实的64例 NG 合并 TMC 的超声声像图表现,并以同病例邻近癌灶且直径≤1cm 的 NG 结节作为对照.结果 TMC 与 NG 结节在形态、边界、回声强度、声晕、微小钙化、囊性变与血流分布等方面差异有统计学意义(P 0.01),回声均匀程度差异无统计学意义(P 0.05).颈部淋巴结肿大超声检出率为89.47%(17/19).结论 TMC 具有与 NG 结节不同的声像图特点,TMC 的灰阶超声特点为低回声、无声晕、有微小钙化、无囊性变等,彩色多普勒超声显示病灶内部血流信号丰富或无血流,周边少或无血流信号.在 NG 检查中重点观察≤1cm 的低回声结节,以及早发现 TMC. } ]}’2代码调用openai库安装openai库uv pip install openai -i https://pypi.tuna.tsinghua.edu.cn/simple测试代码from openai import OpenAI连接本地client OpenAI(base_url[http://localhost:8000/v1/](http://localhost:8000/v1/), api_keynone # 占位符可忽略)多轮对话response client.chat.completions.create(modelQwen3-0.6B-sft-lora, # 指定模型,必须与启动vllm时指定的名字一致 messages[ {role: user, content: 抽取出下文中的关键词\n目的分析结节性甲状腺肿(NG)合并甲状腺微小癌(TMC)的超声声像图特点,以提高 TMC 的术前超声检出率.资料与方法回顾性分析经手术病理证实的64例 NG 合并 TMC 的超声声像图表现,并以同病例邻近癌灶且直径≤1cm 的 NG 结节作为对照.结果 TMC 与 NG 结节在形态、边界、回声强度、声晕、微小钙化、囊性变与血流分布等方面差异有统计学意义(P 0.01),回声均匀程度差异无统计学意义(P 0.05).颈部淋巴结肿大超声检出率为89.47%(17/19).结论 TMC 具有与 NG 结节不同的声像图特点,TMC 的灰阶超声特点为低回声、无声晕、有微小钙化、无囊性变等,彩色多普勒超声显示病灶内部血流信号丰富或无血流,周边少或无血流信号.在 NG 检查中重点观察≤1cm 的低回声结节,以及早发现 TMC. } ], extra_body{ chat_template_kwargs: {enable_thinking: False} # 关键参数 })print(response)print(response.choices[0].message.content)3Langchain调用安装langchain库uv pip install langchain-core langchain-openai -i https://pypi.tuna.tsinghua.edu.cn/simple测试代码from langchain_openai import ChatOpenAIfrom langchain_core.messages import HumanMessage, SystemMessagellm ChatOpenAI(modelQwen3-0.6B-sft-lora, base_url[http://localhost:8000/v1/](http://localhost:8000/v1/), api_keynone, temperature0)构建消息支持多角色messages [HumanMessage(content抽取出下文中的关键词\n目的分析结节性甲状腺肿(NG)合并甲状腺微小癌(TMC)的超声声像图特点,以提高 TMC 的术前超声检出率.资料与方法回顾性分析经手术病理证实的64例 NG 合并 TMC 的超声声像图表现,并以同病例邻近癌灶且直径≤1cm 的 NG 结节作为对照.结果 TMC 与 NG 结节在形态、边界、回声强度、声晕、微小钙化、囊性变与血流分布等方面差异有统计学意义(P 0.01),回声均匀程度差异无统计学意义(P 0.05).颈部淋巴结肿大超声检出率为89.47%(17/19).结论 TMC 具有与 NG 结节不同的声像图特点,TMC 的灰阶超声特点为低回声、无声晕、有微小钙化、无囊性变等,彩色多普勒超声显示病灶内部血流信号丰富或无血流,周边少或无血流信号.在 NG 检查中重点观察≤1cm 的低回声结节,以及早发现 TMC. )]调用模型获取响应response llm.invoke(messages)print(response.content)