Развернуть
Интеграция с LangChainJS
Обновлено 2 февраля 2026
Библиотека langchain-gigachat позволяет использовать нейросетевые модели GigaChat при разработке LLM-приложений с помощью фреймворков LangChainJS и LangGraphJS.
Требования
Для работы с библиотекой и обмена сообщениями с моделями GigaChat понадобятся:
- NodeJS версии 18 и выше;
- сертификат НУЦ Минцифры;
- ключ авторизации GigaChat API.
Вы также можете использовать другие способы авторизации.
Установка
Для установки библиотеки используйте менеджер пакетов NPM:
npm install --save langchain-gigachat
Быстрый старт
Запрос на генерацию
Пример запроса на генерацию с системным промптом:
import { GigaChat } from "langchain-gigachat"
import { HumanMessage, SystemMessage } from "@langchain/core/messages";
import { Agent } from 'node:https';
/**
* Объект с параметрами HTTPS подключения к GigaChat API.
* Отключает проверку сертификатов НУЦ Минцифры для запуска примера.
*/
const httpsAgent = new Agent({
rejectUnauthorized: false,
});
const giga = new GigaChat({
credentials: 'ключ_авторизации',
model: 'GigaChat-Max',
httpsAgent
})
const messages = [
new SystemMessage("Переведи следующее сообщение на английский"),
new HumanMessage("Привет!"),
];
const resp = await giga.invoke(messages);
console.log(resp.content);
Создание эмбеддингов
Пример создания векторного представления текста:
import { GigaChatEmbeddings } from "langchain-gigachat";
import { Agent } from 'node:https';
/**
* Объект с параметрами HTTPS подключения к GigaChat API.
* Отключает проверку сертификатов НУЦ Минцифры для запуска примера.
*/
const httpsAgent = new Agent({
rejectUnauthorized: false,
});
async function main() {
const embeddings = new GigaChatEmbeddings({
credentials: 'YOUR_AUTHORIZATION_KEY',
httpsAgent
});
console.log(await embeddings.embedDocuments(["Словасловаслова"]));
}
main();
Параметры объекта GigaChat
В таблице описаны параметры, которые можно передать при инициализации объекта GigaChat:
| Параметр | Описание |
|---|---|
credentials | Ключ авторизации для обмена сообщениями с GigaChat API. Ключ авторизации содержит информацию о версии API, к которой выполняются запросы. Если вы используете версию API для ИП или юрлиц, укажите это явно в параметре scope |
scope | Версия API, к которой будет выполнен запрос. По умолчанию запросы передаются в версию для физических лиц. Возможные значения:
|
model | Необязательный параметр, в котором можно явно задать модель GigaChat. Список доступных моделей можно получить с помощью метода getModels().Стоимость запросов к разным моделям отличается. Подробная информация о тарификации — в официальной документации GigaChat API |
baseUrl | Адрес GigaChat API. По умолчанию запросы отправляются по адресу https://gigachat.devices.sberbank.ru/api/v1/. Для работы с моделями в раннем доступе, укажите адрес https://gigachat-preview.devices.sberbank.ru/api/v1 |
httpsAgent | Объект с параметрами HTTPS-подключения. Объект добавляется при подключении к серверу API и по зволяет настроить подключение по сертификату, отключить проверки сертификата Минцифры и задать другие парметры. Не поддерживается при запуске в браузере |
dangerouslyAllowBrowser | Флаг, который включает библиотеку в браузере. По умолчанию, работа в браузере отключена. Используйте с осторожностью, так как работа в браузере может скомпрометировать ключ авторизации GigaChat API |
timeout | Необязательный параметр, задающий время ожидания ответа в секундах, которое используется при подключении к API. |
Способы авторизации
Для авторизации запросов вы можете использовать:
- ключ авторизации, полученный в личном кабинете;
- имя пользователя и пароль для доступа к GigaChat API;
- mTLS-сертификаты;
- токен доступа (access token), полученный в обмен на ключ авторизации в запросе
POST /api/v2/oauth.
Пример авторизации с помощью ключа
const client = new GigaChat({
credentials: 'ключ_авторизации',
scope: 'версия API',
});