テキスト、画像、またはその両方の組み合わせで構成されるマルチモーダル入力に対してベクトル埋め込みを作成します。
このエンドポイントとなる接続されたデバイスは、テキストと画像を任意の組み合わせで含めることができる入力を受け入れ、そのベクトル表現を返します。
body
必須
-
ベクトル化するマルチモーダル入力のリスト。
リストの単一入力は、単一のキー
"content"を含む辞書であり、その値はテキストと画像のシーケンスを表します。"content"の値は辞書のリストで、各辞書は 1 つのテキストまたは画像を表します。辞書には次の 4 つのキーがあります。- type: コンテンツの部分のタイプを指定します。許可されている値は、
text、image_url、またはimage_base64です。 - テキスト:
typeがtextの場合にのみ存在します。値はテキスト string である必要があります。 - image_base64:
typeがimage_base64の場合にのみ存在します。値は、データURL形式data:[<mediatype>];base64,<data>の Base64 エンコードされたイメージである必要があります。現在サポートされているmediatypesは、image/png、image/jpeg、image/webp、image/gifです。 - image_url:
typeがimage_urlの場合にのみ存在します。値は、イメージにリンクするURLです。PNG、 - 注: イメージ データの各辞書には、
image_base64またはimage_urlのいずれかのキーのみを含める必要があります。リクエスト内で 整合性 が必要です。つまり、各リクエストでは、image_base64またはimage_urlのいずれかを使用し、両方を使用することはできません。
inputsにURLとして画像が含まれる例のペイロード:inputsリストには、テキストと画像(URL経由で提供)で構成される単一の入力が含まれています。{ "inputs": [ { "content": [ { "type": "text", "text": "This is a banana." }, { "type": "image_url", "image_url": "https://raw.githubusercontent.com/voyage-ai/voyage-multimodal-3/refs/heads/main/images/banana.jpg" } ] } ], "model": "voyage-multimodal-3.5" }inputsに base64 イメージが含まれるペイロードの例は次のとおりです。以下は、イメージ コンテンツがURLではなく base64 イメージである、上記と同等の例です。(Base64 のイメージは長くなる可能性があるため、この例では短縮されたバージョンのみが表示されます)。
{ "inputs": [ { "content": [ { "type": "text", "text": "This is a banana." }, { "type": "image_base64", "image_base64": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAA..." } ] } ], "model": "voyage-multimodal-3.5" }inputsリストには次の制約が適用されます。- リストには 1000 以下の入力を含めることができます。
- 各画像には、1600 万ドキュメント以下、またはサイズが 20 MB 以上である必要があります。
- ページのすべての 560 ドキュメントはトークンとしてカウントされ、リスト内の各入力は 32、000 トークンを超えてはなりません。すべての入力にわたるトークンの合計数は 320,000 を超えてはなりません}。
1以上、1000以下の要素。 -
使用するマルチモーダル埋め込みモデル。推奨モデル:
voyage-multimodal-3.5。値は
voyage-multimodal-3.5またはvoyage-multimodal-3です。 -
入力のタイプ。デフォルトは
nullです。その他のオプション:query、document。input_typeがnullの場合、埋め込みモデルはinputsを数値ベクトルに直接変換します。検索または検索の目的で、「クエリ」(この場合はテキストまたはイメージ)が、「ドキュメント」と呼ばれるデータのコレクション内で関連情報を検索する場合、inputsがクエリであるか、ドキュメントであるかは、設定によって指定されます。それぞれ、input_typeからquery、またはdocumentへ。このような場合、Voyage はベクトル化する前にinputsの先頭にプロンプトを自動的に付加し、検索するまたはタスク向けによりカスタマイズされたベクトルを作成します。入力はマルチモーダル化できるため、「クエリ」と「ドキュメント」はテキスト、画像、または両方のモーダルのインターリーブになります。input_type引数の有無にかかわらず生成された埋め込みは互換性があります。- 透過性のために、次のプロンプトが入力の前に追加されます。
queryの場合、プロンプトは「サポートされているドキュメントを取得するためのクエリを表します: 」。documentの場合、プロンプトは「取得用のドキュメントを表します: 」です。
値は
query、document、または null です。 -
コンテキストの長さ内に収まるように入力を切り捨てるかどうか。デフォルトは
trueです。trueの場合、埋め込みモデルによるベクトル化の前に、長さを超える入力はコンテキストの長さ内に収まるように切り捨てられます。切り捨てがイメージの途中で発生すると、イメージ全体が破棄されます。falseの場合、いずれかの入力がコンテキストの長さを超えるとエラーが発生します。
デフォルト値は
trueです。 -
埋め込みがエンコードされる形式。デフォルトは
nullです。nullの場合、埋め込みは浮動小数点数のリストとして表されます。base64の場合、埋め込みは base64 でエンコードされた単精度浮動小数点数の NumPy 配列として表されます。
値は
base64または null です。
curl \
--request POST 'https://ai.mongodb.com/v1/multimodalembeddings' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{"inputs":[{"content":[{"type":"text","text":"string"}]}],"model":"voyage-multimodal-3.5","input_type":"query","truncation":true,"output_encoding":"base64"}'
{
"inputs": [
{
"content": [
{
"type": "text",
"text": "string"
}
]
}
],
"model": "voyage-multimodal-3.5",
"input_type": "query",
"truncation": true,
"output_encoding": "base64"
}
{
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [
42.0
],
"index": 42
}
],
"model": "string",
"usage": {
"text_tokens": 42,
"image_pixels": 42,
"total_tokens": 42
}
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}