Azure OpenAI
备注
これはAzure OpenAI
統合のドキュメントで、MicrosoftのAzure SDKを使用しており、高度なAzure認証メカニズムを含むMicrosoft Javaスタックを使用している場合に最適です。
LangChain4jは埋め込みモデルを使用するためにOpenAIとの4つの異なる統合を提供しており、これは#3です:
- OpenAIはOpenAI REST APIのカスタムJava実装を使用し、Quarkus(Quarkus RESTクライアントを使用)とSpring(SpringのRestClientを使用)で最もよく機能します。
- OpenAI 公式 SDKは公式OpenAI Java SDKを使用します。
- Azure OpenAIはMicrosoftのAzure SDKを使用し、高度なAzure認証メカニズムを含むMicrosoft Javaスタックを使用している場合に最適です。
- GitHub ModelsはGitHubモデルにアクセスするためにAzure AI推論APIを使用します。
Azure OpenAIはいく つかの埋め込みモデル(text-embedding-3-small
、text-embedding-ada-002
など)を提供しており、
これらはテキストや画像を次元ベクトル空間に変換するために使用できます。
Maven依存関係
通常のJava
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-azure-open-ai</artifactId>
<version>1.0.0-beta4</version>
</dependency>
Spring Boot
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-azure-open-ai-spring-boot-starter</artifactId>
<version>1.0.0-beta4</version>
</dependency>
AzureOpenAiEmbeddingModel
の作成
通常のJava
EmbeddingModel model = AzureOpenAiEmbeddingModel.builder()
.apiKey(System.getenv("AZURE_OPENAI_KEY"))
.deploymentName("text-embedding-3-small")
.endpoint("https://langchain4j.openai.azure.com/")
...
.build();
Spring Boot
application.properties
に追加:
langchain4j.azure-open-ai.embedding-model.endpoint=https://langchain4j.openai.azure.com/
langchain4j.azure-open-ai.embedding-model.service-version=...
langchain4j.azure-open-ai.embedding-model.api-key=${AZURE_OPENAI_KEY}
langchain4j.azure-open-ai.embedding-model.deployment-name=text-embedding-3-small
langchain4j.azure-open-ai.embedding-model.timeout=...
langchain4j.azure-open-ai.embedding-model.max-retries=...
langchain4j.azure-open-ai.embedding-model.log-requests-and-responses=...
langchain4j.azure-open-ai.embedding-model.user-agent-suffix=...
langchain4j.azure-open-ai.embedding-model.dimensions=...
langchain4j.azure-open-ai.embedding-model.customHeaders=...