GigaChat для LangChain4j — это Java-библиотека, которая интегрирует модели GigaChat c проектом LangChain4j. Библиотека предназначена для упрощения разработки LLM-приложений на Java. Для обмена сообщения с моделями она использует GigaChat Java SDK. Библиотека входит в состав GigaChain — набора решений для разработки LLM-приложений с помощью моделей GigaChat.
Проект LangChain4j существует с 2023 года и основывается на концептах, предложенных популярными фреймворками для разработки LLM-приложений, среди которых LangChain, Haystack, LlamaIndex. Он дает доступ к единообразным API, широкому набору программных инструментов и библиотеке примеров.
Tip
Примеры работы с моделями GigaChat с помощью библиотеки langchain4j-gigachat
— в папке langchain4j-gigachat-examples.
Для работы langchain4j-gigachat
используйте Java версии 17 или выше.
Чтобы установить библиотеку, подключите ее в зависимости.
implementation("chat.giga:langchain4j-gigachat:0.1.4")
<dependency>
<groupId>chat.giga</groupId>
<artifactId>langchain4j-gigachat</artifactId>
<version>0.1.4</version>
</dependency>
Ниже приводится несколько базовых примеров работы с langchain4j-gigachat
.
Полный список примеров — в папке langchain4j-gigachat-examples.
Авторизация запросов к GigaChat API выполняется с помощью ключа авторизации. Вы также можете использовать другие способы аутентификации, которые поддерживает GigaChat Java SDK.
GigaChatChatModel model = GigaChatChatModel.builder()
.defaultChatRequestParameters(GigaChatChatRequestParameters.builder()
.modelName(ModelName.GIGA_CHAT_PRO)
.build())
.authClient(AuthClient.builder()
.withOAuth(AuthClientBuilder.OAuthBuilder.builder()
.scope(Scope.GIGACHAT_API_PERS)
.authKey("<ключ_авторизации>")
.build())
.build())
.logRequests(true)
.logResponses(true)
.build();
GigaChatStreamingChatModel model = GigaChatStreamingChatModel.builder()
.authClient(AuthClient.builder()
.withOAuth(AuthClientBuilder.OAuthBuilder.builder()
.scope(Scope.GIGACHAT_API_PERS)
.authKey("<ключ_авторизации>")
.build())
.build())
.defaultChatRequestParameters(GigaChatChatRequestParameters.builder()
.temperature(1.0)
.modelName(ModelName.GIGA_CHAT_PRO)
.responseFormat(JsonSchema.builder().build())
.build())
.logRequests(true)
.logResponses(true)
.build();
GigaChatEmbeddingModel model = GigaChatEmbeddingModel.builder()
.authClient(AuthClient.builder()
.withOAuth(AuthClientBuilder.OAuthBuilder.builder()
.scope(Scope.GIGACHAT_API_PERS)
.authKey("<ключ_авторизации>")
.build())
.build())
.logRequests(true)
.logResponses(true)
.build();
- Официальная документация LangChain4j (англ.);
- Серия обучающих статей (англ.):
- Книга Understanding LangChain4j (англ.)