本文介紹通過OpenAI相容介面 或 DashScopeAPI 調用通義千問OCR 模型的輸入與輸出參數。
如果模型調用失敗並返回報錯資訊,請參見錯誤碼進行解決。
相關文檔:文字提取(Qwen-OCR)
OpenAI 相容
- 新加坡地區
- 美國(維吉尼亞)地區
- 華北2(北京)地區
SDK 調用配置的
base_url為:https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1HTTP 調用配置的endpoint:POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions您需要已擷取與配置 API Key並配置API Key到環境變數。若通過OpenAI SDK進行調用,需要安裝SDK。
請求體modelstring(必選)模型名稱。支援的模型可參見選擇模型。messagesarray(必選)傳遞給大模型的上下文,按對話順序排列。
訊息類型 User Message object(必選)使用者訊息,用於向模型傳遞指令和待識別的映像。
屬性 content array(必選)訊息內容。
屬性 type string(必選)可選值:
string(可選)輸入的文本。預設值為:Please output only the text content from the image without any additional descriptions or formatting. ,即模型預設提取映像中的全部文本。image_urlobject輸入的圖片資訊。當type為image_url時是必選參數。
屬性 url string(必選)圖片的 URL或 Base64 Data URL。傳入本地檔案請參考文字提取。integer(可選)用於設定輸入映像的最小像素閾值,單位為像素。當輸入映像像素小於min_pixels時,會將映像進行放大,直到總像素高於min_pixels。
映像Token與像素的轉換關係 不同模型,每個映像 Token 對應的像素不同:
min_pixels 取值範圍
{"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"min_pixels": 3072}max_pixelsinteger(可選)用於設定輸入映像的最大像素閾值,單位為像素。當輸入映像像素在[min_pixels, max_pixels]區間內時,模型會按原圖進行識別。當輸入映像像素大於max_pixels時,會將映像進行縮小,直到總像素低於max_pixels。
映像Token與像素的轉換關係 不同模型,每個映像 Token 對應的像素不同:
max_pixels 取值範圍
{"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"max_pixels": 8388608}string(必選)使用者訊息的角色,固定為user。boolean(可選) 預設值為 false是否以流式方式輸出回複。可選值:
object(可選)流式輸出的配置項,僅在 stream 為 true 時生效。
屬性 include_usage boolean(可選)預設值為 false是否在最後一個資料區塊包含Token消耗資訊。可選值:
integer(可選)用於限制模型輸出的最大 Token 數。若產生內容超過此值,響應將被截斷。
boolean (可選)預設值為 false是否返回輸出 Token 的對數機率,可選值:
integer (可選)預設值為0指定在每一步產生時,返回模型最大機率的候選 Token 個數。取值範圍:[0,5]僅當 logprobs 為 true 時生效。temperaturefloat(可選)預設值為0.01採樣溫度,控制模型產生文本的多樣性。temperature越高,產生的文本更多樣,反之,產生的文本更確定。取值範圍: [0, 2)temperature與top_p均可以控制產生文本的多樣性,建議只設定其中一個值。建議設定為預設值即可。top_p float(可選)預設值為0.001核採樣的機率閾值,控制模型產生文本的多樣性。top_p越高,產生的文本更多樣。反之,產生的文本更確定。取值範圍:(0,1.0]temperature與top_p均可以控制產生文本的多樣性,建議只設定其中一個值。建議設定為預設值即可。top_k integer(可選)預設值為1產生過程中採樣候選集的大小。例如,取值為50時,僅將單次產生中得分最高的50個Token組成隨機採樣的候選集。取值越大,產生的隨機性越高;取值越小,產生的確定性越高。取值為None或當top_k大於100時,表示不啟用top_k策略,此時僅有top_p策略生效。取值需要大於或等於0。該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中,配置方式為:extra_body={"top_k": xxx};通過 Node.js SDK 或 HTTP 方式調用時,請作為頂層參數傳遞。建議設定為預設值即可。repetition_penalty float(可選)預設值為1.0模型產生時連續序列中的重複度。提高repetition_penalty時可以降低模型產生的重複度,1.0表示不做懲罰。該參數對模型效果影響較大,建議保持預設值。建議設定為預設值即可。presence_penalty float(可選)預設值為0.0控制模型產生文本時的內容重複度。取值範圍:[-2.0, 2.0]。正值降低重複度,負值增加重複度。在創意寫作或頭腦風暴等需要多樣性、趣味性或創造力的情境中,建議調高該值;在技術文檔或正式文本等強調一致性與術語準確性的情境中,建議調低該值。
原理介紹 如果參數值是正數,模型將對目前文本中已存在的Token施加一個懲罰值(懲罰值與文本出現的次數無關),減少這些Token重複出現的幾率,從而減少內容重複度,增加用詞多樣性。 建議設定為預設值即可。seed integer(可選)隨機數種子。用於確保在相同輸入和參數下產生結果可複現。若調用時傳入相同的 seed 且其他參數不變,模型將儘可能返回相同結果。取值範圍:[0,2 31 −1]。建議設定為預設值即可。stop string 或 array(可選)用於指定停止詞。當模型產生的文本中出現stop 指定的字串或token_id時,產生將立即終止。可傳入敏感詞以控制模型的輸出。stop為數組時,不可將 |
Python |
chat響應對象(非流式輸出)idstring本次請求的唯一識別碼。choicesarray模型產生內容的數組。
屬性 finish_reason string模型停止產生的原因。有兩種情況:
integer當前對象在choices數組中的索引。messageobject模型輸出的訊息。
屬性 content string大模型的返回結果。processed_text string對模型原始輸出進行後處理的結果,自動重複資料刪除片段等。當模型輸出存在重複內容時,該欄位提供清洗後的文本。僅通過 DashScope SDK 和 curl 調用時返回,OpenAI 相容 SDK 不返回該欄位。refusal string該參數當前固定為null。role string訊息的角色,固定為assistant。audio object該參數當前固定為null。function_call object該參數當前固定為null。tool_calls array該參數當前固定為null。integer本次請求被建立時的時間戳記。modelstring本次請求使用的模型。object string始終為chat.completion。service_tier string該參數當前固定為null。system_fingerprintstring該參數當前固定為null。usage object本次請求的 Token 消耗資訊。
屬性 completion_tokens integer模型輸出的 Token 數。prompt_tokens integer輸入的 Token 數。total_tokens integer消耗的總 Token 數,為prompt_tokens與completion_tokens的總和。completion_tokens_details object模型輸出Token的細粒度分類。
屬性 accepted_prediction_tokens integer該參數當前固定為null。audio_tokens integer該參數當前固定為null。reasoning_tokens integer該參數當前固定為null。text_tokens integer模型輸出文本對應的 Token 數。rejected_prediction_tokensinteger該參數當前固定為null。object輸入 Token 的細粒度分類。
屬性 audio_tokens integer該參數當前固定為null。cached_tokens integer該參數當前固定為null。text_tokens integer模型輸入的文本對應的Token 數。image_tokens integer模型輸入的映像對應的 Token數。 |
chat響應chunk對象(流式輸出)idstring本次調用的唯一識別碼。每個chunk對象有相同的 id。choicesarray模型產生內容的數組。若設定include_usage參數為true,則在最後一個chunk中為空白。
屬性 delta object流式返回的輸出內容。
屬性 content string大模型的返回結果。function_call object該參數當前固定為null。refusal object該參數當前固定為null。role string訊息對象的角色,只在第一個chunk中有值。string模型停止產生的原因。有三種情況:
integer當前響應在choices數組中的索引。integer本次請求被建立時的時間戳記。每個chunk有相同的時間戳記。modelstring本次請求使用的模型。object string始終為chat.completion.chunk。service_tier string該參數當前固定為null。system_fingerprintstring該參數當前固定為null。usage object本次請求消耗的Token。只在include_usage為true時,在最後一個chunk返回。
屬性 completion_tokens integer模型輸出的 Token 數。prompt_tokens integer輸入的 Token 數。total_tokens integer消耗的總 Token 數,為prompt_tokens與completion_tokens的總和。completion_tokens_details object模型輸出Token的細粒度分類。
屬性 accepted_prediction_tokens integer該參數當前固定為null。audio_tokens integer該參數當前固定為null。reasoning_tokens integer該參數當前固定為null。text_tokens integer模型輸出文本對應的 Token 數。rejected_prediction_tokensinteger該參數當前固定為null。object輸入 Token 的細粒度分類。
屬性 audio_tokens integer該參數當前固定為null。cached_tokens integer該參數當前固定為null。text_tokens integer模型輸入的文本對應的Token 數。image_tokens integer模型輸入的映像對應的 Token數。 |
DashScope
- 新加坡地區
- 美國(維吉尼亞)地區
- 華北2(北京)地區
HTTP 調用配置的
endpoint:POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generationSDK調用配置的base_url:- Python代碼
- Java代碼
您需要已擷取與配置 API Key並配置API Key到環境變數。若通過DashScope SDK進行調用,需要安裝DashScope SDK。
請求體modelstring(必選)模型名稱。支援的模型可參見選擇模型。messagesarray(必選)傳遞給大模型的上下文,按對話順序排列。通過HTTP調用時,請將messages放入 input 對象中。
訊息類型 User Message object(必選)使用者訊息,用於向模型傳遞問題、指令或上下文等。
屬性 content string 或 array(必選)訊息內容。若輸入只有文本,則為 string 類型;若輸入包含映像資料,則為 array 類型。
屬性 text string(可選)輸入的文本。預設值為:Please output only the text content from the image without any additional descriptions or formatting. ,即模型預設提取映像中的全部文本。imagestring(可選)圖片的URL、 Base64 Data URL、或本地路徑。傳入本地檔案請參見傳入本地檔案。樣本值:{"image":"https://xxxx.jpeg"}enable_rotateboolean(可選)預設值為false是否對傾斜的映像進行校正處理。可選值:
{"image":"https://xxxx.jpeg","enable_rotate": True}min_pixelsinteger(可選)用於設定輸入映像的最小像素閾值,單位為像素。當輸入映像像素小於min_pixels時,會將映像進行放大,直到總像素高於min_pixels。
映像Token與像素的轉換關係 不同模型,每個映像 Token 對應的像素不同:
min_pixels 取值範圍
{"image":"https://xxxx.jpeg","min_pixels": 3072}max_pixelsinteger(可選)用於設定輸入映像的最大像素閾值,單位為像素。當輸入映像像素在[min_pixels, max_pixels]區間內時,模型會按原圖進行識別。當輸入映像像素大於max_pixels時,會將映像進行縮小,直到總像素低於max_pixels。
映像Token與像素的轉換關係 不同模型,每個映像 Token 對應的像素不同:
max_pixels 取值範圍
{"image":"https://xxxx.jpeg","max_pixels": 8388608}string(必選)使用者訊息的角色,固定為user。integer(可選)用於限制模型輸出的最大 Token 數。若產生內容超過此值,響應將被截斷。
Java SDK中為maxTokens*。*通過HTTP調用時,請將 max_tokens放入 parameters 對象中。ocr_optionsobject(可選)使用通義千問OCR模型調用內建任務時需要配置的參數。調用內建任務時,無需傳入 User Message,模型內部會採用對應任務的Prompt。相關章節:調用內建任務。
屬性 task string (必選)內建任務的名稱,可選值如下:
object (可選)當task的取值為key_information_extraction(資訊抽取)時,此參數用於指定需抽取的特定欄位。如未指定 task_config,模型將預設提取映像中的所有欄位。
屬性 result_schema object (可選)表示需要模型抽取的欄位,應為JSON對象結構,最多可嵌套3層JSON 對象。在JSON對象的鍵(key)中指定待抽取欄位的名稱,對應的值(value)可為空白,建議在值中提供欄位描述或格式要求,可提高資訊提取的準確率。樣本值:Java SDK為OcrOptions,DashScope Python SDK 最低版本為1.22.2, Java SDK 最低版本為2.18.4。 通過HTTP調用時,請將 ocr_options放入 parameters 對象中。seed integer(可選)隨機數種子。用於確保在相同輸入和參數下產生結果可複現。若調用時傳入相同的 seed 且其他參數不變,模型將儘可能返回相同結果。取值範圍:[0,2 31 −1]。建議設定為預設值即可。 通過HTTP調用時,請將 seed放入 parameters 對象中。temperature float(可選)預設值為0.01採樣溫度,控制模型產生文本的多樣性。temperature越高,產生的文本更多樣,反之,產生的文本更確定。取值範圍: [0, 2)temperature與top_p均可以控制產生文本的多樣性,建議只設定其中一個值。建議設定為預設值即可。 通過HTTP調用時,請將 temperature放入 parameters 對象中。top_p float(可選)預設值為0.001核採樣的機率閾值,控制模型產生文本的多樣性。top_p越高,產生的文本更多樣。反之,產生的文本更確定。取值範圍:(0,1.0]temperature與top_p均可以控制產生文本的多樣性,建議只設定其中一個值。建議設定為預設值即可。 Java SDK中為topP*。*通過HTTP調用時,請將 top_p放入 parameters 對象中。top_k integer(可選)預設值為1產生過程中採樣候選集的大小。例如,取值為50時,僅將單次產生中得分最高的50個Token組成隨機採樣的候選集。取值越大,產生的隨機性越高;取值越小,產生的確定性越高。取值為None或當top_k大於100時,表示不啟用top_k策略,此時僅有top_p策略生效。取值需要大於或等於0。該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中,配置方式為:extra_body={"top_k": xxx};通過 Node.js SDK 或 HTTP 方式調用時,請作為頂層參數傳遞。建議設定為預設值即可。repetition_penalty float(可選)預設值為1.0模型產生時連續序列中的重複度。提高repetition_penalty時可以降低模型產生的重複度,1.0表示不做懲罰。該參數對模型效果影響較大,建議保持預設值。建議設定為預設值即可。 Java SDK中為repetitionPenalty*。*通過HTTP調用時,請將 repetition_penalty放入 parameters 對象中。presence_penalty float(可選)預設值為0.0控制模型產生文本時的內容重複度。取值範圍:[-2.0, 2.0]。正值降低重複度,負值增加重複度。在創意寫作或頭腦風暴等需要多樣性、趣味性或創造力的情境中,建議調高該值;在技術文檔或正式文本等強調一致性與術語準確性的情境中,建議調低該值。
原理介紹 如果參數值是正數,模型將對目前文本中已存在的Token施加一個懲罰值(懲罰值與文本出現的次數無關),減少這些Token重複出現的幾率,從而減少內容重複度,增加用詞多樣性。 建議設定為預設值即可。stream boolean(可選)預設值為false是否流式輸出回複。參數值:
該參數僅支援Python SDK。通過Java SDK實現流式輸出請通過incremental_output boolean(可選)預設為false在流式輸出模式下是否開啟增量輸出。推薦您優先設定為true。參數值:
Java SDK中為incrementalOutput*。*通過HTTP調用時,請將 incremental_output放入 parameters 對象中。stop string 或 array(可選)用於指定停止詞。當模型產生的文本中出現stop 指定的字串或token_id時,產生將立即終止。可傳入敏感詞以控制模型的輸出。stop為數組時,不可將logprobs boolean (可選)預設值為 false是否返回輸出 Token 的對數機率,可選值:
通過HTTP調用時,請將 logprobs放入 parameters 對象中。top_logprobs integer (可選)預設值為0指定在每一步產生時,返回模型最大機率的候選 Token 個數。僅當 logprobs 為 true 時生效。取值範圍:[0,5]Java SDK中為topLogprobs*。*通過HTTP調用時,請將 top_logprobs放入 parameters 對象中。 |
以下為調用高精識別內建任務的程式碼範例,詳情請參見調用內建任務。 |
chat響應對象(流式與非流式輸出格式一致)status_codestring本次請求的狀態代碼。200 表示請求成功,否則表示請求失敗。Java SDK不會返回該參數。調用失敗會拋出異常,異常資訊為status_code和message的內容。request_id string本次調用的唯一識別碼。Java SDK返回參數為requestId。code string錯誤碼,調用成功時為空白值。只有Python SDK返回該參數。output object調用結果資訊。
屬性 text string該參數當前固定為null。finish_reasonstring模型結束產生的原因。有以下情況:
array模型的輸出資訊。
屬性 finish_reason string有以下情況:
object模型輸出的訊息對象。
屬性 role string輸出訊息的角色,固定為assistant。contentobject輸出訊息的內容。
屬性 ocr_result object當Qwen-OCR系列模型調用內建的資訊抽取、高精識別任務時,輸出的任務結果資訊。
屬性 kv_result array資訊抽取任務的輸出結果。words_infoarray高精識別任務的輸出結果。
屬性 rotate_rect array樣本值:[center_x, center_y, width, height, angle]文字框的旋轉矩形表示:
array樣本值:[x1, y1, x2, y2, x3, y3, x4, y4]文字框四個頂點的座標,座標順序為左上方開起,按左上方→右上方→右下角→左下角的順時針順序排列。textstring文本行的內容string輸出訊息的內容。string對模型原始輸出進行後處理的結果,自動重複資料刪除片段等。當模型輸出存在重複內容時,該欄位提供清洗後的文本。object當前 choices 對象的機率資訊。
屬性 content array帶有對數機率資訊的 Token 數組。
屬性 token string當前 Token。bytes array當前 Token 的 UTF‑8 原始位元組列表,用於精確還原輸出內容,在處理Emoji、中文字元時有協助。logprob float當前 Token 的對數機率。傳回值為 null 表示機率值極低。top_logprobs array當前 Token 位置最可能的若干個 Token 及其對數機率,元素個數與入參的top_logprobs保持一致。
屬性 token string當前 Token。bytes array當前 Token 的 UTF‑8 原始位元組列表,用於精確還原輸出內容,在處理Emoji、中文字元時有協助。logprob float當前 Token 的對數機率。傳回值為 null 表示機率值極低。object本次請求使用的Token資訊。
屬性 input_tokens integer輸入 Token 數。output_tokens integer輸出 Token 數。characters integer該參數當前固定為0。input_tokens_detailsobject輸入 Token 的細粒度分類。
屬性 image_tokens integer模型輸入的映像對應的 Token數。text_tokens integer模型輸入的文本對應的Token 數。object輸出 Token 的細粒度分類。
屬性 text_tokens integer模型輸入的文本對應的Token 數。integer消耗的總 Token 數,為input_tokens與output_tokens的總和。image_tokens integer輸入內容包含image時返回該欄位。為使用者輸入圖片內容轉換成Token後的長度。 |