Anypoint Studio を使用した MuleSoft Vectors Connector 1.0 の設定

Anypoint Studio (Studio) エディターは、Mule アプリケーション、プロパティ、および設定ファイルの設計と更新に役立ちます。

Studio でコネクタを追加および設定する手順は、次のとおりです。

「アプリケーションログの表示」​で説明されているように、コネクタを実行するときに、リアルタイムでアプリケーションログを表示して問題を確認できます。

Studio で初めてコネクタを設定する場合は、​「Anypoint Studio を使用したコネクタの設定」​を参照してください。このトピックを参照した後、コネクタ項目についての詳細情報が必要な場合は、​「MuleSoft Vectors Connector リファレンス」​を参照してください。

Mule プロジェクトを作成する

Studio で、MuleSoft Vectors 用 Anypoint Connector (MuleSoft Vectors Connector) を追加および設定する新しい Mule プロジェクトを作成します。

  1. Studio で、​[File (ファイル)] > [New (新規)] > [Mule Project (Mule プロジェクト)]​ を選択します。

  2. Mule プロジェクトの名前を入力して、​[Finish (完了)]​ をクリックします。

コネクタを Mule プロジェクトに追加する

MuleSoft Vectors Connector を Mule プロジェクトに追加して、XML コードにコネクタの名前空間およびスキーマの場所を自動的に入力し、プロジェクトの ​pom.xml​ ファイルに必須の連動関係を追加します。

  1. [Mule Palette (Mule パレット)]​ で、​[(X) Search in Exchange ((X) Exchange 内を検索)]​ をクリックします。

  2. [Add Dependencies to Project (連動関係をプロジェクトに追加)]​ で、検索項目に「​mulesoft vectors​」と入力します。

  3. [Available modules (使用可能なモジュール)]​ で ​[MuleSoft Vectors Connector]​ をクリックします。

  4. [Add (追加)]​ をクリックします。

  5. [Finish (完了)]​ をクリックします。

Studio でコネクタを Mule プロジェクトに追加しても、Studio ワークスペースの他のプロジェクトはそのコネクタを使用できません。

共有ライブラリの設定

コネクタの全体的なサイズを減らし、不要な連動関係の追加を回避するため、すべての省略可能なライブラリはコネクタから削除されており、特定のユースケースに応じて必要なライブラリのみを追加できます。Mule Maven プラグインを使用して、必要な連動関係をプロジェクトの ​pom.xml​ ファイルに追加できます。共有ライブラリの設定方法についての詳細は、​「共有ライブラリの設定」​を参照してください。

エンベディングモデル

設定

...
<sharedLibraries>
	<sharedLibrary>
		<groupId>dev.langchain4j</groupId>
		<artifactId>langchain4j-core</artifactId>
	</sharedLibrary>
    ...
</sharedLibraries>
...
<dependencies>
	<dependency>
		<groupId>dev.langchain4j</groupId>
		<artifactId>langchain4j-core</artifactId>
		<version>1.0.1</version>
	</dependency>
    ...
</dependencies>
...

ベクトルストア

接続

  • AlloyDB

  • Chroma

  • Elasticsearch

  • Milvus

  • Amazon OpenSearch

  • PGVector

  • Pinecone

  • Qdrant

  • Weaviate

  • MongoDB Atlas

  • Ephemeral File

...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-azure-ai-search</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-azure-ai-search</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-community-alloydb-pg</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-community-alloydb-pg</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-chroma</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-chroma</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-elasticsearch</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-elasticsearch</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-milvus</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-milvus</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-opensearch</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-opensearch</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-pgvector</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-pgvector</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
Pinecone を Milvus または Qdrant で使用することはできません。
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-pinecone</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-pinecone</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-qdrant</artifactId>
  </sharedLibrary>
  <sharedLibrary>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-netty-shaded</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-qdrant</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-netty-shaded</artifactId>
      <version>1.65.1</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-weaviate</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-weaviate</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
  <sharedLibrary>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-mongodb-atlas</artifactId>
  </sharedLibrary>
  ...
</sharedLibraries>
...
<dependencies>
  <dependency>
      <groupId>dev.langchain4j</groupId>
      <artifactId>langchain4j-mongodb-atlas</artifactId>
      <version>1.0.1-beta6</version>
  </dependency>
  ...
</dependencies>
...
...
<sharedLibraries>
		<sharedLibrary>
			<groupId>dev.langchain4j</groupId>
			<artifactId>langchain4j</artifactId>
		</sharedLibrary>
    ...
</sharedLibraries>
...
<dependencies>
		<dependency>
			<groupId>dev.langchain4j</groupId>
			<artifactId>langchain4j</artifactId>
			<version>1.0.1</version>
		</dependency>
    ...
</dependencies>
...

ソースの設定

ソースは、指定された条件が満たされたときにフローを開始します。 次のソースのいずれかを MuleSoft Vectors Connector で使用するように設定できます。

  • [HTTP] > [Listener]

    設定されたホストとポートで要求を受信するたびにフローを開始する

  • Scheduler

    たとえば、​[HTTP] > [Listener]​ ソースを設定する手順は、次のとおりです。

    1. [Mule Palette (Mule パレット)]​ で、​[HTTP] > [Listener]​ を選択します。

    2. [Listener]​ を Studio キャンバスにドラッグします。

    3. [Listener (リスナー)]​ 設定画面で、必要に応じて ​[Display Name (表示名)]​ 項目の値を変更します。

    4. [Path (パス)]​ 項目の値を指定します。

    5. [Connector configuration (コネクタ設定)]​ 項目の横にあるプラス記号 (​+​) をクリックして、アプリケーション内の ​[HTTP] > [Listener]​ ソースのすべてのインスタンスで使用できるグローバル要素を設定します。

    6. [General (一般)]​ タブで、コネクタの接続情報を指定します。

    7. [TLS]​ タブで、必要に応じてコネクタの TLS 情報を指定します。

    8. [Advanced (詳細)]​ タブで、必要に応じて再接続戦略を含む再接続情報を指定します。

    9. [Test Connection (接続をテスト)]​ をクリックして、Mule が指定されたサーバーに接続できることを確認します。

    10. [OK]​ をクリックします。

フローにコネクタの操作を追加する

フローにコネクタの操作を追加するときは、そのコネクタで実行するアクションを指定しています。

MuleSoft Vectors Connector の操作を追加する手順は、次のとおりです。

  1. [Mule Palette (Mule パレット)]​ で ​[MuleSoft Vectors Connector]​ を選択し、追加する操作を選択します。

  2. その操作を Studio キャンバスのソースの横にドラッグします。

コネクタのグローバル要素を設定する

コネクタを設定する場合、アプリケーション内のそのコネクタのすべてのインスタンスで使用できるグローバル要素を設定します。グローバル要素を設定するには、コネクタが対象のベクトルストアとエンベディングプロバイダーにアクセスするために必要な認証ログイン情報を指定する必要があります。

ANT スタイルのプロパティプレースホルダーを含む設定ファイルを参照するか (推奨)、グローバル設定プロパティに認証ログイン情報を入力できます。プロパティプレースホルダーを使用する利点とその設定方法については、​「Anypoint Connector 設定」​を参照してください。

MuleSoft Vectors Connector のグローバル要素を設定する手順は、次のとおりです。

  1. Studio キャンバスで操作を選択します。

  2. 操作のプロパティ画面で、[Add (追加)] (​+​) アイコンをクリックして、グローバル要素設定項目にアクセスします。

  3. 次の設定から選択します。

    • エンベディング設定

    • ストア設定

    • 変換設定

  4. 操作種別に応じて項目に入力します。

  5. [OK]​ をクリックします。

その他のコネクタ項目の設定

コネクタのグローバル要素を設定したら、他の必須項目を設定します。必須項目は、使用するコネクタ操作によって異なります。

各操作種別の詳細な設定情報は、​「MuleSoft Vectors - 追加設定情報」​を参照してください。

アプリケーションログの表示

問題を確認するため、アプリケーションログを次の方法で表示できます。

  • アプリケーションを Anypoint Platform から実行している場合、アプリケーションログ出力は Anypoint Studio のコンソールウィンドウに表示されます。

  • コマンドラインから Mule を使用してアプリケーションを実行している場合、アプリケーションログ出力はオペレーティングシステムコンソールに表示されます。

アプリケーションのログファイル (​log4j2.xml​) でログファイルパスがカスタマイズされていない場合、デフォルトの場所 ​MULE_HOME/logs/<app-name>.log​ でアプリケーションログを表示することもできます。ログパスは、アプリケーションログファイル ​log4j2.xml​ で設定できます。