GitHub モデル
备注
これは、GitHub モデルにアクセスするために Azure AI 推論 API を使用する GitHub Models
統合のドキュメントです。
LangChain4j はチャットモデルを使用するための OpenAI との 4 つの異なる統合を提供しており、これは #4 です:
- 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 モデル は、GitHub モデルにアクセスするために Azure AI 推論 API を使用します。
生成 AI アプリケーションを開発したい場合、GitHub モデルを使用して AI モデルを無料で見つけて実験することができま す。 アプリケーションを本番環境に移行する準備ができたら、有料の Azure アカウントからのトークンに切り替えることができます。
GitHub モデルのドキュメント
Maven 依存関係
通常の Java
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-github-models</artifactId>
<version>1.0.0-beta4</version>
</dependency>
GitHub トークン
GitHub モデルを使用するには、認証のために GitHub トークンを使用する必要があります。
トークンは GitHub 開発者設定 > 個人アクセストークン で作成および管理されます。
トークンを取得したら、環境変数として設定し、コードで使用できます:
export GITHUB_TOKEN="<あなたの GitHub トークンをここに入力>"
GitHub トークンを使用した GitHubModelsChatModel
の作成
通常の Java
GitHubModelsChatModel model = GitHubModelsChatModel.builder()
.gitHubToken(System.getenv("GITHUB_TOKEN"))
.modelName("gpt-4o-mini")
.build();
これにより GitHubModelsChatModel
のインスタンスが作成されます。
モデルパラメータ(例:temperature
)は GitHubModelsChatModel
のビルダーで値を提供することでカスタマイズできます。
Spring Boot
GitHubModelsChatModelConfiguration
Spring Bean を作成します:
package com.example.demo.configuration.github;
import dev.langchain4j.model.chat.ChatModel;
import dev.langchain4j.model.github.GitHubModelsChatModel;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
@Configuration
@Profile("github")
public class GitHubModelsChatModelConfiguration {
@Value("${GITHUB_TOKEN}")
private String gitHubToken;
@Bean
ChatModel gitHubModelsChatModel() {
return GitHubModelsChatModel.builder()
.gitHubToken(gitHubToken)
.modelName("gpt-4o-mini")
.logRequestsAndResponses(true)
.build();
}
}
この設定により GitHubModelsChatModel
ビーンが作成され、
AI サービス で使用するか、
必要な場所でオートワイヤすることができます。例えば:
@RestController
class ChatModelController {
ChatModel chatModel;
ChatModelController(ChatModel chatModel) {
this.chatModel = chatModel;
}
@GetMapping("/model")
public String model(@RequestParam(value = "message", defaultValue = "Hello") String message) {
return chatModel.chat(message);
}
}
GitHub トークンを使用した GitHubModelsStreamingChatModel
の作成
通常の Java
GitHubModelsStreamingChatModel model = GitHubModelsStreamingChatModel.builder()
.gitHubToken(System.getenv("GITHUB_TOKEN"))
.modelName("gpt-4o-mini")
.logRequestsAndResponses(true)
.build();
Spring Boot
GitHubModelsStreamingChatModelConfiguration
Spring Bean を作成します:
package com.example.demo.configuration.github;
import dev.langchain4j.model.chat.ChatModel;
import dev.langchain4j.model.github.GitHubModelsChatModel;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
@Configuration
@Profile("github")
public class GitHubModelsStreamingChatModelConfiguration {
@Value("${GITHUB_TOKEN}")
private String gitHubToken;
@Bean
GitHubModelsStreamingChatModel gitHubModelsStreamingChatModel() {
return GitHubModelsStreamingChatModel.builder()
.gitHubToken(System.getenv("GITHUB_TOKEN"))
.modelName("gpt-4o-mini")
.logRequestsAndResponses(true)
.build();
}
}