自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Qwen3震撼發(fā)布,問鼎開源寶座,教你快速上手

發(fā)布于 2025-4-30 06:55
瀏覽
0收藏

通義千問3(Qwen3),通義千問大語言模型家族的最新成員。作為阿里巴巴的旗艦模型,通義千問3-235B-A22B在編碼、數(shù)學、通用能力等基準評估中,與DeepSeek-R1、o1、o3-mini、Grok-3、Gemini-2.5-Pro等其他頂級模型相比,取得了極具競爭力的成績。此外,小型混合專家(MoE)模型通義千問3-30B-A3B,其激活參數(shù)僅為QwQ-32B的十分之一,卻超越了后者的表現(xiàn);甚至像通義千問3-4B這樣的微型模型,也能與通義千問2.5-72B-Instruct相媲美。

通義千問 3 成績斐然,其諸多特性為人工智能領(lǐng)域注入了新活力。下面,本文帶你深入了解這款模型的具體情況。

1.簡介

通義千問(Qwen)是阿里巴巴集團通義千問團隊研發(fā)的大語言模型和大多模態(tài)模型系列。語言模型和多模態(tài)模型均在大規(guī)模多語言和多模態(tài)數(shù)據(jù)上進行預訓練,并在高質(zhì)量數(shù)據(jù)上進行微調(diào)以匹配人類偏好。通義千問具備自然語言理解、文本生成、視覺理解、音頻理解、工具使用、角色扮演、充當人工智能智能體等能力。

最新版本的通義千問3具有以下特點:

  • 密集型和混合專家模型:提供0.6B、1.7B、4B、8B、14B、32B,以及30B-A3B、235B-A22B等不同規(guī)模的模型。
  • 思維模式無縫切換:單個模型可在思維模式(用于復雜邏輯推理、數(shù)學計算和編碼任務)和非思維模式(用于高效通用聊天)之間無縫切換,確保在各種場景下都能實現(xiàn)最佳性能。
  • 推理能力顯著提升:推理能力大幅增強,在數(shù)學運算、代碼生成和常識邏輯推理方面,超越了之前的QwQ模型(在思維模式下)和通義千問2.5指令模型(在非思維模式下)。
  • 高度契合人類偏好:在創(chuàng)意寫作、角色扮演、多輪對話和指令遵循方面表現(xiàn)卓越,提供更自然、引人入勝和沉浸式的對話體驗。
  • 強大的智能體能力:在思維和非思維模式下都能精準集成外部工具,在復雜的基于智能體的任務中,開源模型里性能領(lǐng)先。
  • 多語言支持廣泛:支持100多種語言和方言,具備強大的多語言指令遵循和翻譯能力。

Qwen3震撼發(fā)布,問鼎開源寶座,教你快速上手-AI.x社區(qū)

Qwen3震撼發(fā)布,問鼎開源寶座,教你快速上手-AI.x社區(qū)

阿里巴巴開源了兩款混合專家模型:通義千問3-235B-A22B,這款大型模型總參數(shù)達2350億,激活參數(shù)為220億;以及通義千問3-30B-A3B,小型混合專家模型,總參數(shù)300億,激活參數(shù)30億。此外,還開源了六款密集型模型,包括通義千問3-32B、通義千問3-14B、通義千問3-8B、通義千問3-4B、通義千問3-1.7B和通義千問3-0.6B,均遵循Apache 2.0許可協(xié)議。

Qwen3震撼發(fā)布,問鼎開源寶座,教你快速上手-AI.x社區(qū)

像通義千問3-30B-A3B這樣的微調(diào)模型,以及其預訓練版本(如通義千問3-30B-A3B-Base),現(xiàn)已在Hugging Face、魔搭社區(qū)(ModelScope)和Kaggle等平臺上線。部署時,建議使用SGLang和vLLM等框架。對于本地使用,強烈推薦Ollama、LMStudio、MLX、llama.cpp和KTransformers等工具。這些選擇能確保用戶在研究、開發(fā)或生產(chǎn)環(huán)境中,輕松將通義千問3集成到工作流程中。

通義千問3的發(fā)布和開源,將極大推動大型基礎模型的研發(fā)進程。通義千問3旨在賦能全球研究人員、開發(fā)者和組織機構(gòu),助力他們利用這些前沿模型構(gòu)建創(chuàng)新解決方案。

2.主要特性

2.1 混合思維模式

通義千問3系列模型引入了一種混合式問題解決方法,支持兩種模式:

  • 思維模式:在這種模式下,模型會逐步推理,經(jīng)過深思熟慮后給出最終答案。這種模式非常適合處理需要深入思考的復雜問題。
  • 非思維模式:模型會快速給出近乎即時的響應,適用于對速度要求高于深度的簡單問題。

這種靈活性使用戶能夠根據(jù)手頭任務,控制模型的“思考”程度。比如,對于較難的問題,可以讓模型進行深入推理;而對于簡單問題,則能快速直接作答。兩種模式的融合,顯著增強了模型實施穩(wěn)定且高效的思維預算控制能力。如上文所示,通義千問3的性能提升具有可擴展性且平穩(wěn),與分配的計算推理預算直接相關(guān)。這種設計讓用戶能更輕松地為特定任務配置預算,在成本效益和推理質(zhì)量之間實現(xiàn)更優(yōu)平衡。

Qwen3震撼發(fā)布,問鼎開源寶座,教你快速上手-AI.x社區(qū)

2.2 多語言支持

通義千問3系列模型支持119種語言和方言。這種廣泛的多語言能力為國際應用開辟了新的可能性,讓全球用戶都能受益于這些模型的強大功能。

Qwen3震撼發(fā)布,問鼎開源寶座,教你快速上手-AI.x社區(qū)

2.3 增強的智能體能力

阿里巴巴針對編碼和智能體能力對通義千問3系列模型進行了優(yōu)化,同時也加強了對模型上下文協(xié)議(MCP)的支持。以下示例展示了通義千問3如何思考以及與環(huán)境交互。

3.預訓練

在預訓練方面,通義千問3的數(shù)據(jù)集相比通義千問2.5有了顯著擴展。通義千問2.5在18萬億個詞元上進行預訓練,而通義千問3使用了近兩倍的數(shù)據(jù)量,約36萬億個詞元,涵蓋119種語言和方言。為構(gòu)建這個大型數(shù)據(jù)集,數(shù)據(jù)來源不僅包括網(wǎng)頁,還包括類似PDF的文檔。阿里巴巴利用通義千問2.5-VL從這些文檔中提取文本,并借助通義千問2.5提高提取內(nèi)容的質(zhì)量。為增加數(shù)學和代碼數(shù)據(jù)量,使用通義千問2.5-Math和通義千問2.5-Coder生成合成數(shù)據(jù),包括教科書內(nèi)容、問答對和代碼片段。

預訓練過程分為三個階段。在第一階段(S1),模型在超過30萬億個詞元上進行預訓練,上下文長度為4000詞元。這一階段賦予模型基本的語言技能和通用知識。在第二階段(S2),通過增加知識密集型數(shù)據(jù)(如STEM領(lǐng)域、編碼和推理任務相關(guān)數(shù)據(jù))的比例來優(yōu)化數(shù)據(jù)集,然后模型在額外的5萬億個詞元上進行預訓練。在最后階段,使用高質(zhì)量的長上下文數(shù)據(jù)將上下文長度擴展到32000詞元,確保模型能有效處理更長的輸入。

Qwen3震撼發(fā)布,問鼎開源寶座,教你快速上手-AI.x社區(qū)

由于模型架構(gòu)的進步、訓練數(shù)據(jù)量的增加以及更有效的訓練方法,通義千問3(Qwen3)的密集型基礎模型的整體性能與參數(shù)更多的通義千問2.5基礎模型相當。例如,通義千問3-1.7B/4B/8B/14B/32B基礎模型的表現(xiàn)分別與通義千問2.5-3B/7B/14B/32B/72B基礎模型不相上下。值得注意的是,在STEM(科學、技術(shù)、工程和數(shù)學)領(lǐng)域、編碼和推理等方面,通義千問3的密集型基礎模型甚至超越了參數(shù)更多的通義千問2.5模型。對于通義千問3的混合專家(MoE)基礎模型而言,它們僅使用了通義千問2.5密集型基礎模型10%的激活參數(shù),卻實現(xiàn)了相近的性能,這大大節(jié)省了訓練和推理成本。

4.微調(diào)訓練

Qwen3震撼發(fā)布,問鼎開源寶座,教你快速上手-AI.x社區(qū)

為了開發(fā)出既能進行逐步推理又能快速響應的混合模型,采用了四階段訓練流程。該流程包括:(1)長思維鏈(CoT)冷啟動;(2)基于推理的強化學習(RL);(3)思維模式融合;(4)通用強化學習。

在第一階段,使用多樣化的長思維鏈數(shù)據(jù)對模型進行微調(diào),這些數(shù)據(jù)涵蓋數(shù)學、編碼、邏輯推理和STEM問題等各種任務和領(lǐng)域,目的是賦予模型基本的推理能力。第二階段聚焦于為強化學習擴展計算資源,利用基于規(guī)則的獎勵機制來提升模型的探索和利用能力。

在第三階段,通過在長思維鏈數(shù)據(jù)和常用的指令微調(diào)數(shù)據(jù)的組合上進行微調(diào),將非思維能力集成到思維模型中。這些數(shù)據(jù)由第二階段增強后的思維模型生成,確保了推理能力和快速響應能力的無縫融合。最后,在第四階段,針對20多個通用領(lǐng)域的任務應用強化學習,進一步強化模型的通用能力并糾正不良行為。這些任務包括指令遵循、格式遵循和智能體能力等。

5.快速上手

在Hugging Face Hub的通義千問3集合以及魔搭社區(qū)(ModelScope)的通義千問3集合中,都能找到通義千問3系列模型。

5.1 Transformers

若要快速上手通義千問3,可以先嘗試使用Transformers進行推理。確保已安裝??transformers>=4.51.0??,建議使用Python 3.10及以上版本,PyTorch 2.6及以上版本。

以下是運行通義千問3-8B的簡單代碼示例:

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "Qwen/Qwen3-8B"
# 加載分詞器和模型
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
# 準備模型輸入
prompt = "Give me a short introduction to large language models."
messages = [
    {"role": "user", "content": prompt},
]
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
    enable_thinking=True, # 在思維模式和非思維模式間切換。默認值為True。
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
# 進行文本生成
generated_ids = model.generate(
    **model_inputs,
    max_new_tokens=32768
)
output_ids = generated_ids[0][len(model_inputs.input_ids[0]):].tolist()  # 解析思維內(nèi)容
try:
    # rindex查找151668(</think>)
    index = len(output_ids) - output_ids[::-1].index(151668)
except ValueError:
    index = 0
thinking_content = tokenizer.decode(output_ids[:index], skip_special_tokens=True).strip("\n")
content = tokenizer.decode(output_ids[index:], skip_special_tokens=True).strip("\n")
print("thinking content:", thinking_content)
print("content:", content)

通義千問3和QwQ系列模型類似,在回復前會進行思考。這意味著模型會運用推理能力來提高生成回復的質(zhì)量。模型會先生成包裹在??<think>...</think>??標簽中的思考內(nèi)容,然后給出最終回復。

  • 硬切換:若要嚴格禁用模型的思考行為,使其功能與之前的通義千問2.5指令模型一致,可以在格式化文本時將??enable_thinking??設置為??False??。

text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
    enable_thinking=False  # 設置enable_thinking=False可禁用思維模式
)

在某些對效率要求極高、禁用思考至關(guān)重要的場景中,這種設置尤為有用。

  • 軟切換:通義千問3還能理解用戶對其思考行為的指令,特別是軟切換指令??/think??和??/no_think????梢詫⑺鼈兲砑拥接脩籼崾净蛳到y(tǒng)消息中,在不同輪次的對話中切換模型的思維模式。在多輪對話中,模型會遵循最新的指令。

注意:在思維模式下,使用溫度(Temperature)=0.6、核采樣概率(TopP)=0.95、采樣數(shù)量(TopK)=20、最小概率(MinP)=0(這是??generation_config.json??中的默認設置)。不要使用貪婪解碼,因為這可能會導致性能下降和內(nèi)容重復。更多詳細指導,請參考最佳實踐部分。

在非思維模式下,建議使用溫度(Temperature)=0.7、核采樣概率(TopP)=0.8、采樣數(shù)量(TopK)=20、最小概率(MinP)=0。

5.2 魔搭社區(qū)(ModelScope)

若要解決下載相關(guān)的問題,建議嘗試使用魔搭社區(qū)(ModelScope)。在開始前,需要使用??pip???安裝??modelscope??。

魔搭社區(qū)(ModelScope)采用了與Transformers類似(但不完全相同)的編程接口。在基本用法中,只需將上述代碼的第一行修改如下:

from modelscope import AutoModelForCausalLM, AutoTokenizer

5.3 vLLM

若要部署通義千問3,建議使用vLLM。vLLM是一個快速且易于使用的大語言模型推理和服務框架。下面展示如何使用vLLM構(gòu)建一個與OpenAI API兼容的API服務。

首先,確保已安裝??vllm>=0.8.5??。

以通義千問3-8B為例,運行以下代碼來構(gòu)建vLLM服務:

vllm serve Qwen/Qwen3-8B --enable-reasoning --reasoning-parser deepseek_r1

然后,可以使用創(chuàng)建聊天接口與通義千問進行交互:

curl http://localhost:8000/v1/chat/completions -H "Content-Type: application/json" -d '{
  "model": "Qwen/Qwen3-8B",
  "messages": [
    {"role": "user", "content": "Give me a short introduction to large language models."}
  ],
  "temperature": 0.6,
  "top_p": 0.95,
  "top_k": 20,
  "max_tokens": 32768
}'

from openai import OpenAI
# 設置OpenAI的API密鑰和API基礎地址以使用vLLM的API服務器
openai_api_key = "EMPTY"
openai_api_base = "http://localhost:8000/v1"

client = OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)

chat_response = client.chat.completions.create(
    model="Qwen/Qwen3-8B",
    messages=[
        {"role": "user", "content": "Give me a short introduction to large language models."},
    ],
    temperature=0.6,
    top_p=0.95,
    top_k=20,
    max_tokens=32768,
)
print("Chat response:", chat_response)

軟切換始終可用,在vLLM中,也可以通過以下API調(diào)用配置實現(xiàn)硬切換。若要禁用思考,可以使用:

curl http://localhost:8000/v1/chat/completions -H "Content-Type: application/json" -d '{
  "model": "Qwen/Qwen3-8B",
  "messages": [
    {"role": "user", "content": "Give me a short introduction to large language models."}
  ],
  "temperature": 0.7,
  "top_p": 0.8,
  "top_k": 20,
  "max_tokens": 8192,
  "presence_penalty": 1.5,
  "chat_template_kwargs": {"enable_thinking": false}
}'

from openai import OpenAI
# 設置OpenAI的API密鑰和API基礎地址以使用vLLM的API服務器
openai_api_key = "EMPTY"
openai_api_base = "http://localhost:8000/v1"

client = OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)

chat_response = client.chat.completions.create(
    model="Qwen/Qwen3-8B",
    messages=[
        {"role": "user", "content": "Give me a short introduction to large language models."},
    ],
    temperature=0.7,
    top_p=0.8,
    top_k=20,
    presence_penalty=1.5,
    extra_body={"chat_template_kwargs": {"enable_thinking": False}},
)
print("Chat response:", chat_response)

6.使用通義千問3進行開發(fā)

下面是在不同框架中使用通義千問3的簡單指南。首先,給出在Hugging Face的Transformers中使用通義千問3-30B-A3B的標準示例:

from modelscope import AutoModelForCausalLM, AutoTokenizer

model_name = "Qwen/Qwen3-30B-A3B"
# 加載分詞器和模型
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto"
)
# 準備模型輸入
prompt = "Give me a short introduction to large language model."
messages = [
    {"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
    enable_thinking=True# 在思維模式和非思維模式間切換。默認值為True。
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
# 進行文本生成
generated_ids = model.generate(
    **model_inputs,
    max_new_tokens=32768
)
output_ids = generated_ids[0][len(model_inputs.input_ids[0]):].tolist()  # 解析思維內(nèi)容
try:
    # rindex查找151668(</think>)
    index = len(output_ids) - output_ids[::-1].index(151668)
except ValueError:
    index = 0
thinking_content = tokenizer.decode(output_ids[:index], skip_special_tokens=True).strip("\n")
content = tokenizer.decode(output_ids[index:], skip_special_tokens=True).strip("\n")
print("thinking content:", thinking_content)
print("content:", content)

若要禁用思考,只需對??enable_thinking??參數(shù)進行如下修改:

text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
    enable_thinking=False  # enable_thinking的默認值為True
)

在部署方面,可以使用??sglang>=0.4.6.post1???或??vllm>=0.8.4??來創(chuàng)建與OpenAI兼容的API端點:

  • SGLang

python -m sglang.launch_server --model-path Qwen/Qwen3-30B-A3B --reasoning-parser qwen3
  • vLLM

vllm serve Qwen/Qwen3-30B-A3B --enable-reasoning --reasoning-parser deepseek_r1

如果是進行本地開發(fā),可以使用ollama,通過運行??ollama run qwen3:30b-a3b??這一簡單命令來體驗模型,也可以使用LMStudio、llama.cpp和ktransformers進行本地構(gòu)建。

7.高級用法

當??enable_thinking=True???時,通義千問3提供了一種軟切換機制,允許用戶動態(tài)控制模型的行為。具體來說,可以在用戶提示或系統(tǒng)消息中添加??/think???和??/no_think??,在不同輪次對話中切換模型的思維模式。在多輪對話中,模型會遵循最新的指令。

以下是一個多輪對話的示例:

from transformers import AutoModelForCausalLM, AutoTokenizer

class QwenChatbot:
    def __init__(self, model_name="Qwen/Qwen3-30B-A3B"):
        self.tokenizer = AutoTokenizer.from_pretrained(model_name)
        self.model = AutoModelForCausalLM.from_pretrained(model_name)
        self.history = []

    def generate_response(self, user_input):
        messages = self.history + [{"role": "user", "content": user_input}]
        text = self.tokenizer.apply_chat_template(
            messages,
            tokenize=False,
            add_generation_prompt=True
        )
        inputs = self.tokenizer(text, return_tensors="pt")
        response_ids = self.model.generate(**inputs, max_new_tokens=32768)[0][len(inputs.input_ids[0]):].tolist()
        response = self.tokenizer.decode(response_ids, skip_special_tokens=True)
        # 更新對話歷史
        self.history.append({"role": "user", "content": user_input})
        self.history.append({"role": "assistant", "content": response})
        return response

# 示例用法
if __name__ == "__main__":
    chatbot = QwenChatbot()
    # 第一次輸入(未包含/think或/no_think標簽,默認啟用思維模式)
    user_input_1 = "How many r's in strawberries?"
    print(f"User: {user_input_1}")
    response_1 = chatbot.generate_response(user_input_1)
    print(f"Bot: {response_1}")
    print("----------------------")
    # 第二次輸入,包含/no_think
    user_input_2 = "Then, how many r's in blueberries? /no_think"
    print(f"User: {user_input_2}")
    response_2 = chatbot.generate_response(user_input_2)
    print(f"Bot: {response_2}") 
    print("----------------------")
    # 第三次輸入,包含/think
    user_input_3 = "Really? /think"
    print(f"User: {user_input_3}")
    response_3 = chatbot.generate_response(user_input_3)
    print(f"Bot: {response_3}")

8.智能體應用

通義千問3在工具調(diào)用能力方面表現(xiàn)卓越。建議使用通義千問智能體(Qwen-Agent),以便充分發(fā)揮通義千問3的智能體能力。通義千問智能體內(nèi)部封裝了工具調(diào)用模板和工具調(diào)用解析器,極大地降低了編碼復雜度。

在定義可用工具時,你可以使用模型上下文協(xié)議(MCP)配置文件,也可以使用通義千問智能體的集成工具,或者自行集成其他工具。

from qwen_agent.agents import Assistant

# 定義大語言模型
llm_cfg = {
   'model': 'Qwen3-30B-A3B',
    # 使用阿里巴巴模型平臺提供的端點:
    #'model_type': 'qwen_dashscope',
    # 'api_key': os.getenv('DASHSCOPE_API_KEY'),
    # 使用與OpenAI API兼容的自定義端點:
   'model_server': 'http://localhost:8000/v1',  # api_base
    'api_key': 'EMPTY',
    # 其他參數(shù):
    # 'generate_cfg': {
    #         # 添加:當響應內(nèi)容為`<think>這是思考內(nèi)容</think>這是答案`時;
    #         # 不添加:當響應已按推理內(nèi)容和答案分開時。
    #         'thought_in_content': True,
    #     },
}
# 定義工具
tools = [
    {'mcpServers': {  # 可以指定MCP配置文件
            'time': {
                'command': 'uvx',
                'args': ['mcp-server-time', '--local-timeznotallow=Asia/Shanghai']
            },
            "fetch": {
                "command": "uvx",
                "args": ["mcp-server-fetch"]
            }
        }
    },
    'code_interpreter',  # 內(nèi)置工具
]
# 定義智能體
bot = Assistant(llm=llm_cfg, function_list=tools)
# 流式生成
messages = [{'role': 'user', 'content': 'https://qwenlm.github.io/blog/ Introduce the latest developments of Qwen'}]
for responses in bot.run(messages=messages):
    pass
print(responses)

9.未來展望

通義千問3是邁向通用人工智能(AGI)和超級人工智能(ASI)征程中的一個重要里程碑。通過擴大預訓練和強化學習(RL)的規(guī)模,通義千問3實現(xiàn)了更高水平的智能。它無縫集成了思維模式和非思維模式,使用戶能夠靈活控制思維預算。此外,通義千問3擴展了對多種語言的支持,提高了全球可訪問性。

Qwen3震撼發(fā)布,問鼎開源寶座,教你快速上手-AI.x社區(qū)

在人工智能技術(shù)持續(xù)演進的當下,阿里巴巴著眼未來,致力于多維度提升模型性能。其策略包括優(yōu)化模型架構(gòu)和訓練方法,實現(xiàn)拓展數(shù)據(jù)規(guī)模、增加模型參數(shù)、延長上下文長度、拓寬模態(tài)、推進強化學習等目標。

行業(yè)正從以訓練模型為核心,邁向以訓練智能體為核心的時代。通義千問 3 的下一次迭代有望實現(xiàn)技術(shù)突破,為人們的工作和生活帶來積極改變,助力各領(lǐng)域智能化升級。

本文轉(zhuǎn)載自??AI科技論談????,作者:AI科技論談

收藏
回復
舉報
回復
相關(guān)推薦