Embeddings
OpenAI 互換のテキスト埋め込みと、BytePlus ModelArk のテキスト・画像・動画埋め込みを生成します。
POST /v1/embeddings は入力を浮動小数点ベクトルに変換します。文字列入力は OpenAI Embeddings API と互換のままです。ModelArk のマルチモーダル埋め込みモデルでは、1 つの配列にテキスト・画像・動画を混在させられます。
接続#
OpenAI SDK で接続する場合、base_url を https://apirouter.pleum.ai/v1、 API キーを plm_ キーに設定してください。SDK が /v1/embeddings を付加します。
from openai import OpenAI
client = OpenAI(
api_key="plm_...",
base_url="https://apirouter.pleum.ai/v1",
)
response = client.embeddings.create(
model="text-embedding-3-large",
input=["The quick brown fox", "jumps over the lazy dog"],
)
print(response.data[0].embedding)import OpenAI from "openai";
const client = new OpenAI({
apiKey: "plm_...",
baseURL: "https://apirouter.pleum.ai/v1",
});
const response = await client.embeddings.create({
model: "text-embedding-3-large",
input: ["The quick brown fox", "jumps over the lazy dog"],
});
console.log(response.data[0].embedding);リクエストボディ#
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| model | string | 任意 | 埋め込みモデル ID。デフォルトは text-embedding-3-large。マルチモーダルオブジェクトには有効な BytePlus ModelArk 埋め込みモデルを指定します。 |
| input | string | array | 必須 | 1 つの文字列、または文字列とコンテンツオブジェクトの配列。空配列は 400 を返します。 |
model は有効な埋め込みモデルである必要があります。チャットモデルやマルチモーダル埋め込み非対応 provider に画像・動画オブジェクトを送ると、呼び出し前に 400 が返されます。
{
"model": "text-embedding-3-large",
"input": ["The quick brown fox", "jumps over the lazy dog"]
}ModelArk マルチモーダル入力#
コンテンツオブジェクトは配列内でのみ使用します。テキストは {"type":"text","text":"…"}、画像は {"type":"image_url","image_url":{"url":"https://…"}}、動画は {"type":"video_url","video_url":{"url":"https://…"}} です。URL は HTTP または HTTPS である必要があり、PleumRouter は媒体をダウンロードせず ModelArk に転送します。
curl https://apirouter.pleum.ai/v1/embeddings \
-H "Authorization: Bearer $PLEUM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "skylark-embedding-vision-251215",
"input": [
{"type": "text", "text": "A ceramic mug on a desk"},
{"type": "image_url", "image_url": {"url": "https://example.com/mug.png"}},
{"type": "video_url", "video_url": {"url": "https://example.com/mug.mp4"}}
]
}'レスポンス#
レスポンスは OpenAI 形式の data エントリ(ベクトルと index)と usage を返します。cost は KRW 費用・為替レート・マークアップを含む PleumRouter 拡張です。
{
"object": "list",
"data": [
{"object": "embedding", "embedding": [0.01, -0.02], "index": 0}
],
"model": "skylark-embedding-vision-251215",
"usage": {"prompt_tokens": 29, "total_tokens": 29},
"cost": {"usd": 0.0001, "krw": 1, "fx_rate": 1525.0, "markup_rate": 0.0}
}使用量と課金#
混在した ModelArk リクエストは、provider が報告するモダリティ別入力トークンで最終精算されます。公開される usage.prompt_tokens は合計入力トークン数です。