Semantic Search
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

テキスト埋め込みプロバイダーの設定

変更通知を受け取る(購読する)

テキスト埋め込みプロバイダーには2つの役割があります。

  1. インデックス作成時に、指定されたモデルを使用して、インデックス文書のフィールドから抽出されたテキストサンプルのテキスト埋め込み表現を作成します。
  2. 検索時には、指定されたモデルを使用して、検索バーに入力された検索語句のテキスト埋め込み表現を作成します。

使用するモデルは極めて重要です。ベクトル化されたデータの品質は、選択したモデルの品質に左右されます。

Liferay DXP 2026.Q1以降、テキスト埋め込みプロバイダーとしてOpenAIを採用したセマンティック検索が一般提供開始となります。 ベータ版機能フラグ「セマンティック検索追加プロバイダー(LPD-122920)」を有効にすることで、追加のプロバイダー(txtai、Hugging Face Inference Endpoints、Hugging Face Inference Provider)を選択できます。

選択したモデルは、検索フレーズのテキスト埋め込みと文書のテキスト埋め込みの類似性検索も行います。 モデルは、Hugging Face 埋め込みサービスと txtai 用に Hugging Face に格納されています。 OpenAI には、埋め込みプロバイダーとして OpenAI を使用している場合に選択できる事前学習済みモデルがあります。

テキスト埋め込みプロバイダーステータス
OpenAI一般的に入手可能
Hugging Face Inference APIベータ
ハグ顔推論エンドポイントベータ
txtaiベータ

OpenAIを使用する

Liferay DXP 2026.Q1+(一般提供開始)

Liferay DXP 2024.Q4+/Portal GA129+ (ベータ版)

OpenAI をセマンティック検索用のテキスト埋め込みプロバイダーとして構成できます。 APIキーを取得すれば、その 埋め込みモデル をセマンティック検索で使用できます。

OpenAIの設定とAPIキーの取得後、

  1. Liferay で、 グローバル メニュー (Global Menu) → コントロール パネルインスタンス設定 を開きます。 検索 カテゴリで、 セマンティック検索をクリックします。

  2. テキスト埋め込みプロバイダーとして OpenAI を選択します。

  3. OpenAIに必要な項目が表示されます。 設定フォームに記入してください。

APIキー: OpenAIから取得してください。

次元: 結果として得られる出力の次元数。 選択されたモデルによって、この機能が必要かどうか、および許容される値が決まります。 これは、モデルの出力の次元を削減するための OpenAI へのリクエスト時の指示です。 このプロパティをサポートしていないモデルにこのプロパティを渡すと、次の警告が表示されます。 このモデルは寸法の指定をサポートしていません。 どの次元を設定する必要があるかについては、 OpenAI モデルを参照してください。

モデル: OpenAI からモデルを選択してください

ユーザー: OpenAI が不正使用のリクエストを監視できるように、一意のユーザー識別子を入力してください。 詳細については、 OpenAI のドキュメント を参照してください。

選択したモデルに合わせて、適切な数の埋め込みベクトル寸法を入力します。

txtaiの設定と実行

ベータ機能

ここでのtxtaiの設定は、あくまでもデモンストレーションを目的としています。 詳細については、 txtai のドキュメント をお読みください。

txtaiのAPIにアクセスできるように設定してください。 Dockerコンテナでtxtaiを実行するには、 txtaiのドキュメント を参照するか、Linuxの場合は以下の基本的な手順に従ってください。

  1. txtai フォルダを作成し、 cd でそのフォルダに移動します。

  2. txtai フォルダから、Dockerfile をダウンロードします。

    curl https://raw.githubusercontent.com/neuml/txtai/master/docker/api/Dockerfile -O
    
  3. txtaiフォルダーにconfig.ymlファイルを作成し、以下の最小限の内容を与える:

    path: /tmp/index
    
    writable: False
    
    embeddings:
         path: sentence-transformers/msmarco-distilbert-base-dot-prod-v3
    
    重要

    選択したモデル が埋め込みパスに入力されました。

  4. txtaiフォルダから、

    docker build -t txtai-api .
    
  5. コンテナを起動します。

    docker run -p 8000:8000 --rm -it txtai-api
    

    モデルのサイズによっては、サービスの初期化に数分かかる場合があります。

  6. Liferay で、 グローバル メニュー (Global Menu) → コントロール パネルインスタンス設定 を開きます。 検索 カテゴリで、 セマンティック検索をクリックします。

    • テキスト埋め込みを有効にするtrue に設定します。
    • テキスト埋め込みプロバイダーとして txtai を選択します。
    • ホストアドレスとして ip:port を入力してください。 テスト設定に従ってローカルの Liferay インスタンスを実行する場合は、 localhost:8000 を使用します。
    • 上記のテスト設定に従った場合は、基本認証ユーザー名と基本認証パスワードのデフォルト値をそのままにしてください。
    • 埋め込みベクトルの次元については、デフォルト値(768)のままにしてください。
    重要

    埋め込みベクトルの次元は、設定済みのモデルの次元と一致している必要があります。 モデルは、 config.yml ファイルを使用して txtai で指定されます。 適切な次元数を設定するには、モデルのドキュメントを参照してください。

設定を保存する前に、 設定テスト をクリックして、Liferay が txtai サーバーに接続できること、および設定が正しいことを確認してください。

この設定例はデモンストレーションを目的としています。 ニーズに合った設定を見つけるには、 txtai のドキュメント を参照してください (たとえば、パフォーマンスを向上させるために GPU コンテナ を実行するなど)。

ハグ顔推論プロバイダーの使用

ベータ機能

ハグ顔推論プロバイダー を使用して、サーバーレスのハグ顔推論 API を介してモデルを活用します。 ハグ顔推論プロバイダーは、以前はハグ顔推論APIと呼ばれていました。

重要

ハグ顔推論プロバイダ は、テストおよび開発に適しています。 本番環境でテキスト埋め込みプロバイダーとしてHugging Faceを使用するには、 Hugging Face Inference Endpointsプロバイダーを使用します。

Hugging Face 推論プロバイダーを使用するには、まず Hugging Face アカウント を作成します。

アカウントを取得したら、

  1. Hugging Faceアカウントの設定画面を開き、アクセストークンをコピーしてください。

  2. Liferay で、 グローバル メニュー (Global Menu) → コントロール パネルインスタンス設定 を開きます。 検索 カテゴリで、 セマンティック検索をクリックします。

    テキスト埋め込みプロバイダーとして ハグ顔推論プロバイダー を選択し、コピーしたアクセストークンを入力します。

  3. https://huggingface.co/models?pipeline_tag=feature-extraction のリストからモデルを1つ選択してください。

  4. モデル名をモデルのタイトルとして入力してください。

  5. 選択したモデルに合わせて、適切な数の埋め込みベクトル寸法を入力します。

    重要

    埋め込みベクトルの次元は、設定済みのモデルの次元と一致している必要があります。

  6. その他のハグフェイス設定は、必要に応じて構成してください。

    モデルタイムアウト: タイムアウトする前にモデルがロードされるのを待つ時間(秒単位)を設定します。 モデルの読み込みに時間がかかる繰り返し処理を避けるため、ハグフェイスモデルをメモリに固定することができます。

設定を保存する前に、 テスト設定 ボタンをクリックして、Liferay が Hugging Face Inference Provider に接続できること、および設定が正しいことを確認してください。

ハグ顔推論エンドポイントの使用

ベータ機能

Hugging Face 推論エンドポイント プロバイダーを使用して、Hugging Face の管理された自動スケーリングインフラストラクチャにデプロイされたモデルを活用します。 Hugging Face Inference Endpointsサービスは、Hugging Faceが提供するエンタープライズグレードの有料テキスト埋め込みサービスです。 セマンティック検索ソリューションをテストおよび開発する際には、 推論プロバイダを使用できます。

セットアップの大部分はHugging Faceで完了します。 推論プロバイダを設定した後、

  1. Hugging Faceアカウントの設定画面を開き、アクセストークンをコピーしてください。

  2. Liferay で、 グローバル メニュー (Global Menu) → コントロール パネルインスタンス設定 を開きます。 検索 カテゴリで、 セマンティック検索をクリックします。

    テキスト埋め込みプロバイダーとして ハグ顔推論エンドポイント を選択し、コピーしたアクセストークンを入力します。

  3. ホストアドレスを入力してください。

  4. 選択したモデルに合わせて、適切な数の埋め込みベクトル寸法を入力します。

    重要

    埋め込みベクトルの次元は、設定済みのモデルの次元と一致している必要があります。

設定を保存する前に、 テスト設定 ボタンをクリックして、Liferay が Hugging Face Inference Endpoint に接続できること、および設定が正しいことを確認してください。

埋め込みベクトルの次元

埋め込みベクトルの次元は、モデル固有の設定です。 有効な次元については、埋め込みモデルのドキュメントを参照してください。 お使いの検索エンジンに対応した寸法のモデルを選択してください。

検索エンジン最大寸法
Elasticsearch 8.10以前2048
Elasticsearch 8.11以降4096
OpenSearch 2.12以降4096