ドキュメントチャンク向けにコンテキストに応じたベクトル埋め込みを作成します。これらの埋め込みにより、各チャンク内のローカルの詳細と、ドキュメント全体からグローバルなコンテキストの両方が取得されます。
このエンドポイントとなる接続されたデバイスは、クエリ、完全なドキュメント、またはドキュメントチャンクを受け入れ、ドキュメント全体でコンテキストが認識される埋め込みを返します。
body
必須
-
リストのリスト。各内部リストには、ベクトル化されるクエリ、ドキュメント、またはドキュメントチャンクが含まれます。
inputs内の各内部リストは、まとめられているテキスト要素のセットを表します。リスト内の各要素は独立してエンコードされるだけでなく、同じリスト内の他の要素のコンテキストもエンコードされます。inputs = [["text_1_1", "text_1_2", ..., "text_1_n"], ["text_2_1", "text_2_2", ..., "text_2_m"]]ドキュメント チャンク。ほとんどの場合、各内部リストには 1 つのドキュメントのチャンクが含まれます。チャンクはドキュメント内の位置順に並べられます。この場合、以下のとおり動作します。
inputs = [["doc_1_chunk_1", "doc_1_chunk_2", ..., "doc_1_chunk_n"], ["doc_2_chunk_1", "doc_2_chunk_2", ..., "doc_2_chunk_m"]]各チャンクは 同じドキュメントの他のチャンクとコンテキスト内でエンコードされるため、よりコンテキストに適した埋め込みが得られます。提供されるチャンクには重複が含まれないようにしてください。
クエリとドキュメントのコンテキストに依存しない動作。内部リストごとに 1 つの要素がある場合、各テキストは独立して埋め込まれます。これは標準(コンテキストに依存しない)埋め込みと同様です。
inputs = [["query_1"], ["query_2"], ..., ["query_k"]] inputs = [["doc_1"], ["doc_2"], ..., ["doc_k"]]したがって、入力がクエリの場合、各内部リストには上記のように 1 つのクエリ(長さ 1)を含める必要があり、
input_typeはqueryに設定する必要があります。inputsリストには次の制約が適用されます。- リストには、1,000 より多くの入力を含めることはできません。
- すべての入力にわたるトークンの合計数は 120K を超えてはなりません。
- すべての入力にわたるチャンクの合計数は 16K を超えてはなりません。
クエリの場合、リストには 1 つのクエリのみが含まれます。ドキュメントまたはドキュメントチャンクの場合、リストには 1 つのドキュメントのすべてのチャンクが、ドキュメント内の位置の順に含まれます。または、ドキュメント全体が単一のチャンクとして提供される場合もあります。リスト内のトークンの合計数は、32,000 トークンを超えてはなりません。
1以上、1000以下の要素。クエリの場合、リストには 1 つのクエリのみが含まれます。ドキュメントまたはドキュメントチャンクの場合、リストには 1 つのドキュメントのすべてのチャンクが、ドキュメント内の位置の順に含まれます。または、ドキュメント全体が単一のチャンクとして提供される場合もあります。リスト内のトークンの合計数は、32,000 トークンを超えてはなりません。
少なくとも
1要素。各 の最小長は1です。 -
使用するコンテキスト付き埋め込みモデル。推奨モデル:
voyage-context-3。値は
voyage-context-3です。 -
入力テキストのタイプ。デフォルトは
nullです。その他のオプション:query、document。input_typeがnullの場合、埋め込みモデルは入力を数値ベクトルに直接変換します。検索するまたは検索する目的で、「クエリ」が「ドキュメント」と呼ばれるデータのコレクション内から関連情報を検索する場合、input_typeをそれぞれqueryまたはdocumentに設定して、入力がクエリであるか、ドキュメントであるかを指定します。このような場合、Voyage はベクトル化する前にinputsの先頭にプロンプトを自動的に付加し、検索するまたはタスク向けによりカスタマイズされたベクトルを作成します。input_type引数の有無にかかわらず生成された埋め込みは互換性があります。- 透過性のために、次のプロンプトが入力の前に追加されます。
queryの場合、プロンプトは「サポートされているドキュメントを取得するためのクエリを表します: 」。documentの場合、プロンプトは「取得用のドキュメントを表します: 」です。
値は
query、document、または null です。 -
結果として得られる出力埋め込みの次元数。デフォルトは
nullです。voyage-context-3は次のoutput_dimension値をサポートしています。2048、1024(デフォルトは)、512、256nullに設定されている場合、モデルはデフォルト値 1024 を使用します。値は、
256、512、1024、2048、またはnullです。 -
返される埋め込みのデータ型。デフォルトは
floatです。その他のオプション:int8、uint8、binary、ubinaryfloat: 返される各埋め込みは、32 ビット(4 バイト)の単精度浮動小数点数のリストです。これはデフォルトで、最高の精度および検索精度を提供します。int8とuint8: 返される各埋め込みは、それぞれ -128 から 127、0 から 255 までの 8 ビット(1 バイト)の整数のリストであり、その範囲です。binaryとubinary: 返される各埋め込みは、ビット圧縮され、量子化された単一ビット埋め込み値を表す 8 ビット整数のリストです。binaryはint8、ubinaryはuint8を表します。返される整数のリストの長さは、output_dimensionの 1/8 です(埋め込みの実際の単位)。binary型はオフセット バイナリ メソッドを使用します。
デフォルト値は
floatです。 -
埋め込みがエンコードされる形式。デフォルトは
nullです。その他のオプション:base64。nullの場合、各埋め込みは、output_dtypeがfloatに設定されている場合は浮動小数点数の配列であり、output_dtypeの他のすべての値については整数の配列(int8、uint8、binary、ubinary)。詳細については、output_dtypeを参照してください。base64の場合、埋め込みは次の base64 でエンコードされた NumPy 配列として表されます。- 浮動小数点数(numpy.float32)
output_dtypeの場合はfloatに設定します。 - 符号付き整数(numpy.int8)
output_dtypeの場合はint8またはbinaryに設定します。 - 符号なし整数(numpy.uint8)
output_dtypeの場合はuint8またはubinaryに設定します。
- 浮動小数点数(numpy.float32)
値は
base64または null です。
curl \
--request POST 'https://ai.mongodb.com/v1/contextualizedembeddings' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{"inputs":[["string"]],"model":"voyage-context-3","input_type":"query","output_dimension":256,"output_dtype":"float","encoding_format":"base64"}'
{
"inputs": [
[
"string"
]
],
"model": "voyage-context-3",
"input_type": "query",
"output_dimension": 256,
"output_dtype": "float",
"encoding_format": "base64"
}
{
"object": "list",
"data": [
{
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [
42.0
],
"index": 42
}
],
"index": 42
}
],
"model": "string",
"usage": {
"total_tokens": 42
}
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}
{
"detail": "string"
}