gigachat-js
Описание
Языки
- TypeScript94,5%
- Shell2,9%
- JavaScript2,6%
GigaChat SDK (TypeScript/JavaScript) библиотека
Данная библиотека реализует методы REST API GigaChat. Она является частью GigaChain
Вот часть того, что она поддерживает:
- чат
- обработку потоковой передачи токенов
- работу с функциями;
- создание эмбеддингов;
- работу с GigaChat Vision
Tip
Больше примеров работы с библиотекой gigachat — в папке examples.
Установка
Быстрый старт
Для работы с библиотекой вам понадобится ключ авторизации API.
Чтобы получить ключ авторизации:
- Создайте проект GigaChat API в личном кабинете Studio.
- В интерфейсе проекта, в левой панели выберите раздел Настройки API.
- Нажмите кнопку Получить ключ.
В открывшемся окне скопируйте и сохраните значение поля Authorization Key. Ключ авторизации, отображается только один раз и не хранятся в личном кабинете. При компрометации или утере ключа авторизации вы можете сгенерировать его повторно.
Подробно о том, как создать проект GigaChat API — в официальной документации, в разделах Быстрый старт для физических лиц и Быстрый старт для ИП и юридических лиц.
Передайте полученный ключ авторизации в параметре при инициализации объекта GigaChat.
Пример показывает как отправить простой запрос на генерацию с помощью библиотеки GigaChat:
Способы авторизации
Для авторизации запросов, кроме ключа, полученного в личном кабинете, вы можете использовать:
- credentials
- имя пользователя и пароль для доступа к сервису;
- сертификаты TLS;
- токен доступа (access token), полученный в обмен на ключ авторизации в запросе
.POST /api/v2/oauth
Для этого передайте соответствующие параметры при инициализации.
Пример авторизации с credentials:
Пример авторизации с помощью логина и пароля:
Авторизация с помощью сертификатов по протоколу TLS (mTLS):
Авторизация с помощью токена доступа:
![NOTE] Токен действителен в течение 30 минут.
Предварительная авторизация
По умолчанию, библиотека GigaChat получает токен доступа при первом запросе к API.
Если вам нужно получить токен и авторизоваться до выполнения запроса, инициализируйте объект GigaChat и вызовите метод .
Параметры объекта GigaChat
В таблице описаны параметры, которые можно передать при инициализации объекта GigaChat:
| Параметр | Описание |
|---|---|
| Ключ авторизации для обмена сообщениями с GigaChat API. Ключ авторизации содержит информацию о версии API, к которой выполняются запросы. Если вы используете версию API для ИП или юрлиц, укажите это явно в параметре |
| Версия API, к которой будет выполнен запрос. По умолчанию запросы передаются в версию для физических лиц. Возможные значения:
|
| необязательный параметр, в котором можно явно задать модель GigaChat. Вы можете посмотреть список доступных моделей с помощью метода , который выполняет запрос .Стоимость запросов к разным моделям отличается. Подробную информацию о тарификации запросов к той или иной модели вы ищите в официальной документации |
| Адрес API. По умолчанию запросы отправляются по адресу , но если вы хотите использовать модели в раннем доступе, укажите адрес |
| Настройки HTTPS, которые добавляются при подключении к серверу API (подключение по сертификату, отключение проверки корневого сертифаката и т.д). В браузере не поддерживается! |
| Флаг, включащий библиотеку в браузере. По умолчанию, данная библиотека в браузере не работает, так как так можно разоблачить ваш GigaChat токен. |
| Таймаут (в секундах), который используется при подключении |
Переменные окружения
Также клиент автоматически подтягивает настройки из следующих переменных окружения:
- GIGACHAT_CREDENTIALS
- GIGACHAT_SCOPE
- GIGACHAT_BASE_URL
- GIGACHAT_MODEL
- GIGACHAT_TIMEOUT
Не работает в браузере
Работа в браузере
По умолчанию, библиотека в браузере выкидывает Exception. Чтобы его отключить инициализируйте клиент так:
Также в браузере нельзя создавать клиент с настройками HTTPS, то есть нельзя будет отключить игнорирование сертификатов.