跳到主要内容

OpenAI

备注

これは、Quarkus(Quarkus RESTクライアントを使用)とSpring(SpringのRestClientを使用)で最もよく機能するOpenAI REST APIのカスタムJava実装を使用するOpenAI統合のドキュメントです。

LangChain4jは埋め込みモデルを使用するためにOpenAIとの4つの異なる統合を提供しており、これは#1です:

  • 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を使用します。

Maven依存関係

通常のJava

<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-open-ai</artifactId>
<version>1.0.0-rc1</version>
</dependency>

Spring Boot

<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-open-ai-spring-boot-starter</artifactId>
<version>1.0.0-beta4</version>
</dependency>

OpenAiEmbeddingModelの作成

通常のJava

EmbeddingModel model = OpenAiEmbeddingModel.builder()
.apiKey(System.getenv("OPENAI_API_KEY"))
.modelName("text-embedding-3-small")
.build();

Spring Boot

application.propertiesに追加:

# 必須プロパティ:
langchain4j.open-ai.embedding-model.api-key=${OPENAI_API_KEY}
langchain4j.open-ai.embedding-model.model-name=text-embedding-3-small

# オプションプロパティ:
langchain4j.open-ai.embedding-model.base-url=...
langchain4j.open-ai.embedding-model.custom-headers=...
langchain4j.open-ai.embedding-model.dimensions=...
langchain4j.open-ai.embedding-model.log-requests=...
langchain4j.open-ai.embedding-model.log-responses=...
langchain4j.open-ai.embedding-model.max-retries=...
langchain4j.open-ai.embedding-model.organization-id=...
langchain4j.open-ai.embedding-model.project-id=...
langchain4j.open-ai.embedding-model.timeout=...
langchain4j.open-ai.embedding-model.user=...