使用 vLLM 本地部署 Qwen3-Embedding-8B 模型并接入 Dify 完整指南 - yi

news/2025/11/14 0:03:50/文章来源:https://www.cnblogs.com/yisheng163/p/19219960

使用 vLLM 本地部署 Qwen3-Embedding-8B 模型并接入 Dify 完整指南

环境准备与验证

在开始部署前,需要确保本地环境满足基本要求。以下是环境验证步骤:

1. 显卡驱动和CUDA验证

# 验证NVIDIA驱动状态
nvidia-smi# 实时监控GPU使用情况(新开终端执行)
watch -n 1 nvidia-smi# 验证CUDA安装
nvcc -V

2. Conda环境管理

# 验证Conda版本
conda --version# 列出所有已创建的Conda环境
conda env list
# 或
conda info --envs# 删除已存在的环境(如需要)
conda env remove -n conda_qwen3_embedding_8B# 创建新的Python环境
conda create -n conda_qwen3_embedding_8B python=3.10# 激活环境
conda activate conda_qwen3_embedding_8B

3. PyTorch安装

根据CUDA版本安装对应的PyTorch:
# CUDA 12.1
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121# CUDA 12.2  
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu122# 验证Torch GPU支持
python3 -c "import torch; print('PyTorch版本:', torch.__version__); print('CUDA可用:', torch.cuda.is_available()); print('CUDA版本:', torch.version.cuda); print('GPU设备:', torch.cuda.get_device_name(0) if torch.cuda.is_available() else 'None'); print('GPU数量:', torch.cuda.device_count());"

模型下载与部署

1. 下载Qwen3-Embedding-8B模型

# 使用ModelScope下载模型
modelscope download --model Qwen/Qwen3-Embedding-8B
模型默认下载到:/home/admin1/.cache/modelscope/hub/models/

2. 安装vLLM并启动API服务

Qwen3-Embedding系列模型在文本表征、检索与排序任务中表现卓越,在多语言场景和工业部署中具有显著优势。8B参数版本在MTEB多语言排行榜上排名第一,综合得分达到70.58。
# 启动vLLM OpenAI兼容API服务
python3 -m vllm.entrypoints.openai.api_server \
--model /home/admin1/.cache/modelscope/hub/models/Qwen/Qwen3-Embedding-8B \
--port 8021 \
--tensor-parallel-size 8 \
--gpu-memory-utilization 0.7 \
--swap-space 16 \
--served-model-name Qwen3-Embedding-8B \
--host 0.0.0.0 \
--trust-remote-code \
--max-model-len 8192
参数说明
  • --tensor-parallel-size 8:使用8张GPU进行张量并行推理,提升性能
  • --gpu-memory-utilization 0.7:GPU显存使用率为70%,保留部分显存给系统
  • --max-model-len 8192:最大输入token长度
  • --trust-remote-code:信任远程代码,对于需要运行自定义模型代码时必须

3. 服务测试

# 测试API服务连通性
curl -X POST "http://localhost:8021/v1/chat/completions" \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen3-Embedding-8B",
"messages": [{"role": "user", "content": "介绍下杭州"}]
}'

嵌入(Embedding)功能测试

Qwen3-Embedding模型支持标准的OpenAI嵌入API接口,可以进行文本向量化处理:
# 测试嵌入接口
curl http://localhost:8021/v1/embeddings \
-H "Content-Type: application/json" \
-d '{"input": "你好,世界","model": "Qwen3-Embedding-8B"
}'
对于批量文本处理:
curl http://localhost:8021/v1/embeddings \
-H "Content-Type: application/json" \
-d '{"input": ["今天天气不错", "大模型真的很强大"],"model": "Qwen3-Embedding-8B"
}'
接口返回结果格式如下:
{"data": [{"embedding": [0.012, -0.023, ..., 0.045],"index": 0,"object": "embedding"}],"model": "qwen3-8b-embd","object": "list"
}

接入Dify配置

1. Dify环境准备

确保已安装Dify所需的基础依赖:
sudo apt-get update
sudo apt-get install -y python3 python3-pip python3-venv git build-essential
sudo apt-get install -y postgresql postgresql-contrib redis-server

2. 配置Dify连接vLLM服务

在Dify的管理界面中,进行以下配置:
  1. 1.登录Dify后台,进入设置​ → 模型供应商
  2. 2.安装OpenAI-API-compatible插件
  3. 3.添加自定义模型配置:
    • 模型名称: Qwen3-Embedding-8B
    • 模型类型: 选择Embeddings
    • 基础URL: http://localhost:8021/v1
    • API密钥: 留空(vLLM默认无需认证)

3. 在Dify中创建知识库应用

  1. 1.进入Dify应用界面,点击创建应用
  2. 2.选择知识库应用类型
  3. 3.在Embedding模型设置中,选择刚才配置的Qwen3-Embedding-8B模型
  4. 4.配置知识库参数,如分段策略、检索设置等

性能优化建议

根据实际部署经验,以下是提升服务稳定性和性能的建议:
  1. 1.资源调度:当同时运行多个模型时,合理分配GPU资源,避免资源竞争
  2. 2.批量处理:利用模型的批量处理能力,减少频繁的单条请求
  3. 3.内存管理:适当设置--gpu-memory-utilization参数,保留系统显存
  4. 4.持久化部署:使用nohup或进程管理工具保持服务稳定运行

常见问题排查

1. 端口占用问题

# 查看端口占用情况
lsof -i :8021
解决方案:更改服务端口或停止占用进程

2. GPU内存不足

  • 降低--gpu-memory-utilization参数值
  • 减少--tensor-parallel-size数值
  • 使用--swap-space参数设置交换空间

3. 模型加载失败

  • 检查模型路径是否正确
  • 验证模型文件完整性
  • 确保有足够的磁盘空间和内存

总结

通过本文的步骤,我们成功使用vLLM框架在本地部署了Qwen3-Embedding-8B模型,并配置了标准的OpenAI兼容API接口。随后将其接入Dify平台,为知识库应用提供了强大的文本嵌入能力。 Qwen3-Embedding-8B模型在多项评测中表现优异,特别是在多语言任务和长上下文处理上具有显著优势,使其成为构建企业级AI应用的理想选择。结合vLLM的高效推理能力和Dify的便捷应用搭建,可以快速构建出功能强大的智能问答系统和知识管理平台。 这种部署方式不仅保证了数据隐私和安全性,还提供了灵活的扩展性,可以根据业务需求轻松调整资源配置和功能模块。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/964845.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《VS Code:高效编程的插件与配置》

1、非修改序列算法 这些算法不会改变它们所操作的容器中的元素。 1.1 find 和 find_if find(begin, end, value):查找第一个等于 value 的元素,返回迭代器(未找到返回 end)。 find_if(begin, end, predicate):查找…

11.13 NOTE

P9350 [JOI 2023 Final] 宣传 2 / Advertisement 2 题目传送门 思路 通过题目给出的式子,我们可以推出,对于一个贡献,需要满足的条件是: \[E_i-X_i \ge E_j-X_j 或 E_i+X_i \ge E_j+X_j \]那我们就可以发现,我们可…

2025广州公积金提取服务最新TOP5权威评测:专业合规引领行业标杆

随着广州地区公积金提取需求的持续增长,选择正规、专业的服务机构成为市民关注焦点。本榜单基于合规资质、服务效率、客户口碑、业务覆盖四大核心维度,结合市场调研与用户反馈,客观评测广州地区五家领先公积金提取服…

用Rust 解析验证码:结合 Tesseract OCR 进行文本识别

环境准备 1.1 安装 RustRust 可通过官方的 rustup 进行安装: curl --proto =https --tlsv1.2 -sSf https://sh.rustup.rs | sh 安装完成后,检查 Rust 是否可用: rustc --version 1.2 安装 Tesseract OCR Linux(Ubu…

10.26 NOTE

P4742 [Wind Festival] Running In The Sky 题目传送门 思路 没啥营养,和所驼门王那一题一样,Tarjan 缩点,而后 DAG 上 DP。甚至还更简单一点。唯一需要注意的是要仔细考虑一下状态转移方程,这点很重要,不然会出大…

10.22 NOTE

P9352 [JOI 2023 Final] 训猫 / Cat Exercise 题目传送门 思路 要求猫移动次数的最大值,显然,当只留了一条路时, 猫的移动方向是固定的,也就是说,我们可以决定这只猫走的方向,而这是一个树形结构,显然可以树形 …

题解:CF2106D Flower Boy

题目翻译 题目传送门(vjudge) 给定一个长度为 \(n\) 的数组 \(a\) 和一个长度为 \(m\) 的数组 \(b\)。 要在 \(a\) 中从左到右选取 \(m\) 个数按从左到右的顺序组成一个新的数列,使得选出来的数大于等于 \(b\) 数组…

使用 Maven 内置的版本号(Version)统一控制功能

从Maven 3.5 -beta-1开始 支持内置的 ${revision} (${sha1} and/or ${changelist}的使用方法,请查看[Maven 文档][1])占位符作为 标签的值,用来控制整个项目的版本号。 <project><groupId>xxx</gr…

使用 Maven 内置的版本号(Version)统一控制功能

从Maven 3.5 -beta-1开始 支持内置的 ${revision} (${sha1} and/or ${changelist}的使用方法,请查看[Maven 文档][1])占位符作为 标签的值,用来控制整个项目的版本号。 <project><groupId>xxx</gr…

2025年智能仓储服务商综合实力TOP5榜单:引领物流效率革命,覆盖山东、河北、江浙沪等国内线路,服务中亚五国、俄罗斯、阿富汗等国际路线

随着智能制造与电商经济的蓬勃发展,智能仓储作为供应链核心环节迎来爆发式增长。本榜单基于技术先进性、服务时效性、区域覆盖力三大维度,结合行业权威数据与客户反馈,全面解析2025年五大智能仓储品牌的核心竞争力,…

2025年共享仓库服务最新TOP5推荐:山东、河北、江浙沪等国内区域,中亚、阿富汗、俄罗斯等国际地区,高效仓储解决方案引领者

随着电商行业的蓬勃发展和企业对灵活仓储需求的不断增长,共享仓库凭借其低成本、高灵活性的优势,成为众多企业优化供应链的重要选择。本榜单基于服务覆盖范围、仓储技术实力、物流配送效率、国际业务能力及客户满意度…

在ec2上部署CosyVoice2模型

参考资料https://github.com/QwenLM/Qwen-Agent由于可能使用到音频生成功能,了解下TTS模型的部署过程。测试环境如下 g5.4xlarge EBS: 200GB AMI:ami-0a83c884ad208dfbc ubuntu/images/hvm-ssd-gp3/ubuntu-noble-24.…

2025年配送中心最新综合实力TOP5榜单:引领国内国际物流新标杆

随着商贸流通领域对物流效率要求的不断提升,配送中心作为供应链核心节点的价值愈发凸显。本榜单基于时效性、服务覆盖、技术赋能、国际拓展四大维度,结合行业协会数据与客户反馈,权威评选出2025年最具实力的五大配送…

2025年运输服务企业最新TOP5评测:国内、跨境物流解决方案引领者

在物流行业蓬勃发展的今天,运输服务的质量和效率成为企业和个人选择物流合作伙伴的关键因素。本榜单基于技术实力、服务范围、时效性、客户满意度等多维度进行综合评估,结合行业最新动态和用户反馈,为您解析2025年五…

前后端全栈技术栈深度剖析:从Vue到Node.js的完整学习路径

做了三年前端,发现自己还停留在"调用API"的层面?想突破瓶颈却找不到方向?本文从实际项目出发,梳理了前端进阶的关键技术节点:框架底层原理、全栈开发能力、工程化思维,以及那些面试官真正关心的技术深…

11月113日日记

1.今天体育课学习篮球 2.明天学习java 3.:如何修改 Tomcat 绑定的 IP(支持外网访问)

2025国内供应链服务企业最新TOP5评测:稳定、成本可控、合作灵活

随着国内商贸流通的不断升级和国际物流需求的持续增长,供应链服务企业在提升流通效率、优化资源配置方面发挥着越来越重要的作用。本榜单基于服务覆盖范围、时效性表现、客户满意度、技术创新能力四大维度,结合行业调…

2025物流企业最新TOP5:覆盖范围广、团队更专业,成就时效与诚信

随着区域经济一体化加速,物流行业作为商贸流通的核心枢纽,其服务质量与技术创新能力成为企业竞争的关键。本榜单基于基础设施、线路覆盖、服务时效、客户满意度四大维度,结合《2025中国物流行业发展报告》及行业协会…

疲劳数据分析与设计曲线 25

1 计算方法 1.1 回归分析 在S-N试验中,一旦收集到有限寿命区域的疲劳寿命数据,则推荐采用最小二乘法来生成与数据最佳拟合的一条直线。对于疲劳数据的统计分析,这种生成最佳拟合直线的方法是可行的。因为在应力幅与…