OpenSearch Vector Search Edition はカスタムモデルをサポートしています。このページでは、カスタムモデルの追加、表示、編集、デバッグ、無効化、復元ができます。
モデルの作成
Model Management > Custom Models に移動し、Create Model をクリックします。
表示されるダイアログボックスで、JSON エディターを使用して設定テンプレートを入力します。主なフィールドには、modelName、リクエスト (header、parameters、method を含む)、レスポンス、modelType、url があります。モデルを設定した後、[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 |
モデルのタイプ。このパラメーターには、次のいずれかの値を設定できます:
|
|
dimension |
モデルによって生成されるベクトルの次元。このパラメーターは、 |
|
url |
モデルサービスエンドポイント。 |
|
method |
モデルサービスにアクセスするための HTTP メソッド。サポートされているメソッドは |
|
request |
モデルサービスに送信されるリクエストを定義します。 |
|
request.header |
HTTP リクエストヘッダー。これらのヘッダーはそのままモデルサービスに渡されます。 |
|
request.urlParams |
URL に含めるパラメーター。一部のモデルサービスでは、 |
|
request.urlParams.build |
インデックス作成フェーズで渡されるパラメーター。 |
|
request.urlParams.search |
クエリフェーズで渡されるパラメーター。 |
|
request.requestBody |
リクエストボディのテンプレート文字列。
|
|
request.parameters |
フェーズ固有のリクエストボディパラメーターを定義します。インデックス作成フェーズとクエリフェーズで異なるパラメーターが必要な場合に使用します。
|
|
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」のように カスタム というプレフィックスが付きます。