POST / embeddeds

指定されたテキスト入力に対してベクトル埋め込みを作成します。このエンドポイントとなる接続されたデバイスは、単一のテキスト string またはテキスト string のリストを受け入れ、それに対応するベクトル埋め込みを返します。

セマンティック検索と取得のタスクでは、input_type パラメーターを query または document に設定して、モデルがベクトルを作成する方法を最適化します。

application/ JSON

body 必須

  • 入力 string | 配列[string] 必須

    埋め込む単一のテキスト string またはテキスト string のリスト(["I like cats", "I also like dogs"] など)。

    制約:

    • 最大リスト長: 1,000 項目
    • 最大合計トークン: voyage-3.5-litevoyage-4-lite で 1M voyage-3.5voyage-4voyage-2 では 320K、 voyage-3-largevoyage-4-largevoyage-code-3voyage-finance-2voyage-law-2 の 120K
    次の 1 つ:

    最小長は 1 です。

    少なくとも 1 を、1000 以下の要素を含めます。各 の最小長は 1 です。

  • モデル string 必須

    使用する埋め込みモデル。推奨モデル: voyage-4-largevoyage-4voyage-4-litevoyage-code-3voyage-finance-2voyage-law-2

    値は、voyage-context-3voyage-4voyage-4-litevoyage-4-largevoyage-3.5voyage-3.5-litevoyage-3-largevoyage-code-3voyage-multimodal-3voyage-finance-2voyage-law-2、または voyage-code-2

  • input_type

    入力テキストの型。このパラメーターを使用して、セマンティック検索および取得タスクの埋め込みを最適化します。

    オプション:

    • null (デフォルト): モデルは、追加のプロンプトなしで入力を数値ベクトルに直接変換します。
    • query: 入力が検索クエリを表す場合に使用します。モデルは、検索用の埋め込みを最適化するために「 サポートドキュメントを検索するためのクエリを表現します 」を先頭に付けます。
    • document: 入力が検索するドキュメントを表す場合に使用します。モデルは、検索用の埋め込みを最適化するために「Representation for ドキュメント 」を先頭に付けます。

    セマンティック検索と取得のタスクでは、常にこのパラメータを query または document に必要に応じて設定します。input_type 引数の有無にかかわらず生成された埋め込みは互換性があります。

    値は querydocument、または null です。

  • 切り捨て ブール値

    コンテキストの長さを超える入力テキストを切り捨てるかどうか。

    • true (デフォルト): コンテキストの長さを超える入力テキストは、ベクトル化の前に自動的に切り捨てられます。
    • false: 入力テキストがコンテキストの長さを超えると、エラーが返されます。

    デフォルト値はtrueです。

  • output_d読み 整数 | null

    出力埋め込みの次元数。

    ほとんどのモデルは、単一のデフォルトの単位のみをサポートします。 voyage-4-largevoyage-4voyage-4-litevoyage-3-largevoyage-3.5voyage-3.5-litevoyage-code-3 のモデルは、次の値をサポートしています。256、512、1024(デフォルト)、と 2048。

    モデルのデフォルトの単位を使用するには、null に設定します。

    値は、25651210242048、またはnullです。

  • output_dtype string

    返される埋め込みのデータ型。

    オプション:

    • float (デフォルト): 32 ビットの単精度浮動小数点数。最高の精度と検索精度を提供します。すべてのモデルでサポートされています。
    • int8: -128 から 127 の範囲の 8 ビット符号付き整数。 voyage-4-largevoyage-4voyage-4-litevoyage-3-largevoyage-3.5voyage-3.5-litevoyage-code-3 でサポートされています。
    • uint8: 0 から 255 の範囲の 8 ビット符号なし整数。 voyage-4-largevoyage-4voyage-4-litevoyage-3-largevoyage-3.5voyage-3.5-litevoyage-code-3 でサポートされています。
    • binary: ビット圧縮、量子化された単一ビット埋め込み値は int8 と表されます。返されるリストの長さは、output_dimension の 1/8 です。オフセット バイナリ メソッドを使用します。 voyage-4-largevoyage-4voyage-4-litevoyage-3-largevoyage-3.5voyage-3.5-litevoyage-code-3 でサポートされています。
    • ubinary: ビット圧縮、量子化された単一ビット埋め込み値は uint8 と表されます。返されるリストの長さは、output_dimension の 1/8 です。 voyage-4-largevoyage-4voyage-4-litevoyage-3-largevoyage-3.5voyage-3.5-litevoyage-code-3 でサポートされています。

    値は、floatint8uint8binary、または ubinary です。デフォルト値は float です。

  • encryption_format

    応答内の埋め込みがエンコードされる形式。

    オプション:

    • null (デフォルト): 埋め込みは配列として返されます。output_dtypefloat の場合、各埋め込みは浮動小数点数の配列になります。その他の output_dtype 値(int8uint8binaryubinary)の場合、各埋め込みは整数の配列です。
    • base64: 埋め込みは、次のデータ型を持つ base64 でエンコードされた NumPy 配列として返されます。
      • numpy.float32 output_dtypefloat の場合
      • numpy.int8 output_dtypeint8 または binary の場合
      • numpy.uint8 output_dtypeuint8 または ubinary の場合

    値は base64 または null です。

応答

  • 200 application/ JSON

    成功

    応答属性の非表示 応答属性の表示 オブジェクト
    • オブジェクト string 必須

      Realm オブジェクトタイプ。常に「list」を返します。

      値は list です。

    • データ array[オブジェクト] 必須

      入力テキストごとに 1 つある、埋め込みオブジェクトの配列。

      データ属性の非表示 データ属性の表示 オブジェクト
      • オブジェクト string 必須

        Realm オブジェクトタイプ。常に「埋め込み」を返します。

        値は embedding です。

      • 埋め込み 配列[number] | string 必須

        埋め込みベクトル。形式はencoding_format パラメータによって異なります。

        • encoding_formatnull の場合: 数値の配列(output_dtypefloat の場合に浮動小数、int8uint8binaryubinary の整数)
        • encoding_formatbase64 の場合: base64 でエンコードされた string
        次の 1 つ:

        配列形式( encryption_format が null の場合)

        base64 でエンコードされた形式( encryption_format が base64 の場合)

      • index integer 必須

        入力リスト内のこの埋め込みのインデックス。

    • モデル string 必須

      埋め込みを生成するために使用されるモデルの名前。

    • 使用法 オブジェクト 必須
      使用属性を非表示 使用属性の表示 オブジェクト
      • total_tokens integer 必須

        すべての入力テキストで処理されたトークンの合計数。

  • 400 application/ JSON

    Invalid Request

    応答属性を非表示 応答属性の表示 オブジェクト
    • 詳細 string

      リクエストは無効です。このエラーは、無効なJSON、無効なパラメータ型、誤ったデータ型、バッチするサイズが大きすぎる、トークンの合計が制限を超える、または例内のトークンがコンテキストの長さを超えるために発生する可能性があります。

  • 401 application/ JSON

    許可されていない

    応答属性を非表示 応答属性の表示 オブジェクト
    • 詳細 string

      認証 が無効です。モデルAPIキーが Authorization ヘッダーに Bearer VOYAGE_API_KEY として正しく指定されていることを確認します。

  • 403 application/ JSON

    Forbidden

    応答属性を非表示 応答属性の表示 オブジェクト
    • 詳細 string

      アクセスは禁止されています。リクエストのリクエスト元IPアドレスが許可されていない場合、この状況が発生することがあります。

  • 429 application/ JSON

    レート制限を超えました

    応答属性を非表示 応答属性の表示 オブジェクト
    • 詳細 string

      レート制限を超えました。リクエスト頻度またはトークン使用量が高すぎます。リクエストレートを減らすか、再試行する前に待機します。

  • 500 application/ JSON

    内部サーバーエラー

    応答属性を非表示 応答属性の表示 オブジェクト
    • 詳細 string

      サーバーで予期しないエラーが発生しました。短時間待機した後に、リクエストを再試行します。

  • 502 application/ JSON

    バード ゲートウェイ

    応答属性を非表示 応答属性の表示 オブジェクト
    • 詳細 string

      サーバーはアップストリームサーバーから無効な応答を受信しました。短時間待機した後に、リクエストを再試行します。

  • 503 application/ JSON

    サービスは利用できません

    応答属性を非表示 応答属性の表示 オブジェクト
    • 詳細 string

      トラフィック量やメンテナンスが多いため、サービスは一時的に利用できなくなります。短時間待機した後に、リクエストを再試行します。

  • 504 application/ JSON

    ゲートウェイ タイムアウト

    応答属性を非表示 応答属性の表示 オブジェクト
    • 詳細 string

      サーバーは上流サーバーから時間に応じた応答を受信しませんでした。短時間待機した後に、リクエストを再試行します。

POST /embeddeds
curl \
 --request POST 'https://ai.mongodb.com/v1/embeddings' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "Content-Type: application/json" \
 --data '{"input":"string","model":"voyage-context-3","input_type":"query","truncation":true,"output_dimension":256,"output_dtype":"float","encoding_format":"base64"}'
リクエスト例
{
  "input": "string",
  "model": "voyage-context-3",
  "input_type": "query",
  "truncation": true,
  "output_dimension": 256,
  "output_dtype": "float",
  "encoding_format": "base64"
}
応答の例(200)
{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "embedding": [
        42.0
      ],
      "index": 42
    }
  ],
  "model": "string",
  "usage": {
    "total_tokens": 42
  }
}
応答の例(400)
{
  "detail": "string"
}
応答の例(401)
{
  "detail": "string"
}
応答の例(403)
{
  "detail": "string"
}
応答の例(429)
{
  "detail": "string"
}
応答の例(500)
{
  "detail": "string"
}
応答の例(502)
{
  "detail": "string"
}
応答の例(503)
{
  "detail": "string"
}
応答の例(504)
{
  "detail": "string"
}