Skip to main content
工具包/架構

OpenAI Embedding介面相容

阿里雲百鍊的Embedding模型相容OpenAI介面規範。將原有 OpenAI 應用遷移至阿里雲百鍊只需調整三個參數:

  • base_url:替換為https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1,請將{WorkspaceId}替換為實際的業務空間ID
    其他地區請替換base_url:
  • api_key:替換為阿里雲百鍊 API Key
  • model:替換為以下模型列表中的模型名稱
百鍊為華北2(北京)、新加坡、中國香港地區推出了業務空間專屬網域名稱,能夠為推理請求提供卓越的效能和更高的穩定性,建議遷移至新網域名稱:
  • 華北2(北京)地區:從 https://dashscope.aliyuncs.com 遷移至 https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com
  • 新加坡地區:從 https://dashscope-intl.aliyuncs.com 遷移至 https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com
  • 中國香港地區:從 https://cn-hongkong.dashscope.aliyuncs.com 遷移至 https://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com
其中 {WorkspaceId} 為您的業務空間 ID,可在百鍊控制台的業務空間詳情頁面查看。現有網域名稱仍可正常使用。

支援的模型

  • 新加坡
  • 華北2(北京)
  • 中國香港
模型名稱向量維度批次大小單批次最大處理Token數(單價(每百萬輸入Token)支援語種免費額度(注)
text-embedding-v4
屬於Qwen3-Embedding系列
2,048、1,536、1,024(預設)、768、512、256、128、64108,192$0.07中文、英語、西班牙語、法語、葡萄牙語、印尼語、日語、韓語、德語、俄羅斯語等100+主流語種100萬Token有效期間:百鍊開通後90天內
text-embedding-v31,024(預設)、768、512中文、英語、西班牙語、法語、葡萄牙語、印尼語、日語、韓語、德語、俄羅斯語等50+主流語種50萬Token有效期間:百鍊開通後90天內
多模態Embedding模型(例如qwen3-vl-embedding、tongyi-embedding-vision系列)不支援OpenAI相容介面。請參見多模態向量

模型調用

調用樣本

本章節提供Python(OpenAI SDK)和cURL(HTTP介面)的字串輸入調用樣本,更多程式設計語言或輸入方式樣本請參考:文本與多模態向量化
  • 使用OpenAI SDK調用
  • 使用HTTP介面調用
使用OpenAI SDK調用服務,您還需安裝OpenAI SDK
import os
from openai import OpenAI

def get_response():
    client = OpenAI(
        # 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
        api_key=os.getenv("DASHSCOPE_API_KEY"), # 如果您沒有配置環境變數,請在此處用您的API Key進行替換
        # 以下為新加坡地區base_url,調用時請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。
        base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
    )
    completion = client.embeddings.create(
        model="text-embedding-v3", # 如果在華北2(北京)地區使用,需要將模型名稱替換為:text-embedding-v4
        input='衣服的品質杠杠的,很漂亮,不枉我等了這麼久啊,喜歡,以後還來這裡買',
        encoding_format="float"
        )
    print(completion.model_dump_json())

if __name__ == '__main__':
    get_response()
運行代碼可以獲得以下結果:
{
  "data": [
    {
      "embedding": [
        0.0023064255,
        -0.009327292,
        ....
        -0.0028842222
      ],
      "index": 0,
      "object": "embedding"
    }
  ],
  "model":"text-embedding-v3",
  "object":"list",
  "usage":{"prompt_tokens":23,"total_tokens":23},
  "id":"f62c2ae7-0906-9758-ab34-47c5764f07e2"
}

異常響應樣本

在訪問請求出錯的情況下,輸出的結果中會通過codemessage指明出錯原因。
{
    "error": {
        "message": "Incorrect API key provided. ",
        "type": "invalid_request_error",
        "param": null,
        "code": "invalid_api_key"
    }
}

API參考

通用文本向量介面API詳情

錯誤碼

如果模型調用失敗並返回報錯資訊,請參見錯誤碼進行解決。