Qwen3-Embedding-0.6B简单调用:Python代码实现文本向量化

张开发
2026/4/19 9:45:35 15 分钟阅读

分享文章

Qwen3-Embedding-0.6B简单调用:Python代码实现文本向量化
Qwen3-Embedding-0.6B简单调用Python代码实现文本向量化1. Qwen3-Embedding-0.6B简介Qwen3-Embedding-0.6B是Qwen系列最新推出的文本嵌入模型专门用于将文本转换为高维向量表示。这个0.6B参数的版本在保持较高性能的同时对计算资源要求相对友好非常适合中小规模的应用场景。核心特点多语言支持能够处理超过100种语言的文本嵌入包括主流编程语言长文本理解继承了Qwen3系列优秀的上下文理解能力高效推理相比更大的4B/8B版本0.6B版本在保持不错性能的同时运行更快灵活应用生成的向量可用于检索、分类、聚类等多种NLP任务2. 环境准备与模型启动2.1 安装必要依赖在开始前请确保已安装Python 3.8和以下库pip install openai sglang2.2 启动Embedding服务使用sglang启动模型服务sglang serve --model-path /usr/local/bin/Qwen3-Embedding-0.6B --host 0.0.0.0 --port 30000 --is-embedding启动成功后终端会显示类似以下信息Server started at http://0.0.0.0:30000 Embedding model ready3. Python调用实践3.1 基础调用示例下面是一个最简单的调用示例将文本转换为向量import openai # 初始化客户端 client openai.Client( base_urlhttp://localhost:30000/v1, # 服务地址 api_keyEMPTY # 无需API key ) # 单文本嵌入 response client.embeddings.create( modelQwen3-Embedding-0.6B, inputHow are you today, # 输入文本 ) # 查看向量结果 print(response.data[0].embedding) # 输出768维向量3.2 批量处理文本模型支持同时处理多个文本显著提高效率texts [ 深度学习是人工智能的重要分支, 自然语言处理让计算机理解人类语言, Qwen3系列模型表现优异 ] batch_response client.embeddings.create( modelQwen3-Embedding-0.6B, inputtexts, ) for i, embedding in enumerate(batch_response.data): print(f文本{i1}的向量长度{len(embedding.embedding)})3.3 中文文本处理模型对中文有很好的支持chinese_text 阿里巴巴是一家全球领先的科技公司 response client.embeddings.create( modelQwen3-Embedding-0.6B, inputchinese_text, ) print(f中文文本向量维度{len(response.data[0].embedding)})4. 实际应用示例4.1 文本相似度计算利用生成的向量可以计算文本相似度from sklearn.metrics.pairwise import cosine_similarity import numpy as np def get_embedding(text): response client.embeddings.create( modelQwen3-Embedding-0.6B, inputtext, ) return np.array(response.data[0].embedding) text1 机器学习需要大量数据 text2 深度学习依赖大数据训练 text3 今天的天气真好 vec1 get_embedding(text1).reshape(1, -1) vec2 get_embedding(text2).reshape(1, -1) vec3 get_embedding(text3).reshape(1, -1) print(相似文本间的相似度:, cosine_similarity(vec1, vec2)[0][0]) print(不相关文本的相似度:, cosine_similarity(vec1, vec3)[0][0])4.2 简单检索系统构建一个基于向量的简易检索系统# 文档库 documents [ Python是一种流行的编程语言, Java在企业级开发中广泛应用, 深度学习需要GPU加速, 云计算提供弹性计算资源 ] # 生成文档向量库 doc_embeddings [get_embedding(doc) for doc in documents] # 查询函数 def search(query, top_k2): query_vec get_embedding(query) similarities [cosine_similarity(query_vec, doc_vec)[0][0] for doc_vec in doc_embeddings] most_similar sorted(zip(documents, similarities), keylambda x: x[1], reverseTrue)[:top_k] return most_similar # 执行查询 results search(编程语言有哪些) for doc, score in results: print(f相似度{score:.3f}: {doc})5. 常见问题与技巧5.1 性能优化建议批量处理尽可能一次发送多个文本减少API调用次数文本长度过长的文本可以适当分段但模型本身支持约8192 tokens的上下文缓存机制对不变的内容缓存其向量避免重复计算5.2 错误处理try: response client.embeddings.create( modelQwen3-Embedding-0.6B, input, # 空文本会引发错误 ) except Exception as e: print(f发生错误: {str(e)})5.3 向量维度说明Qwen3-Embedding-0.6B生成的向量默认为768维可以直接用于存储到向量数据库如Milvus、FAISS作为机器学习模型的输入特征可视化降维分析6. 总结通过本文介绍我们学习了如何使用Python简单调用Qwen3-Embedding-0.6B模型实现文本向量化。这个轻量级但功能强大的嵌入模型可以广泛应用于语义搜索构建更智能的搜索系统文本分类作为分类器的输入特征聚类分析发现文本数据中的潜在模式推荐系统计算内容相似度相比直接使用大型语言模型专用嵌入模型在效率和效果上通常有更好的平衡。Qwen3-Embedding-0.6B特别适合需要快速部署和中等规模数据处理的应用场景。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

更多文章