請求體 model string(必選) 模型名稱。 支援的模型:Qwen 大語言模型(商業版、開源版)、Qwen-VL、Qwen-Coder、數學模型、DeepSeek、Kimi、GLM、MiniMax。 具體模型名稱和計費,請參見 選擇模型 。messages array(必選) 傳遞給大模型的上下文,按對話順序排列。
通過HTTP調用時,請將messages 放入 input 對象中。
System Messageobject(可選) 系統訊息,用於設定大模型的角色、語氣、任務目標或約束條件等。一般放在messages數組的第一位。
QwQ模型不建議設定 System Message,QVQ 模型設定 System Message不會生效。
content string(必選) 訊息內容。 role string(必選) 系統訊息的角色,固定為 system 。
User Messageobject(必選) 使用者訊息,用於向模型傳遞問題、指令或上下文等。
content string 或 array(必選) 訊息內容。若輸入只有文本,則為 string 類型;若輸入包含映像等多模態資料,或啟用顯式緩衝,則為 array 類型。
text string(必選) 輸入的文本。 image string(可選)指定用於圖片理解的影像檔,映像支援以下三種方式傳入:
公網 URL:公網可訪問的映像連結
圖片的 Base 64 編碼,格式為 data:image/<format>;base64,<data>
本地檔案:本地檔案的絕對路徑
適用模型:Qwen-VL 、QVQ 樣本值:{"image":"https://xxxx.jpeg"} video array 或 string(可選)使用Qwen-VL 模型 或QVQ模型 傳入的視頻。
若傳入映像列表,則為array類型;
若傳入的視訊檔案,則為string類型*。*
傳入本地檔案請參見本地檔案(Qwen-VL) 或本地檔案(QVQ) 。 樣本值:
映像列表:{"video":["https://xx1.jpg",...,"https://xxn.jpg"]}
視頻檔案:{"video":"https://xxx.mp4"}
fps float(可選)每秒抽幀數。取值範圍為 [0.1, 10],預設值為2.0。
fps有兩個功能:
輸入視頻檔案時,控制抽幀頻率,每 f p s 1 秒抽取一幀。
適用於Qwen-VL 模型 與QVQ模型 。
告知模型相鄰幀之間的時間間隔,協助其更好地理解視頻的時間動態。同時適用於輸入視頻檔案與映像列表時。該功能同時可使用視訊檔案和映像列表輸入,適用於事件時間定位或分段內容摘要等情境。
支援Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VL、Qwen2.5-VL與QVQ模型。
較大的fps適合高速運動的情境(如體育賽事、動作電影等),較小的fps適合長視頻或內容偏靜態情境。
映像列表傳入:{"video":["https://xx1.jpg",...,"https://xxn.jpg"],"fps":2}
視頻檔案傳入:{"video": "https://xx1.mp4","fps":2}
max_frames integer(可選)視頻抽取幀數的上限。當按fps計算的幀數超過 max_frames時,系統將自動調整為:在max_frames內均勻抽幀,確保總幀數不超過限制。
qwen3.7系列、qwen3.6系列、qwen3.5系列:最大值和預設值均為 8000。
qwen3-vl-plus系列、qwen3-vl-flash系列、qwen3-vl-235b-a22b-thinking、qwen3-vl-235b-a22b-instruct:最大值和預設值均為 2000。
qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:最大值和預設值均為 512。
{"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"max_frame": 2000}
使用 OpenAI 相容API調用時,不支援自訂max_frames參數,API 將自動使用各模型對應的預設值。
min_pixels integer(可選)設定輸入映像或視訊框架的最小像素閾值。當輸入映像或視訊框架的像素小於min_pixels時,會將其進行放大,直到總像素高於min_pixels。
輸入映像:
Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VL:預設值和最小值均為:65536
qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:預設值和最小值均為4096
其他qwen-vl-plus模型、其他qwen-vl-max模型、Qwen2.5-VL開源系列及QVQ系列模型:預設值和最小值均為3136
輸入視頻檔案或映像列表:
Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VL(包括商業版和開源版)、qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:預設值為65536,最小值為4096
其他qwen-vl-plus模型、其他qwen-vl-max模型、Qwen2.5-VL開源系列及QVQ系列模型:預設值為50176,最小值為3136
輸入映像:{"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"min_pixels": 65536}
輸入視頻檔案時:{"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"min_pixels": 65536}
輸入映像列表時:{"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"min_pixels": 65536}
max_pixels integer(可選)用於設定輸入映像或視訊框架的最大像素閾值。當輸入映像或視頻的像素在[min_pixels, max_pixels]區間內時,模型會按原圖進行識別。當輸入映像像素大於max_pixels時,會將映像進行縮小,直到總像素低於max_pixels。
輸入映像:
max_pixels 的取值與是否開啟vl_high_resolution_images參數有關。
當vl_high_resolution_images為False時:
Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VL:預設值為2621440,最大值為:16777216
qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:預設值為1310720,最大值為:16777216
其他qwen-vl-plus模型、其他qwen-vl-max模型、Qwen2.5-VL開源系列及QVQ系列模型:預設值為1003520 ,最大值為12845056
當vl_high_resolution_images為True時:
Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VL、qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:max_pixels無效,輸入映像的最大像素固定為16777216
其他qwen-vl-plus模型、其他qwen-vl-max模型、Qwen2.5-VL開源系列及QVQ系列模型:max_pixels無效,輸入映像的最大像素固定為12845056
輸入視頻檔案或映像列表:
qwen3.7系列、qwen3.6系列、qwen3.5系列、qwen3-vl-plus系列、qwen3-vl-flash系列、qwen3-vl-235b-a22b-thinking、qwen3-vl-235b-a22b-instruct:預設值為655360,最大值為2048000
其他Qwen3-VL開源模型、qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:預設值655360,最大值為786432
其他qwen-vl-plus模型、其他qwen-vl-max模型、Qwen2.5-VL開源系列及QVQ系列模型:預設值為501760,最大值為602112
輸入映像:{"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"max_pixels": 8388608}
輸入視頻檔案時:{"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"max_pixels": 655360}
輸入映像列表時:{"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"max_pixels": 655360}
total_pixels integer(可選)用於限制從視頻中抽取的所有幀的總像素(單幀映像像素 × 總幀數)。如果視頻總像素超過此限制,系統將對視訊框架進行縮放,但仍會確保單幀映像的像素值在[min_pixels, max_pixels]範圍內。適用於 Qwen-VL、QVQ 模型。 對於抽幀數量較多的長視頻,可適當降低此值以減少Token消耗和處理時間,但這可能會導致映像細節丟失。
qwen3.7系列、qwen3.6系列、qwen3.5系列:預設值和最大值均為819200000,該值對應 800000 個映像 Token(每 32×32 像素對應 1 個映像 Token)。
qwen3-vl-plus系列、qwen3-vl-flash系列、qwen3-vl-235b-a22b-thinking、qwen3-vl-235b-a22b-instruct:預設值和最大值均為134217728,該值對應 131072 個映像 Token(每 32×32 像素對應 1 個映像 Token)。
其他Qwen3-VL開源模型、qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:預設值和最小值均為67108864,該值對應 65536 個映像 Token(每 32×32 像素對應 1 個映像 Token)。
其他qwen-vl-plus模型、其他qwen-vl-max模型、Qwen2.5-VL開源系列及QVQ系列模型:預設值和最小值均為51380224,該值對應 65536 個映像 Token(每 28×28 像素對應 1 個映像 Token)。
輸入視頻檔案時:{"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"total_pixels": 134217728}
輸入映像列表時:{"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"total_pixels": 134217728}
cache_control object(可選) 僅支援顯式緩衝 的模型支援,用於開啟顯式緩衝。
type string(必選) 固定為ephemeral。
role string(必選) 使用者訊息的角色,固定為user。 Assistant Message object(可選) 模型對使用者訊息的回複。
content string(可選)訊息內容。僅當助手訊息中指定tool_calls參數時非必選。 role string(必選) 固定為assistant。 partial boolean(可選)是否開啟首碼續寫。相關文檔與支援的模型:首碼續寫 。 tool_calls array(可選)發起 Function Calling 後,返回的工具與入參資訊,包含一個或多個對象。由上一輪模型響應的tool_calls欄位獲得。
id string工具響應的ID。 type string工具類型,當前只支援設為function。 function object工具與入參資訊。
name string工具名稱。 arguments string入參資訊,為JSON格式字串。
index integer當前工具資訊在tool_calls數組中的索引。 Tool Messageobject(可選) 工具的輸出資訊。
content string(必選) 工具函數的輸出內容,必須為字串格式。 role string(必選) 固定為tool。 tool_call_id string(可選) 發起 Function Calling 後返回的 id,可以通過response.output.choices[0].message.tool_calls[$index]["id"]擷取,用於標記 Tool Message 對應的工具。
temperature float(可選)採樣溫度,控制模型產生文本的多樣性。 temperature越高,產生的文本更多樣,反之,產生的文本更確定。 取值範圍: [0, 2)
通過HTTP調用時,請將 temperature 放入 parameters 對象中。
不建議修改QVQ模型的預設 temperature 值。
top_p float(可選)核採樣的機率閾值,控制模型產生文本的多樣性。 top_p越高,產生的文本更多樣。反之,產生的文本更確定。 取值範圍:(0,1.0]。
Java SDK中為topP *。*通過HTTP調用時,請將 top_p 放入 parameters 對象中。
不建議修改QVQ模型的預設 top_p 值。
top_k integer(可選)產生過程中採樣候選集的大小。例如,取值為50時,僅將單次產生中得分最高的50個Token組成隨機採樣的候選集。取值越大,產生的隨機性越高;取值越小,產生的確定性越高。取值為None或當top_k大於100時,表示不啟用top_k策略,此時僅有top_p策略生效。 取值需要大於或等於0。
QVQ系列:10; QwQ 系列:40; 其餘qwen-vl-plus系列之前的模型、:1; 其餘模型均為20; GLM系列(阿里雲直供):20; DeepSeek/Kimi/MiniMax系列均不支援top_k參數。
Java SDK中為topK *。*通過HTTP調用時,請將 top_k 放入 parameters 對象中。
不建議修改QVQ模型的預設 top_k 值。
enable_thinking boolean (可選)使用混合思考模型時,是否開啟思考模式,適用於Qwen3.7、Qwen3.6、Qwen3.5、Qwen3、Qwen3-VL模型,以及 DeepSeek-V4-Pro/V4-Flash 系列、DeepSeek-V3.2/V3.2-exp/V3.1 系列、Kimi-K2.6/K2.5 系列、GLM 系列。DeepSeek-V4 系列預設開啟思考,可通過 reasoning_effort 參數調整推理力度。 可選值:
true:開啟
開啟後,思考內容將通過reasoning_content欄位返回。
false:不開啟
不同模型的預設值:支援的模型
Java SDK 為enableThinking;通過HTTP調用時,請將 enable_thinking 放入 parameters 對象中。
preserve_thinking boolean (可選)預設值為 false(qwen3.8-max 預設值為 true)是否將對話歷史中 assistant 訊息的 reasoning_content 拼接至模型輸入。適用於需要模型參考歷史思考過程的情境。 目前支援qwen3.8-max(預設開啟)、qwen3.8-flash、qwen3.7-max、qwen3.7-max-2026-05-20以及後續快照、qwen3.6-max-preview、qwen3.7-plus、qwen3.7-plus-2026-05-26、qwen3.6-plus、qwen3.6-plus-2026-04-02、qwen3.7-flash、qwen3.7-flash-2026-07-15、qwen3.6-flash、qwen3.6-flash-2026-04-16、kimi-k2.6(阿里雲百鍊部署)、kimi-k2.7-code(阿里雲百鍊部署,預設開啟)、kimi/kimi-k2.7-code-highspeed(月之暗面直供,預設開啟)、kimi/kimi-k2.7-code(月之暗面直供,預設開啟)。
重要: 使用 qwen3.8-max 時,preserve_thinking 預設為 true,必須將歷史對話中所有的 reasoning_content 完整回傳。不支援將 reasoning_content 拼接到 content 欄位中回傳。
若歷史訊息中不包含 reasoning_content,開啟此參數不會報錯,正常相容。
開啟後,歷史對話中的 reasoning_content 會計入輸入 Token 數量並計費。
通過HTTP調用時,請將 preserve_thinking 放入 parameters 對象中。暫不支援 Java SDK。
thinking_budget integer (可選)思考過程的最大長度。適用於Qwen3.8、Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VL、Qwen3、GLM、Kimi系列模型。相關文檔:限制思考長度 。 預設值為模型最大思維鏈長度,請參見:選擇模型
Java SDK 為 thinkingBudget。通過HTTP調用時,請將 thinking_budget 放入 parameters 對象中。
預設值為模型最大思維鏈長度。
reasoning_effort string (可選)控制模型的推理力度,不同模型支援的可選值和預設值不同。 DeepSeek-V4、GLM 系列與 kimi/kimi-k3 (預設值為 high)可選值: low和medium映射為high,xhigh映射為max。 適用於glm-5.2、glm-5.1、glm-5、deepseek-v4-pro、deepseek-v4-flash(deepseek-v4-flash-0731 除外)、kimi/kimi-k3 deepseek-v4-flash-0731、 deepseek-v4-pro-0813 模型:預設值為 high可選值:
max:最大力度推理
high(預設):高力度推理
low:低力度推理
出於相容性考慮,medium 映射為 high,xhigh 映射為 high。 qwen3.8-max 模型:預設值為 xhigh可選值:
xhigh(預設):高力度推理
medium:中力度推理
low:低力度推理
max 映射為 xhigh,high 映射為 xhigh,minimal 映射為 low,none 映射為 enable_thinking=False。
設定上述可選值及映射值以外的值將會報錯。
重要: qwen3.8 系列不支援 reasoning_effort 與 thinking_budget 同時設定,同時設定會報錯。但兩者支援互轉:
未設定 thinking_budget 時,reasoning_effort 檔位自動對應 thinking_budget:low 對應 4096,medium 對應 16384,xhigh 對應 262144。
未設定 reasoning_effort 時,thinking_budget 自動對應回 reasoning_effort:0~4096 對應 low,4097~16384 對應 medium,16385~262144 對應 xhigh。
兩者均未設定時,使用預設 thinking_budget(131072),預設 reasoning_effort(xhigh)。
通過HTTP調用時,請將 reasoning_effort 放入 parameters 對象中。
tool_stream boolean (可選)預設值為 false僅影響複雜工具參數的流式輸出行為,僅在流式調用時生效。普通工具參數(所有參數類型均為string)只要開啟流式調用即可流式輸出,tool_stream對其無影響。複雜工具是指工具定義中某些參數類型為array或object。當前僅Qwen和GLM系列支援。 Qwen系列支援列表:
qwen-max系列:qwen3.8-max系列、qwen3.7-max系列的文本模態
qwen-plus系列:qwen3.7-plus系列、qwen3.6-plus系列的文本模態,以及qwen3.5-plus系列的全模態
qwen-flash系列:qwen3.7-flash系列、qwen3.6-flash系列、qwen3.5-flash的全模態
Qwen系列使用參考:
tool_stream=false:複雜工具參數會一次性輸出,預設行為,複雜格式會更準確。
tool_stream=true:複雜工具參數會流式輸出,複雜格式沒有逾時風險。
複雜工具是指工具定義中某些參數類型為array或object。
GLM系列支援列表: glm-4.6、glm-4.7、glm-5、glm-5.1。GLM系列使用參考:
tool_stream=false:工具參數會一次性輸出,預設行為,複雜格式會更準確。
tool_stream=true:工具參數會流式輸出,複雜格式沒有逾時風險。
通過HTTP調用時,請將 tool_stream 放入 parameters 對象中。
enable_code_interpreter boolean (可選)預設值為 false是否開啟代碼解譯器功能。相關文檔:代碼解譯器 可選值:
不支援 Java SDK。通過HTTP調用時,請將 enable_code_interpreter 放入 parameters 對象中。
clear_thinking boolean(可選)預設值為false用於控制多輪對話中是否將歷史輪次的 reasoning_content(思考過程)作為上下文輸入給模型。僅 GLM 系列glm-5.2、glm-5.1、glm-5、glm-4.7模型支援。
true:開啟。忽略歷史輪次的 reasoning_content,僅使用可見文本、工具調用與結果等非推理內容作為上下文輸入,可降低上下文長度與成本。
false(預設):不開啟。保留歷史輪次的 reasoning_content 並隨上下文一同提供給模型。若希望啟用 Preserved Thinking,必須在 messages 中完整、未修改、按原順序透傳歷史 reasoning_content,缺失、裁剪、改寫或重排會導致效果下降或無法生效。
repetition_penalty float(可選)模型產生時連續序列中的重複度。提高repetition_penalty時可以降低模型產生的重複度,1.0表示不做懲罰。沒有嚴格的取值範圍,只要大於0即可。
Java SDK中為repetitionPenalty *。*通過HTTP調用時,請將 repetition_penalty 放入 parameters 對象中。
使用qwen-vl-plus_2025-01-25模型進行文字提取時,建議設定repetition_penalty為1.0。
不建議修改QVQ模型的預設 repetition_penalty 值。
presence_penalty float(可選)控制模型產生文本時的內容重複度。 取值範圍:[-2.0, 2.0]。正值降低重複度,負值增加重複度。 在創意寫作或頭腦風暴等需要多樣性、趣味性或創造力的情境中,建議調高該值;在技術文檔或正式文本等強調一致性與術語準確性的情境中,建議調低該值。
Qwen3.8(非思考模式)、Qwen3.7(非思考模式)、Qwen3.6(非思考模式)、Qwen3.5-Omni、Qwen3.5(非思考模式)、qwen3-max-preview(思考模式)、Qwen3(非思考模式)、Qwen3-Instruct系列/1.7b/4b(思考模式)、QVQ系列、qwen-max、qwen2.5-vl系列、qwen-vl-max系列、qwen-vl-plus、Qwen3-VL(非思考):1.5; qwen3-8b/14b/32b/30b-a3b/235b-a22b(思考模式)、qwen-plus/qwen-plus-latest/2025-04-28(思考模式)、qwen-turbo/qwen-turbo/2025-04-28(思考模式):0.5; 其餘均為0.0。 DeepSeek系列(阿里雲直供):deepseek-r1、deepseek-r1-0528、deepseek-r1-distill-qwen 蒸餾版: 1; Kimi系列(阿里雲直供):kimi-k2.7-code、kimi-k2.6、kimi-k2.5: 0.0; Kimi系列(月之暗面直供):0.0; MiniMax系列(阿里雲直供):MiniMax-M2.5、MiniMax-M2.1: 0.0; 其餘DeepSeek/Kimi/GLM/MiniMax模型無預設值。
如果參數值是正數,模型將對目前文本中已存在的Token施加一個懲罰值(懲罰值與文本出現的次數無關),減少這些Token重複出現的幾率,從而減少內容重複度,增加用詞多樣性。
提示詞:把這句話翻譯成中文“This movie is good. The plot is good, the acting is good, the music is good, and overall, the whole movie is just good. It is really good, in fact. The plot is so good, and the acting is so good, and the music is so good.” 參數值為2.0:這部電影很好。劇情很棒,演技棒,音樂也非常好聽,總的來說,整部電影都好得不得了。實際上它真的很優秀。劇情非常精彩,演技出色,音樂也是那麼的動聽。 參數值為0.0:這部電影很好。劇情好,演技好,音樂也好,總的來說,整部電影都很好。事實上,它真的很棒。劇情非常好,演技也非常出色,音樂也同樣優秀。 參數值為-2.0:這部電影很好。情節很好,演技很好,音樂也很好,總的來說,整部電影都很好。實際上,它真的很棒。情節非常好,演技也非常好,音樂也非常好。
使用qwen-vl-plus模型進行文字提取時,建議設定presence_penalty為1.5。
不建議修改QVQ模型的預設presence_penalty值。
Java SDK不支援設定該參數*。*通過HTTP調用時,請將 presence_penalty 放入 parameters 對象中。
vl_high_resolution_images boolean(可選)預設值為false是否將輸入映像的像素上限提升至 16384 Token 對應的像素值。相關文檔:處理高解析度映像 。
vl_high_resolution_images:true,使用固定解析度策略,忽略 max_pixels 設定,超過此解析度時會將映像總像素縮小至此上限內。
vl_high_resolution_images為True時,不同模型像素上限不同:
Qwen3.7系列、Qwen3.6系列、Qwen3.5系列、Qwen3-VL系列、qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815模型:16777216(每Token對應32*32像素,即16384*32*32)
QVQ系列、其他Qwen2.5-VL系列模型:12845056(每Token對應28*28像素,即 16384*28*28)
vl_high_resolution_images為false,像素上限由 max_pixels 決定,輸入映像的像素超過max_pixels會將映像縮小至max_pixels內。各模型的預設像素上限即max_pixels的預設值。
Java SDK 為 vlHighResolutionImages (需要的最低版本為2.20.8) *。*通過HTTP調用時,請將 vl_high_resolution_images 放入 parameters 對象中。
vl_enable_image_hw_output boolean(可選)預設值為 false是否返回映像縮放後的尺寸。模型會對輸入的映像進行縮放處理,配置為 True 時會返回映像縮放後的高度和寬度,開啟流式輸出時,該資訊在最後一個資料區塊(chunk)中返回。支援Qwen-VL模型 。
Java SDK中為 vlEnableImageHwOutput ,Java SDK最低版本為2.20.8*。*通過HTTP調用時,請將 vl_enable_image_hw_output 放入 parameters 對象中。
max_tokens integer(可選,即將廢棄 )
該參數即將廢棄,新接入請使用 max_completion_tokens。
該參數的含義隨模型不同,具體如下:
deepseek-v4-pro、deepseek-v4-pro-0813、deepseek-v4-flash、deepseek-v4-flash-0731:模型回答與思維鏈內容之和的最大 Token 數。模型輸出超過此值時產生將提前停止,返回的 finish_reason 為 length。
glm-5.2:不傳入 thinking_budget 參數時,max_tokens 為模型回答與思維鏈內容之和的最大 Token 數,模型輸出超過此值時產生將提前停止,返回的 finish_reason 為 length;傳入 thinking_budget 參數時,max_tokens 僅為模型回答的最大 Token 數,思維鏈部分的 Token 數由 thinking_budget 單獨控制。
其他模型:模型回答的最大 Token 數。若產生內容超過此值,產生將提前停止,返回的 finish_reason 為 length。
預設值與最大值均為模型的最大輸出長度。
Java SDK中為maxTokens (模型為千問VL時,Java SDK中為maxLength, 在 2.18.4 版本之後支援也設定為 maxTokens)*。*通過HTTP調用時,請將 max_tokens 放入 parameters 對象中。
max_completion_tokens integer(可選)模型輸出的最大長度,包含思維鏈和模型回答。模型輸出超過此值時產生將提前停止,返回的 finish_reason 為 length。 預設值與最大值均為模型的最大輸出長度。 與 max_tokens 的區別:max_completion_tokens 限制模型完整輸出(思維鏈 + 回答),而 max_tokens 僅限制回答部分。思考類模型推薦使用 max_completion_tokens。 支援以下模型:
千問 Max:Qwen3.7-Max 及之後的模型
千問 Plus:Qwen3.5-Plus 及之後的模型
千問 Flash:Qwen3.5-Flash 及之後的模型
Kimi:kimi-k2.5 及其之後推出的Kimi模型
GLM:glm-5 及其之後推出的GLM系列模型
MiniMax:MiniMax-M2.5 及之後推出的MiniMax模型
DeepSeek:deepseek-v3、deepseek-r1、deepseek-r1-0528、deepseek-v3.1、deepseek-v3.2、deepseek-v3.2-exp、deepseek-v4-pro、deepseek-v4-flash 及之後推出的DeepSeek模型
以上模型均不包含三方直供模型。
實際輸出 Token 數與設定的 max_completion_tokens 值之間最多可能存在 10 個 Token 的誤差。
Java SDK 暫不支援該參數。通過 HTTP 調用時,請將 max_completion_tokens 放入 parameters 對象中。
seed integer(可選)隨機數種子。用於確保在相同輸入和參數下產生結果可複現。若調用時傳入相同的 seed 且其他參數不變,模型將儘可能返回相同結果。 取值範圍:[0,2 31 −1]。
通過HTTP調用時,請將 seed 放入 parameters 對象中。
stream boolean(可選)預設值為false是否流式輸出回複。參數值:
false:模型產生完所有內容後一次性返回結果。
true:邊產生邊輸出,即每產生一部分內容就立即輸出一個片段(chunk)。
該參數僅支援Python SDK。通過Java SDK實現流式輸出請通過streamCall介面調用;通過HTTP實現流式輸出請在Header中指定X-DashScope-SSE為enable。
Qwen3商業版(思考模式)、Qwen3開源版、QwQ、QVQ只支援流式輸出。
incremental_output boolean(可選)預設為false(Qwen3-Max、Qwen3-VL、Qwen3 開源版 、QwQ 、QVQ 模型預設值為 true)在流式輸出模式下是否開啟增量輸出。推薦您優先設定為true。 參數值:
false:每次輸出為當前已經產生的整個序列,最後一次輸出為產生的完整結果。
I
I like
I like apple
I like apple.
true(推薦):增量輸出,即後續輸出內容不包含已輸出的內容。您需要即時地逐個讀取這些片段以獲得完整的結果。
Java SDK中為incrementalOutput *。*通過HTTP調用時,請將 incremental_output 放入 parameters 對象中。
QwQ 模型與思考模式下的 Qwen3 模型只支援設定為 true。由於 Qwen3 商業版模型預設值為false,您需要在思考模式下手動設定為 true。
Qwen3 開源版模型不支援設定為 false。
response_format object (可選) 預設值為{"type": "text"}返回內容的格式。可選值:
{"type": "text"}:輸出文字回複;
{"type": "json_object"}:輸出標準格式的JSON字串。
相關文檔:結構化輸出 。
支援的模型參見支援的模型 。
若指定為{"type": "json_object"},需在提示詞中明確指示模型輸出JSON,如:“請按照json格式輸出”,否則會報錯。
Java SDK中為responseFormat*。*通過HTTP調用時,請將 response_format 放入 parameters 對象中。
type string(必選) 返回內容的格式。可選值:
text:輸出文字回複;
json_object:輸出標準格式的JSON字串;
result_format string(可選)預設為text(Qwen3-Max、Qwen3-VL、QwQ 模型、Qwen3 開源模型(除了qwen3-next-80b-a3b-instruct)預設值為 message)返回資料的格式。推薦您優先設定為message,可以更方便地進行多輪對話 。
平台後續將統一調整預設值為message。
Java SDK中為resultFormat *。*通過HTTP調用時,請將 result_format 放入 parameters 對象中。
模型為千問VL/QVQ時,設定text不生效。
Qwen3-Max、Qwen3-VL、思考模式下的 Qwen3 模型只能設定為message,由於 Qwen3 商業版模型預設值為text,您需要將其設定為message。
如果您使用 Java SDK 調用Qwen3 開源模型,並且傳入了 text,依然會以 message格式進行返回。
logprobs boolean (可選)預設值為 false是否返回輸出 Token 的對數機率,可選值: 支援以下模型:
qwen-plus系列的快照模型(不包含穩定版模型)
qwen-turbo 系列的快照模型(不包含穩定版模型)
qwen3-vl-plus系列(包含穩定版模型)
qwen3-vl-flash系列(包含穩定版模型)
Qwen3 開源模型
通過HTTP調用時,請將 logprobs 放入 parameters 對象中。
top_logprobs integer (可選)預設值為0指定在每一步產生時,返回模型最大機率的候選 Token 個數。 取值範圍:[0,5] 僅當 logprobs 為 true 時生效。
Java SDK中為topLogprobs *。*通過HTTP調用時,請將 top_logprobs 放入 parameters 對象中。
n integer(可選) 預設值為1產生響應的個數,取值範圍是1-4。對於需要產生多個響應的情境(如創意寫作、廣告文案等),可以設定較大的 n 值。
當前僅支援 Qwen3(非思考模式) 模型,且在傳入 tools 參數時固定為1。
設定較大的 n 值不會增加輸入 Token 消耗,會增加輸出 Token 的消耗。
通過HTTP調用時,請將 n 放入 parameters 對象中。
stop string 或 array(可選)用於指定停止詞。當模型產生的文本中出現 stop 指定的字串或 token_id 時,產生將立即終止。 可傳入敏感詞以控制模型的輸出。
stop為數組時,不可將token_id和字串同時作為元素輸入,比如不可以指定為["你好",104307]。
通過HTTP調用時,請將 stop 放入 parameters 對象中。
tools array(可選)包含一個或多個工具對象的數組,供模型在 Function Calling 中調用。相關文檔:Function Calling 使用 tools 時,必須將result_format設為message。 發起 Function Calling,或提交工具執行結果時,都必須設定tools參數。
type string(必選) 工具類型,當前僅支援function。 function object(必選)
name string(必選) 工具函數的名稱,必須是字母、數字,可以包含底線和短劃線,最大長度為64。 description string(必選) 工具函數的描述,供模型選擇何時以及如何調用工具函數。 parameters object(可選)預設值為 {}工具的參數描述,需要是一個合法的JSON Schema。JSON Schema的描述可以見連結 。若parameters參數為空白,表示該工具沒有入參(如時間查詢工具)。
為提高工具調用的準確性,建議傳入 parameters。
通過HTTP調用時,請將 tools 放入 parameters 對象中。暫時不支援qwen-vl系列模型。
tool_choice string 或 object(可選)預設值為 auto工具選擇策略。若需對某類問題強制指定工具調用方式(例如始終使用某工具或禁用所有工具),可設定此參數。
auto
大模型自主選擇工具策略;
none
若在特定請求中希望臨時禁用工具調用,可設定tool_choice參數為none;
{"type": "function", "function": {"name": "the_function_to_call"}}
若希望強制調用某個工具,可設定tool_choice參數為{"type": "function", "function": {"name": "the_function_to_call"}},其中the_function_to_call是指定的工具函數名稱。
思考模式的模型不支援強制調用某個工具。
Java SDK中為toolChoice *。*通過HTTP調用時,請將 tool_choice 放入 parameters 對象中。
parallel_tool_calls boolean (可選)預設值為 false是否開啟並行工具調用。 可選值: 並行工具調用詳情請參見:並行工具調用 。
Java SDK中為parallelToolCalls *。*通過HTTP調用時,請將 parallel_tool_calls 放入 parameters 對象中。
import os
import dashscope
# 以下為新加坡地區base_url,調用時請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。
dashscope.base_http_api_url = 'https:// {WorkspaceId} .ap-southeast-1.maas.aliyuncs.com/api/v1'
messages = [
{ 'role' : 'system' , 'content' : [{ 'text' : 'You are a helpful assistant.' }]},
{ 'role' : 'user' , 'content' : [{ 'text' : '你是誰?' }]}
]
response = dashscope.MultiModalConversation.call(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key = os.getenv( 'DASHSCOPE_API_KEY' ),
model = "qwen3.8-max" , # 此處以qwen3.8-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
messages = messages,
)
print (response)
// 建議dashscope SDK的版本 >= 2.12.0
import java.util.Arrays;
import java.lang.System;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.common.MultiModalMessage;
import java.util.Collections;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;
import com.alibaba.dashscope.utils.Constants;
public class Main {
// 以下為新加坡地區base_url,調用時請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。
static { Constants . baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1" ;}
public static MultiModalConversationResult callWithMessage () throws ApiException , NoApiKeyException , InputRequiredException {
MultiModalConversation conv = new MultiModalConversation ();
MultiModalMessage systemMsg = MultiModalMessage . builder ()
. role ( Role . SYSTEM . getValue ())
. content ( Arrays . asList ( Collections . singletonMap ( "text" , "You are a helpful assistant." )))
. build ();
MultiModalMessage userMsg = MultiModalMessage . builder ()
. role ( Role . USER . getValue ())
. content ( Arrays . asList ( Collections . singletonMap ( "text" , "你是誰?" )))
. build ();
MultiModalConversationParam param = MultiModalConversationParam . builder ()
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:.apiKey("sk-xxx")
// 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
. apiKey ( System . getenv ( "DASHSCOPE_API_KEY" ))
// 此處以qwen3.8-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
. model ( "qwen3.8-max" )
. messages ( Arrays . asList (systemMsg, userMsg))
. build ();
return conv . call (param);
}
public static void main ( String [] args ) {
try {
MultiModalConversationResult result = callWithMessage ();
System . out . println ( JsonUtils . toJson (result));
} catch ( ApiException | NoApiKeyException | InputRequiredException e ) {
// 使用日誌架構記錄異常資訊
System . err . println ( "An error occurred while calling the generation service: " + e . getMessage ());
}
System . exit ( 0 );
}
}
<? php
$url = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation" ;
// 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
$apiKey = getenv ( 'DASHSCOPE_API_KEY' );
$data = [
// 此處以qwen3.8-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
"model" => "qwen3.8-max" ,
"input" => [
"messages" => [
[
"role" => "system" ,
"content" => [[ "text" => "You are a helpful assistant." ]]
],
[
"role" => "user" ,
"content" => [[ "text" => "你是誰?" ]]
]
]
],
"parameters" => [
"result_format" => "message"
]
];
$jsonData = json_encode ( $data );
$ch = curl_init ( $url );
curl_setopt ( $ch , CURLOPT_RETURNTRANSFER , true );
curl_setopt ( $ch , CURLOPT_POST , true );
curl_setopt ( $ch , CURLOPT_POSTFIELDS , $jsonData );
curl_setopt ( $ch , CURLOPT_RETURNTRANSFER , true );
curl_setopt ( $ch , CURLOPT_HTTPHEADER , [
"Authorization: Bearer $apiKey " ,
"Content-Type: application/json"
]);
$response = curl_exec ( $ch );
$httpCode = curl_getinfo ( $ch , CURLINFO_HTTP_CODE );
if ( $httpCode == 200 ) {
echo "Response: " . $response ;
} else {
echo "Error: " . $httpCode . " - " . $response ;
}
curl_close ( $ch );
?>
DashScope 未提供 Node.js 環境的 SDK。如需通過 OpenAI Node.js SDK調用,請參考本文的OpenAI 章節。 import fetch from 'node-fetch' ;
// 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
const apiKey = process . env . DASHSCOPE_API_KEY ;
const data = {
model: "qwen3.8-max" , // 此處以qwen3.8-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
input: {
messages: [
{
role: "system" ,
content: [{ text: "You are a helpful assistant." }]
},
{
role: "user" ,
content: [{ text: "你是誰?" }]
}
]
},
parameters: {
result_format: "message"
}
};
fetch ( 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' , {
method: 'POST' ,
headers: {
'Authorization' : `Bearer ${ apiKey } ` ,
'Content-Type' : 'application/json'
},
body: JSON . stringify ( data )
})
. then ( response => response . json ())
. then ( data => {
console . log ( JSON . stringify ( data ));
})
. catch ( error => {
console . error ( 'Error:' , error );
});
using System . Net . Http . Headers ;
using System . Text ;
class Program
{
private static readonly HttpClient httpClient = new HttpClient ();
static async Task Main ( string [] args )
{
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:string? apiKey = "sk-xxx";
// 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
string ? apiKey = Environment . GetEnvironmentVariable ( "DASHSCOPE_API_KEY" );
if ( string . IsNullOrEmpty ( apiKey ))
{
Console . WriteLine ( "API Key 未設定。請確保環境變數 'DASHSCOPE_API_KEY' 已設定。" );
return ;
}
// 佈建要求 URL 和內容
string url = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation" ;
// 此處以qwen3.8-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
string jsonContent = @"{
"" model "" : "" qwen3.8-max "" ,
"" input "" : {
"" messages "" : [
{
"" role "" : "" system "" ,
"" content "" : [{ "" text "" : "" You are a helpful assistant. "" }]
},
{
"" role "" : "" user "" ,
"" content "" : [{ "" text "" : "" 你是誰? "" }]
}
]
},
"" parameters "" : {
"" result_format "" : "" message ""
}
}" ;
// 發送請求並擷取響應
string result = await SendPostRequestAsync ( url , jsonContent , apiKey );
// 輸出結果
Console . WriteLine ( result );
}
private static async Task < string > SendPostRequestAsync ( string url , string jsonContent , string apiKey )
{
using ( var content = new StringContent ( jsonContent , Encoding . UTF8 , "application/json" ))
{
// 佈建要求頭
httpClient . DefaultRequestHeaders . Authorization = new AuthenticationHeaderValue ( "Bearer" , apiKey );
httpClient . DefaultRequestHeaders . Accept . Add ( new MediaTypeWithQualityHeaderValue ( "application/json" ));
// 發送請求並擷取響應
HttpResponseMessage response = await httpClient . PostAsync ( url , content );
// 處理響應
if ( response . IsSuccessStatusCode )
{
return await response . Content . ReadAsStringAsync ();
}
else
{
return $"請求失敗: { response . StatusCode } " ;
}
}
}
}
DashScope 未提供 Go 的 SDK。如需通過 OpenAI Go SDK調用,請參考本文的OpenAI-Go 章節。 package main
import (
" bytes "
" encoding/json "
" fmt "
" io "
" log "
" net/http "
" os "
)
type ContentItem struct {
Text string `json:"text"`
}
type Message struct {
Role string `json:"role"`
Content [] ContentItem `json:"content"`
}
type Input struct {
Messages [] Message `json:"messages"`
}
type Parameters struct {
ResultFormat string `json:"result_format"`
}
type RequestBody struct {
Model string `json:"model"`
Input Input `json:"input"`
Parameters Parameters `json:"parameters"`
}
func main () {
// 建立 HTTP 用戶端
client := & http . Client {}
// 構建請求體
requestBody := RequestBody {
// 此處以qwen3.8-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
Model : "qwen3.8-max" ,
Input : Input {
Messages : [] Message {
{
Role : "system" ,
Content : [] ContentItem {{ Text : "You are a helpful assistant." }},
},
{
Role : "user" ,
Content : [] ContentItem {{ Text : "你是誰?" }},
},
},
},
Parameters : Parameters {
ResultFormat : "message" ,
},
}
jsonData , err := json . Marshal ( requestBody )
if err != nil {
log . Fatal ( err )
}
// 建立 POST 請求
req , err := http . NewRequest ( "POST" , "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation" , bytes . NewBuffer ( jsonData ))
if err != nil {
log . Fatal ( err )
}
// 佈建要求頭
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:apiKey := "sk-xxx"
// 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
apiKey := os . Getenv ( "DASHSCOPE_API_KEY" )
req . Header . Set ( "Authorization" , "Bearer " + apiKey )
req . Header . Set ( "Content-Type" , "application/json" )
// 發送請求
resp , err := client . Do ( req )
if err != nil {
log . Fatal ( err )
}
defer resp . Body . Close ()
// 讀取響應體
bodyText , err := io . ReadAll ( resp . Body )
if err != nil {
log . Fatal ( err )
}
// 列印響應內容
fmt . Printf ( " %s \n " , bodyText )
}
調用時請將{WorkspaceId}替換為真實的業務空間ID 。
新加坡/維吉尼亞和北京地區的API Key不同,擷取與配置 API Key
curl --location "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation" \
--header "Authorization: Bearer $DASHSCOPE_API_KEY " \
--header "Content-Type: application/json" \
--data '{
"model": "qwen3.8-max",
"input":{
"messages":[
{
"role": "system",
"content": [{"text": "You are a helpful assistant."}]
},
{
"role": "user",
"content": [{"text": "你是誰?"}]
}
]
},
"parameters": {
"result_format": "message"
}
}'
相關文檔:流式輸出 。
import os
import dashscope
dashscope.base_http_api_url = 'https:// {WorkspaceId} .ap-southeast-1.maas.aliyuncs.com/api/v1'
messages = [
{ 'role' : 'system' , 'content' : 'you are a helpful assistant' },
{ 'role' : 'user' , 'content' : '你是誰?' }
]
responses = dashscope.Generation.call(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key = os.getenv( 'DASHSCOPE_API_KEY' ),
# 此處以qwen-plus為例,可按需更換為其它文本產生模型
model = "qwen-plus" ,
messages = messages,
result_format = "message" ,
stream = True ,
incremental_output = True
)
for response in responses:
print (response.output.choices[ 0 ].message.content, end = "" )
import java.util.Arrays;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.dashscope.aigc.generation.Generation;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.common.Message;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;
import io.reactivex.Flowable;
import java.lang.System;
import com.alibaba.dashscope.utils.Constants;
public class Main {
static { Constants . baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1" ;}
private static final Logger logger = LoggerFactory . getLogger ( Main . class );
private static void handleGenerationResult ( GenerationResult message ) {
System . out . println ( JsonUtils . toJson (message));
}
public static void streamCallWithMessage ( Generation gen , Message userMsg )
throws NoApiKeyException , ApiException , InputRequiredException {
GenerationParam param = buildGenerationParam (userMsg);
Flowable < GenerationResult > result = gen . streamCall (param);
result . blockingForEach (message -> handleGenerationResult (message));
}
private static GenerationParam buildGenerationParam ( Message userMsg ) {
return GenerationParam . builder ()
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:.apiKey("sk-xxx")
// 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
. apiKey ( System . getenv ( "DASHSCOPE_API_KEY" ))
// 此處以qwen-plus為例,可按需更換為其它文本產生模型
. model ( "qwen-plus" )
. messages ( Arrays . asList (userMsg))
. resultFormat ( GenerationParam . ResultFormat . MESSAGE )
. incrementalOutput ( true )
. build ();
}
public static void main ( String [] args ) {
try {
Generation gen = new Generation ();
Message userMsg = Message . builder (). role ( Role . USER . getValue ()). content ( "你是誰?" ). build ();
streamCallWithMessage (gen, userMsg);
} catch ( ApiException | NoApiKeyException | InputRequiredException e ) {
logger . error ( "An exception occurred: {}" , e . getMessage ());
}
System . exit ( 0 );
}
}
調用時請將{WorkspaceId}替換為真實的業務空間ID 。 curl --location "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/text-generation/generation" \
--header "Authorization: Bearer $DASHSCOPE_API_KEY " \
--header "Content-Type: application/json" \
--header "X-DashScope-SSE: enable" \
--data '{
"model": "qwen-plus",
"input":{
"messages":[
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "你是誰?"
}
]
},
"parameters": {
"result_format": "message",
"incremental_output":true
}
}'
import os
from dashscope import MultiModalConversation
import dashscope
dashscope.base_http_api_url = 'https:// {WorkspaceId} .ap-southeast-1.maas.aliyuncs.com/api/v1'
messages = [
{
"role" : "user" ,
"content" : [
{ "image" : "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg" },
{ "text" : "圖中描繪的是什麼景象?" }
]
}
]
responses = MultiModalConversation.call(
# 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx",
api_key = os.getenv( "DASHSCOPE_API_KEY" ),
model = 'qwen3-vl-plus' , # 可按需更換為其它多模態模型,並修改相應的 messages
messages = messages,
stream = True ,
incremental_output = True )
full_content = ""
print ( "流式輸出內容為:" )
for response in responses:
if response[ "output" ][ "choices" ][ 0 ][ "message" ].content:
print (response.output.choices[ 0 ].message.content[ 0 ][ 'text' ])
full_content += response.output.choices[ 0 ].message.content[ 0 ][ 'text' ]
print ( f "完整內容為: { full_content } " )
import java.util.Arrays;
import java.util.Collections;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.common.MultiModalMessage;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import io.reactivex.Flowable;
import com.alibaba.dashscope.utils.Constants;
public class Main {
static {
Constants . baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1" ;
}
public static void streamCall ()
throws ApiException , NoApiKeyException , UploadFileException {
MultiModalConversation conv = new MultiModalConversation ();
// must create mutable map.
MultiModalMessage userMessage = MultiModalMessage . builder (). role ( Role . USER . getValue ())
. content ( Arrays . asList ( Collections . singletonMap ( "image" , "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg" ),
Collections . singletonMap ( "text" , "圖中描繪的是什麼景象?" ))). build ();
MultiModalConversationParam param = MultiModalConversationParam . builder ()
// 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:.apiKey("sk-xxx")
. apiKey ( System . getenv ( "DASHSCOPE_API_KEY" ))
. model ( "qwen3-vl-plus" ) // 可按需更換為其它多模態模型,並修改相應的 messages
. messages ( Arrays . asList (userMessage))
. incrementalOutput ( true )
. build ();
Flowable < MultiModalConversationResult > result = conv . streamCall (param);
result . blockingForEach (item -> {
try {
var content = item . getOutput (). getChoices (). get ( 0 ). getMessage (). getContent ();
// 判斷content是否存在且不為空白
if (content != null && ! content . isEmpty ()) {
System . out . println ( content . get ( 0 ). get ( "text" ));
}
} catch ( Exception e ){
System . exit ( 0 );
}
});
}
public static void main ( String [] args ) {
try {
streamCall ();
} catch ( ApiException | NoApiKeyException | UploadFileException e ) {
System . out . println ( e . getMessage ());
}
System . exit ( 0 );
}
}
調用時請將{WorkspaceId}替換為真實的業務空間ID 。 curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation \
-H "Authorization: Bearer $DASHSCOPE_API_KEY " \
-H 'Content-Type: application/json' \
-H 'X-DashScope-SSE: enable' \
-d '{
"model": "qwen3-vl-plus",
"input":{
"messages":[
{
"role": "user",
"content": [
{"image": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg"},
{"text": "圖中描繪的是什麼景象?"}
]
}
]
},
"parameters": {
"incremental_output": true
}
}'
關於大模型分析映像的更多用法,請參見映像與視頻理解 。
import os
import dashscope
dashscope.base_http_api_url = 'https:// {WorkspaceId} .ap-southeast-1.maas.aliyuncs.com/api/v1'
messages = [
{
"role" : "user" ,
"content" : [
{ "image" : "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg" },
{ "image" : "https://dashscope.oss-cn-beijing.aliyuncs.com/images/tiger.png" },
{ "image" : "https://dashscope.oss-cn-beijing.aliyuncs.com/images/rabbit.png" },
{ "text" : "這些是什麼?" }
]
}
]
response = dashscope.MultiModalConversation.call(
# 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key = os.getenv( 'DASHSCOPE_API_KEY' ),
# 此處以qwen-vl-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
model = 'qwen-vl-max' ,
messages = messages
)
print (response)
// Copyright (c) Alibaba, Inc. and its affiliates.
import java.util.Arrays;
import java.util.Collections;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.common.MultiModalMessage;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.utils.JsonUtils;
import com.alibaba.dashscope.utils.Constants;
public class Main {
static {
Constants . baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1" ;
}
public static void simpleMultiModalConversationCall ()
throws ApiException , NoApiKeyException , UploadFileException {
MultiModalConversation conv = new MultiModalConversation ();
MultiModalMessage userMessage = MultiModalMessage . builder (). role ( Role . USER . getValue ())
. content ( Arrays . asList (
Collections . singletonMap ( "image" , "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg" ),
Collections . singletonMap ( "image" , "https://dashscope.oss-cn-beijing.aliyuncs.com/images/tiger.png" ),
Collections . singletonMap ( "image" , "https://dashscope.oss-cn-beijing.aliyuncs.com/images/rabbit.png" ),
Collections . singletonMap ( "text" , "這些是什麼?" ))). build ();
MultiModalConversationParam param = MultiModalConversationParam . builder ()
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:.apiKey("sk-xxx")
. apiKey ( System . getenv ( "DASHSCOPE_API_KEY" ))
// 此處以qwen-vl-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
. model ( "qwen-vl-plus" )
. message (userMessage)
. build ();
MultiModalConversationResult result = conv . call (param);
System . out . println ( JsonUtils . toJson (result));
}
public static void main ( String [] args ) {
try {
simpleMultiModalConversationCall ();
} catch ( ApiException | NoApiKeyException | UploadFileException e ) {
System . out . println ( e . getMessage ());
}
System . exit ( 0 );
}
}
調用時請將{WorkspaceId}替換為真實的業務空間ID 。
新加坡/維吉尼亞和北京地區的API Key不同,擷取與配置 API Key
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY " \
--header 'Content-Type: application/json' \
--data '{
"model": "qwen-vl-plus",
"input":{
"messages":[
{
"role": "user",
"content": [
{"image": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg"},
{"image": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/tiger.png"},
{"image": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/rabbit.png"},
{"text": "這些是什麼?"}
]
}
]
}
}'
以下為傳入的視訊幀的範例程式碼,關於更多用法(如傳入的視訊檔案),請參見視覺理解 。
import os
# dashscope版本需要不低於1.20.10
import dashscope
dashscope.base_http_api_url = 'https:// {WorkspaceId} .ap-southeast-1.maas.aliyuncs.com/api/v1'
messages = [{ "role" : "user" ,
"content" : [
# 若模型屬於Qwen2.5-VL系列且傳入的是映像列表時,可設定fps參數,表示映像列表是由原視頻每隔 1/fps 秒抽取的
{ "video" :[ "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/xzsgiz/football1.jpg" ,
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/tdescd/football2.jpg" ,
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/zefdja/football3.jpg" ,
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/aedbqh/football4.jpg" ],
"fps" : 2 },
{ "text" : "描述這個視頻的具體過程" }]}]
response = dashscope.MultiModalConversation.call(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key = os.getenv( "DASHSCOPE_API_KEY" ),
model = 'qwen-vl-max' , # 此處以qwen-vl-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/models
messages = messages
)
print (response[ "output" ][ "choices" ][ 0 ][ "message" ].content[ 0 ][ "text" ])
// DashScope SDK版本需要不低於2.18.3
import java.util.Arrays;
import java.util.Collections;
import java.util.Map;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.common.MultiModalMessage;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.utils.Constants;
public class Main {
static {
Constants . baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1" ;
}
private static final String MODEL_NAME = "qwen-vl-max" ; // 此處以qwen-vl-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/models
public static void videoImageListSample () throws ApiException , NoApiKeyException , UploadFileException {
MultiModalConversation conv = new MultiModalConversation ();
MultiModalMessage systemMessage = MultiModalMessage . builder ()
. role ( Role . SYSTEM . getValue ())
. content ( Arrays . asList ( Collections . singletonMap ( "text" , "You are a helpful assistant." )))
. build ();
// 若模型屬於Qwen2.5-VL系列且傳入的是映像列表時,可設定fps參數,表示映像列表是由原視頻每隔 1/fps 秒抽取的
Map < String , Object > params = Map . of (
"video" , Arrays . asList ( "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/xzsgiz/football1.jpg" ,
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/tdescd/football2.jpg" ,
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/zefdja/football3.jpg" ,
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/aedbqh/football4.jpg" ),
"fps" , 2 );
MultiModalMessage userMessage = MultiModalMessage . builder ()
. role ( Role . USER . getValue ())
. content ( Arrays . asList (
params,
Collections . singletonMap ( "text" , "描述這個視頻的具體過程" )))
. build ();
MultiModalConversationParam param = MultiModalConversationParam . builder ()
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:.apiKey("sk-xxx")
// 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
. apiKey ( System . getenv ( "DASHSCOPE_API_KEY" ))
. model (MODEL_NAME)
. messages ( Arrays . asList (systemMessage, userMessage)). build ();
MultiModalConversationResult result = conv . call (param);
System . out . print ( result . getOutput (). getChoices (). get ( 0 ). getMessage (). getContent (). get ( 0 ). get ( "text" ));
}
public static void main ( String [] args ) {
try {
videoImageListSample ();
} catch ( ApiException | NoApiKeyException | UploadFileException e ) {
System . out . println ( e . getMessage ());
}
System . exit ( 0 );
}
}
調用時請將{WorkspaceId}替換為真實的業務空間ID 。
新加坡/維吉尼亞和北京地區的API Key不同,擷取與配置 API Key
curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation \
-H "Authorization: Bearer $DASHSCOPE_API_KEY " \
-H 'Content-Type: application/json' \
-d '{
"model": "qwen-vl-max",
"input": {
"messages": [
{
"role": "user",
"content": [
{
"video": [
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/xzsgiz/football1.jpg",
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/tdescd/football2.jpg",
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/zefdja/football3.jpg",
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/aedbqh/football4.jpg"
],
"fps":2
},
{
"text": "描述這個視頻的具體過程"
}
]
}
]
}
}'
完整的Function Calling流程代碼請參見概述 。
import os
import dashscope
dashscope.base_http_api_url = 'https:// {WorkspaceId} .ap-southeast-1.maas.aliyuncs.com/api/v1'
tools = [
{
"type" : "function" ,
"function" : {
"name" : "get_current_time" ,
"description" : "當你想知道現在的時間時非常有用。" ,
"parameters" : {}
}
},
{
"type" : "function" ,
"function" : {
"name" : "get_current_weather" ,
"description" : "當你想查詢指定城市的天氣時非常有用。" ,
"parameters" : {
"type" : "object" ,
"properties" : {
"location" : {
"type" : "string" ,
"description" : "城市或縣區,比如北京市、杭州市、餘杭區等。"
}
}
},
"required" : [
"location"
]
}
}
]
messages = [{ "role" : "user" , "content" : [{ "text" : "杭州天氣怎麼樣" }]}]
response = dashscope.MultiModalConversation.call(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key = os.getenv( 'DASHSCOPE_API_KEY' ),
# 此處以qwen3.8-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
model = 'qwen3.8-max' ,
messages = messages,
tools = tools,
)
print (response)
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import com.alibaba.dashscope.aigc.conversation.ConversationParam.ResultFormat;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.common.MultiModalMessage;
import java.util.Collections;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.tools.FunctionDefinition;
import com.alibaba.dashscope.tools.ToolFunction;
import com.alibaba.dashscope.utils.JsonUtils;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.github.victools.jsonschema.generator.Option;
import com.github.victools.jsonschema.generator.OptionPreset;
import com.github.victools.jsonschema.generator.SchemaGenerator;
import com.github.victools.jsonschema.generator.SchemaGeneratorConfig;
import com.github.victools.jsonschema.generator.SchemaGeneratorConfigBuilder;
import com.github.victools.jsonschema.generator.SchemaVersion;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import com.alibaba.dashscope.utils.Constants;
public class Main {
// 以下為新加坡地區base_url,調用時請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。
static { Constants . baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1" ;}
public class GetWeatherTool {
private String location ;
public GetWeatherTool ( String location ) {
this . location = location;
}
public String call () {
return location + "今天是晴天" ;
}
}
public class GetTimeTool {
public GetTimeTool () {
}
public String call () {
LocalDateTime now = LocalDateTime . now ();
DateTimeFormatter formatter = DateTimeFormatter . ofPattern ( "yyyy-MM-dd HH:mm:ss" );
String currentTime = "目前時間:" + now . format (formatter) + "。" ;
return currentTime;
}
}
public static void SelectTool ()
throws NoApiKeyException , ApiException , InputRequiredException {
SchemaGeneratorConfigBuilder configBuilder =
new SchemaGeneratorConfigBuilder ( SchemaVersion . DRAFT_2020_12 , OptionPreset . PLAIN_JSON );
SchemaGeneratorConfig config = configBuilder . with ( Option . EXTRA_OPEN_API_FORMAT_VALUES )
. without ( Option . FLATTENED_ENUMS_FROM_TOSTRING ). build ();
SchemaGenerator generator = new SchemaGenerator (config);
ObjectNode jsonSchema_weather = generator . generateSchema ( GetWeatherTool . class );
ObjectNode jsonSchema_time = generator . generateSchema ( GetTimeTool . class );
FunctionDefinition fdWeather = FunctionDefinition . builder (). name ( "get_current_weather" ). description ( "擷取指定地區的天氣" )
. parameters ( JsonUtils . parseString ( jsonSchema_weather . toString ()). getAsJsonObject ()). build ();
FunctionDefinition fdTime = FunctionDefinition . builder (). name ( "get_current_time" ). description ( "擷取當前時刻的時間" )
. parameters ( JsonUtils . parseString ( jsonSchema_time . toString ()). getAsJsonObject ()). build ();
MultiModalMessage systemMsg = MultiModalMessage . builder (). role ( Role . SYSTEM . getValue ())
. content ( Arrays . asList ( Collections . singletonMap ( "text" , "You are a helpful assistant. When asked a question, use tools wherever possible." )))
. build ();
MultiModalMessage userMsg = MultiModalMessage . builder (). role ( Role . USER . getValue ()). content ( Arrays . asList ( Collections . singletonMap ( "text" , "杭州天氣" ))). build ();
List < MultiModalMessage > messages = new ArrayList <>();
messages . addAll ( Arrays . asList (systemMsg, userMsg));
MultiModalConversationParam param = MultiModalConversationParam . builder ()
// 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
. apiKey ( System . getenv ( "DASHSCOPE_API_KEY" ))
// 此處以qwen3.8-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
. model ( "qwen3.8-max" )
. messages (messages)
. tools ( Arrays . asList (
ToolFunction . builder (). function (fdWeather). build (),
ToolFunction . builder (). function (fdTime). build ()))
. build ();
MultiModalConversation conv = new MultiModalConversation ();
MultiModalConversationResult result = conv . call (param);
System . out . println ( JsonUtils . toJson (result));
}
public static void main ( String [] args ) {
try {
SelectTool ();
} catch ( ApiException | NoApiKeyException | InputRequiredException e ) {
System . out . println ( String . format ( "Exception %s" , e . getMessage ()));
}
System . exit ( 0 );
}
}
新加坡/維吉尼亞和北京地區的API Key不同,擷取與配置 API Key
調用時請將{WorkspaceId}替換為真實的業務空間ID 。
以下為新加坡地區url。
curl --location "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation" \
--header "Authorization: Bearer $DASHSCOPE_API_KEY " \
--header "Content-Type: application/json" \
--data '{
"model": "qwen3.8-max",
"input": {
"messages": [{
"role": "user",
"content": [{"text": "杭州天氣怎麼樣"}]
}]
},
"parameters": {
"result_format": "message",
"tools": [{
"type": "function",
"function": {
"name": "get_current_time",
"description": "當你想知道現在的時間時非常有用。",
"parameters": {}
}
},{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "當你想查詢指定城市的天氣時非常有用。",
"parameters": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "城市或縣區,比如北京市、杭州市、餘杭區等。"
}
}
},
"required": ["location"]
}
}]
}
}'
# 您的Dashscope Python SDK版本需要不低於 1.19.0。
import asyncio
import platform
import os
import dashscope
from dashscope.aigc.multimodal_conversation import AioMultiModalConversation
# 以下為新加坡地區base_url,調用時請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。
dashscope.base_http_api_url = 'https:// {WorkspaceId} .ap-southeast-1.maas.aliyuncs.com/api/v1'
async def main ():
response = await AioMultiModalConversation.call(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 新加坡/維吉尼亞和北京地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key = os.getenv( 'DASHSCOPE_API_KEY' ),
# 此處以qwen3.8-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
model = "qwen3.8-max" ,
messages = [{ "role" : "user" , "content" : [{ "text" : "你是誰" }]}],
)
print (response)
if platform.system() == "Windows" :
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
asyncio.run(main())
import os
import dashscope
# 當前僅北京地區可調用qwen-long-latest模型
dashscope.base_http_api_url = 'https:// {WorkspaceId} .ap-southeast-1.maas.aliyuncs.com/api/v1'
messages = [
{ 'role' : 'system' , 'content' : 'you are a helpful assisstant' },
# 請將 '{FILE_ID}'替換為您實際對話情境所使用的 file-id
{ 'role' : 'system' , 'content' : f 'fileid:// { FILE_ID } ' },
{ 'role' : 'user' , 'content' : '這篇文章講了什麼' }]
response = dashscope.Generation.call(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
api_key = os.getenv( 'DASHSCOPE_API_KEY' ),
model = "qwen-long-latest" ,
messages = messages,
result_format = "message" ,
)
print (response)
import os
import dashscope
# 當前僅北京地區可調用qwen -long- latest模型
dashscope.base_http_api_url = 'https: //{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
messages = [
{'role': 'system', 'content': 'you are a helpful assisstant'},
# 請將 '{FILE_ID}'替換為您實際對話情境所使用的 file - id
{'role':'system','content':f'fileid: //{FILE_ID}'},
{'role': 'user', 'content': '這篇文章講了什麼'}]
response = dashscope.Generation.call(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk - xxx"
api_key=os.getenv('DASHSCOPE_API_KEY'),
model="qwen -long- latest",
messages=messages,
result_format="message",
)
print(response)
當前僅北京地區支援調用文檔理解模型
請將 {FILE_ID}替換為您實際對話情境所使用的 file-id
curl --location "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/text-generation/generation" \
--header "Authorization: Bearer $DASHSCOPE_API_KEY " \
--header "Content-Type: application/json" \
--data '{
"model": "qwen-long-latest",
"input":{
"messages":[
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "system",
"content": "fileid://{FILE_ID}"
},
{
"role": "user",
"content": "這篇文章講了什嗎?"
}
]
},
"parameters": {
"result_format": "message"
}
}'