【AIGC】Qwen3-Embedding:Embedding與Rerank模型新標桿

Qwen3-Embedding:Embedding與Rerank模型新標桿

    • 一、引言
    • 二、技術架構與核心創新
      • 1. 模型結構與訓練策略
        • (1)多階段訓練流程
        • (2)高效推理設計
        • (3)多語言與長上下文支持
      • 2. 與經典模型的性能對比
    • 三、使用指南與代碼實踐
      • 1. 安裝與依賴
        • (1)環境準備
        • (2)模型拉取
      • 2. 核心功能代碼示例
        • (1)文本嵌入(Embedding)
        • (2)重排序(Reranking)
      • 3. 本地部署與微調
        • (1)本地部署(GPUStack)
        • (2)微調腳本示例(SWIFT 框架)
    • 四、應用場景與性能優化
      • 1. 典型應用場景
      • 2. 性能優化建議
    • 五、總結


一、引言

隨著大規模語言模型(LLM)的快速發展,文本嵌入(Text Embedding)與重排序(Reranking)技術已成為自然語言處理(NLP)領域的重要基石。阿里通義實驗室最新發布的 Qwen3-Embedding 系列模型,基于 Qwen3 基礎模型架構,通過多階段訓練策略和優化設計,在多語言支持、代碼檢索、跨任務泛化能力等方面實現了顯著突破。本文將從技術架構、性能對比、使用指南及代碼實踐角度,深入解析 Qwen3-Embedding 的優勢與應用場景。


二、技術架構與核心創新

1. 模型結構與訓練策略

在這里插入圖片描述

Qwen3-Embedding 系列包含 Embedding 模型Reranker 模型 兩個子系列,參數規模覆蓋 0.6B / 4B / 8B,支持動態裁剪向量維度(768/1024/4096)。其核心創新體現在以下方面:

(1)多階段訓練流程

在這里插入圖片描述

  • 弱監督預訓練:利用 Qwen3-32B 自動合成 1.5 億 多語言、多任務文本對,通過對比學習(Contrastive Learning)優化語義表示。
  • 監督微調:結合 1200 萬 高質量弱監督對和 700 萬 人工標注對,進一步提升模型在特定任務中的表現。
  • 模型融合:采用球面線性插值(Slerp)融合多個微調模型檢查點,顯著提升魯棒性。
(2)高效推理設計
  • Embedding 模型:直接取最后一層 [EOS] token 的隱藏狀態生成向量,無需額外池化頭,推理路徑更短。
  • Reranker 模型:將相關性判定轉化為二分類問題(“yes”/“no”),僅需計算下一個 token 的概率即可完成打分,接口簡單且延遲低。
(3)多語言與長上下文支持
  • 支持 119 種語言,覆蓋跨語言檢索與匹配需求。
  • 支持 32K 上下文長度,適用于長文檔處理場景(如 RAG 系統中的文檔切片優化)。

2. 與經典模型的性能對比

模型名稱參數規模MTEB 多語言得分MSMARCO 檢索任務(nDCG@10)上下文長度
Qwen3-Embedding-8B8B70.5857.6532K
BGE-M3(開源)1.5B63.2240.888K
Sentence-BERT(SBERT)355M59.5638.20512
GritLM-Embedding1.2B61.4745.608K
Qwen3-Reranker-8B8B-80.68(代碼檢索)32K

對比分析

  • 性能優勢:Qwen3-Embedding-8B 在 MTEB 多語言排行榜中排名第一(70.58),顯著優于 BGE-M3(63.22)和 Sentence-BERT(59.56)。其 Reranker 模型在代碼檢索任務中達到 80.68 的 nDCG@10 分數,遠超 GritLM 和 SBERT。
  • 資源效率:0.6B 版本在輕量級場景中表現優異,甚至超越部分 1.5B 以上模型(如 BGE-M3)。
  • 長文檔處理:32K 上下文長度支持長文檔直接輸入,無需切片,減少信息丟失。

三、使用指南與代碼實踐

1. 安裝與依賴

(1)環境準備
# 安裝 Hugging Face Transformers 庫
pip install transformers# 安裝模型依賴庫
pip install torch sentencepiece
(2)模型拉取
from transformers import AutoTokenizer, AutoModel# 加載 Qwen3-Embedding-0.6B 模型
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3-Embedding-0.6B")
model = AutoModel.from_pretrained("Qwen/Qwen3-Embedding-0.6B")

2. 核心功能代碼示例

(1)文本嵌入(Embedding)
import torch
import torch.nn.functional as Fdef get_embedding(texts):inputs = tokenizer(texts, padding=True, truncation=True, return_tensors="pt").to("cuda")with torch.no_grad():outputs = model(**inputs)# 取 [EOS] token 的隱藏狀態作為嵌入向量embeddings = outputs.last_hidden_state[:, -1, :]# 歸一化處理embeddings = F.normalize(embeddings, p=2, dim=1)return embeddings.cpu().numpy()# 示例
texts = ["蘋果手機真好用", "我有一部 iPhone", "今天天氣不錯"]
embeddings = get_embedding(texts)
print("向量相似度:", embeddings[:2] @ embeddings[2:].T)
(2)重排序(Reranking)
from transformers import AutoTokenizer, AutoModelForSequenceClassification# 加載 Qwen3-Reranker-4B 模型
reranker_tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3-Reranker-4B")
reranker_model = AutoModelForSequenceClassification.from_pretrained("Qwen/Qwen3-Reranker-4B")def rerank(query, documents):inputs = reranker_tokenizer(query, documents, padding=True, truncation=True, return_tensors="pt").to("cuda")with torch.no_grad():scores = reranker_model(**inputs).logits.softmax(dim=1)[:, 1]  # 取 "yes" 概率return scores.cpu().numpy()# 示例
query = "什么是量子計算?"
documents = ["《量子計算的基本原理》","《計算機發展簡史》","《量子力學入門知識》"
]
scores = rerank(query, documents)
print("相關性得分:", scores)

3. 本地部署與微調

(1)本地部署(GPUStack)
# 使用 Docker 部署 Qwen3-Embedding
docker run -d --gpus all -p 8080:8080 -v /path/to/model:/models qwen/gpustack:latest
(2)微調腳本示例(SWIFT 框架)
INFONCE_MASK_FAKE_NEGATIVE=true \
CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 \
NPROC_PER_NODE=8 \
swift sft \--model Qwen/Qwen3-Embedding-8B \--task_type embedding \--model_type qwen3_emb \--train_type full \--dataset sentence-transformers/stsb:positive \--split_dataset_ratio 0.05 \--eval_strategy steps \--output_dir output \--eval_steps 20 \--num_train_epochs 5 \--loss_type infonce \--label_names labels

四、應用場景與性能優化

1. 典型應用場景

  • 檢索增強生成(RAG):結合 Qwen3-Embedding 與 Qwen3-Reranker,優化搜索結果的相關性。
  • 跨語言匹配:支持多語言文檔與查詢的語義匹配,如雙語對齊。
  • 個性化推薦:通過用戶行為數據優化排序模型,提升用戶體驗。

2. 性能優化建議

  • 模型選擇:輕量級場景選用 Qwen3-Embedding-0.6B,精度要求高時使用 8B 版本。
  • 上下文切片:長文檔建議切分為 512 token 的塊,平衡精度與效率。
  • 量化部署:使用 Q8_0 量化版本(如 Qwen3-Embedding-8B-Q8_0),降低 GPU 顯存占用。

五、總結

Qwen3-Embedding 系列模型通過多階段訓練、高效推理設計和多語言支持,在文本嵌入與重排序任務中展現了卓越的性能。無論是學術研究還是工業應用,其開源特性(Apache 2.0 協議)和靈活的部署方案(本地/云端)都為開發者提供了強大的工具。未來,隨著模型迭代和生態完善,Qwen3-Embedding 將在 RAG、智能體、多模態等領域發揮更大價值。


參考資料

  • Qwen3-Embedding 論文:2506.05176] Qwen3 Embedding: Advancing Text Embedding and Reranking Through Foundation Models
  • GitHub 項目:QwenLM/Qwen3-Embedding
  • Hugging Face 模型庫:huggingface.co/Qwen/Qwen3-Embedding

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/909157.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/909157.shtml
英文地址,請注明出處:http://en.pswp.cn/news/909157.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

算法競賽階段二-數據結構(32)數據結構簡單介紹

數據結構的基本概念 數據結構是計算機存儲、組織數據的方式,旨在高效地訪問和修改數據。它是算法設計的基礎,直接影響程序的性能。數據結構可分為線性結構和非線性結構兩大類。 線性數據結構 線性結構中,數據元素按順序排列,每…

Windows桌面圖標修復

新建文本文件,粘入以下代碼,保存為.bat文件,管理員運行這個文件 duecho off taskkill /f /im explorer.exe CD /d %userprofile%\AppData\Local DEL IconCache.db /a start explorer.exe echo 執行完成上面代碼作用是刪除桌面圖標緩存庫&…

13.react與next.js的特性和原理

🟡 一句話總結 React 專注于構建組件,而 Next.js 是基于 React 的全棧框架,提供了頁面路由、服務端渲染和全棧能力,讓你能快速開發現代 Web 應用。 React focuses on building UI components, while Next.js is a full-stack fra…

全棧監控系統架構

全棧監控系統架構 可觀測性從數據層面可分為三類: 指標度量(Metrics):記錄系統的總體運行狀態。事件日志(Logs):記錄系統運行期間發生的離散事件。鏈路追蹤(Tracing):記錄一個請求接入到結束的處理過程,主要用于排查…

云服務運行安全創新標桿:阿里云飛天洛神云網絡子系統“齊天”再次斬獲獎項

引言 為認真落實工信部《工業和信息化部辦公廳關于印發信息通信網絡運行安全管理年實施方案的通知》,2025年5月30日中國信息通信研究院于浙江杭州舉辦了“云服務運行安全高質量發展交流會”,推動正向引導,鞏固云服務安全專項治理成果。會上&a…

刀客doc:WPP走下神壇

一、至暗時刻? 6月11日,快消巨頭瑪氏公司宣布其價值17 億美元,在全球70個市場的廣告業務交給陽獅集團,這其中包括M&Ms、士力架、寶路等知名品牌。 此前,瑪氏公司一直是WPP的大客戶。早在今年3月,WPP就…

進行性核上性麻痹飲食攻略:營養安全雙護航

進行性核上性麻痹是一種罕見的神經系統退行性疾病,主要影響患者的運動、平衡和吞咽功能。除了醫學干預,科學的飲食管理也能在一定程度上減輕癥狀,提高生活質量。 由于患者常出現吞咽困難,食物質地的選擇尤為重要。應避免干硬、大塊…

阿里云可觀測 2025 年 5 月產品動態

本月可觀測熱文回顧 文章一覽: StoreView SQL,讓數據分析不受地域限制 不懂 PromQL?AI 智能體幫你玩轉大規模指標數據分析 DeepWiki LoongCollector:AI 重塑開源代碼理解 從 o11y 2.0 說起,大數據 Pipeline 的「…

React 基礎狀態管理方案

1. useState useState 是 React 提供的最基本的 Hook,用于在函數組件中添加狀態管理。它返回一個狀態變量和一個更新狀態的函數。 1.1. 使用場景 適合管理簡單的狀態。 適合管理組件內部的局部狀態。 1.2. 示例代碼 import React, { useState } from react;function Cou…

VScode中如何創建項目分支

在 VS Code 中為前端項目創建自己的分支是一個常見的開發實踐,以下是詳細步驟: 前提條件 已安裝 Git已安裝 VS Code已有前端項目或克隆了遠程倉庫 創建分支步驟 1. 打開項目 在 VS Code 中打開你的前端項目文件夾。 2. 初始化 Git 倉庫&#xff08…

Flutter 導航與路由管理:Navigator 的深入解析與實踐

在移動應用開發中,頁面導航是用戶體驗的核心組成部分。Flutter 提供了強大而靈活的導航系統,主要通過 Navigator 組件來實現。本文將全面介紹 Flutter 中 Navigator 的使用方法,涵蓋基礎導航操作、進階技巧以及最佳實踐。 一、Flutter 導航系…

預測性去匿名化攻擊(PDAA):重塑數據安全攻防邊界

一、數據合規時代的“脫敏”悖論:價值釋放與風險并存 在數據驅動的商業模式與日趨嚴格的個人信息保護法規(如《個人信息保護法》《數據安全法》)雙重推動下,企業普遍將“數據脫敏”作為實現數據合規與價值釋放的核心手段。對手機…

[python] 使用python設計濾波器

使用python設計濾波器 文章目錄 使用python設計濾波器完整濾波器設計代碼(未經完整驗證,博主還在不斷完善中)關鍵原理與代碼對應說明1. 濾波器類型選擇2. 階數估算原理3. 性能分析技術4. 設計參數調整指南 習慣了python后,matlab逐…

mac電腦.sh文件,用來清除git當前分支

#!/bin/bashecho "正在檢查Git倉庫..." if ! git rev-parse --is-inside-work-tree >/dev/null 2>&1; thenecho "錯誤:當前目錄不是Git倉庫!"exit 1 fiecho "警告:這將丟棄所有未提交的更改和本地提交&am…

Bash (Bourne Again SHell)

Unix/Linux 系統中最常用的命令行解釋器之一,它是原始 Bourne shell (sh) 的增強版本。以下是 Bash 的詳細解釋: 1. Bash 基礎 1.1 什么是 Bash 一個命令行解釋器,用于執行用戶輸入的命令支持腳本編程,可以編寫復雜的自動化任務…

uni-app學習筆記三十五--擴展組件的安裝和使用

由于內置組件不能滿足日常開發需要,uniapp官方也提供了眾多的擴展組件供我們使用。由于不是內置組件,需要安裝才能使用。 一、安裝擴展插件 安裝方法: 1.訪問uniapp官方文檔組件部分:組件使用的入門教程 | uni-app官網 點擊左側…

AIStor 的模型上下文協議 (MCP) 服務器: 工作原理

在本系列的前幾篇博文中,我們討論了MinIO AIStor 模型上下文協議 (MCP) 服務器的用戶級和管理員級功能。在第一篇博文中,我們學習了如何查看存儲桶的內容、分析對象并標記它們以便將來處理。在第二篇博文中,我們還學習了如何使用管理員命令以…

Excel 怎么讓透視表以正常Excel表格形式顯示

目錄 1、創建數據透視表 2、設計 》報表布局 》以表格形式顯示 3、設計 》分類匯總 》不顯示分類匯總 1、創建數據透視表 2、設計 》報表布局 》以表格形式顯示 3、設計 》分類匯總 》不顯示分類匯總

匯編語言深度指南:從基礎到字符串操作

基礎知識 CPU簡介 CPU是計算機的核心,負責: 執行機器指令:解碼并執行二進制指令 mov eax, 5 ; 將值5移動到EAX寄存器暫存少量數據:通過內部寄存器快速存取訪問存儲器:讀寫內存數據 mov [0x1000], eax ; 將EAX值…

樹莓派5-ubuntu 24.04 安裝 ros環境

在開始安裝ros環境前,需要確保已經準備好了以下操作 1.樹莓派5開發板,已經燒錄了 ubuntu 24.04,并做好了一些基礎配置,如:遠程訪問配置,語言配置,網絡配置等 2.新手建議在上面安裝一個寶塔面板…