すべてのプロダクト
Search
ドキュメントセンター

OpenSearch:カスタムモデル

最終更新日:Jun 22, 2026

OpenSearch Vector Search Edition はカスタムモデルをサポートしています。このページでは、カスタムモデルの追加、表示、編集、デバッグ、無効化、復元ができます。

モデルの作成

Model Management > Custom Models に移動し、Create Model をクリックします。

表示されるダイアログボックスで、JSON エディターを使用して設定テンプレートを入力します。主なフィールドには、modelNameリクエスト (headerparametersmethod を含む)、レスポンスmodelTypeurl があります。モデルを設定した後、[OK] をクリックします。

カスタムモデルのフォーマット

{
  "modelName": "custom_model",
  "modelType": "text_embedding",
  "dimension": 1536,
  "url": "http://xxx/api/v2/services/embeddings",
  "method": "POST",
  "request": {
    "header": {
      "Authorization": "fj42091fjlgnlsvu023nva",
      "Content-Type": "application/json"
    },
    "urlParams": {
      "build": {},
      "search": {}
    },
    "requestBody": "{\"input\": [\"%{input}\"], \"input_type\": \"%{input_type}\"}",
    "parameters": {
      "build": {
        "input_type": "document"
      },
      "search": {
        "input_type": "query"
      }
    }
  },
  "response": {
    "embeddings": "$.result.embeddings[*].embedding"
  }
}

パラメーター

パラメーター

説明

modelName

モデルの名前。

modelType

モデルのタイプ。このパラメーターには、次のいずれかの値を設定できます:

  • text_embedding: Dense テキストモデル。

  • text_sparse_embedding: Sparse テキストモデル。

  • image_embedding: 画像ベクトルモデル。

  • image_analyze: 画像コンテンツ分析モデル。

dimension

モデルによって生成されるベクトルの次元。このパラメーターは、modelTypetext_embedding または image_embedding に設定されている場合に必須です。

url

モデルサービスエンドポイント。

method

モデルサービスにアクセスするための HTTP メソッド。サポートされているメソッドは POSTPUT です。

request

モデルサービスに送信されるリクエストを定義します。

request.header

HTTP リクエストヘッダー。これらのヘッダーはそのままモデルサービスに渡されます。

request.urlParams

URL に含めるパラメーター。一部のモデルサービスでは、?abc=123 のように URL でパラメーターを渡す必要があります。

request.urlParams.build

インデックス作成フェーズで渡されるパラメーター。

request.urlParams.search

クエリフェーズで渡されるパラメーター。

request.requestBody

リクエストボディのテンプレート文字列。

  • テンプレート変数のフォーマット:

    %{parameter_name}。 例: {"input": "%{input}"}

  • 組み込み変数:

    • %{input}: 入力テキストを表します。

    • %{modal}: モダリティを表します。マルチモーダルモデルでこの変数を使用して、クエリのモダリティを指定します。

request.parameters

フェーズ固有のリクエストボディパラメーターを定義します。インデックス作成フェーズとクエリフェーズで異なるパラメーターが必要な場合に使用します。

  • build: インデックス作成フェーズのパラメーター。

  • search: クエリフェーズのパラメーター。

response

JSONPath 式を使用してモデルサービスのレスポンスを解析する方法を指定します。

JSONPath

演算子

演算子

説明

$

ルート要素を表します。パスは $ で始まる必要があります。

*

任意の値に一致するワイルドカード。プロパティ名または配列インデックスの代わりに使用できます。

.<name>

オブジェクトのプロパティを選択します。

[<number>]

インデックスで配列要素を選択します。

{
  "store": {
    "books": [
      {
        "title": "java",
        "price": 56
      },
      {
        "title": "c++",
        "price": 99
      }
    ]
  }
}
  • すべての書籍のタイトルを抽出する場合:

    • JSONPath: $.store.books[*].title

    • 結果: ["java", "c++"]

  • 最初の書籍のタイトルを抽出する場合:

    • JSONPath: $.store.books[0].title

    • 結果: ["java"]

モデル管理

  • デバッグ: モデル一覧 > Custom Models ページで、アクション列の Debug をクリックしてモデルをテストします。

  • 無効化: モデルを無効化すると、そのモデルを使用するテーブルはデータとクエリを処理できなくなります。注意して実行してください。

  • 削除: 無効化されたモデルのみ削除できます。

  • 復元: 無効化されたモデルを復元できます。

モデルの呼び出し

テーブルを設定する際、データの前処理が必要なフィールドのConfigureをクリックします。その後、[モデル] リストからご自身のカスタムモデルを選択できます。

[モデル] ドロップダウンリストでは、組み込みモデルが上部に表示されます。カスタムモデルはリストの下部に表示され、「カスタム test1」のように カスタム というプレフィックスが付きます。