gigachain
Описание
⚡ Набор решений для разработки LLM-приложений на русском языке с поддержкой GigaChat ⚡
Языки
- Jupyter Notebook98,1%
- Python1,3%
- CSS0,6%
🦜️🔗 GigaChain (GigaChat + LangChain)
Набор решений для разработки LLM-приложений на русском языке с поддержкой GigaChat
Создать issue
·
Документация GigaChain

О GigaChain
GigaChain – это набор решений для создания приложений с использованием больших языковых моделей (LLM). GigaChain охватывает все этапы разработки от прототипирования и исследования, до запуска в эксплуатацию и поддержки.
В состав GigaChain входят такие библиотеки для работы с моделями GigaChat, как:
langchain-gigachat — партнерский пакет популярного open source фреймворка LangChain для разработки комплексных LLM-приложений. Пакет позволяет использовать все возможности фреймворка и моделей GigaChat, в том числе создание агентов с помощью LangGraph. Библиотека langchain-gigachat доступна как для Python, так и для JavaScript.
- Документация LangChain: для Python, для JavaScript;
- Страница партнерского пакета langchain-gigachat для Python в официальной документации LangChain.
- gigachat — обертка для REST API GigaChat. Она управляет авторизацией запросов, упрощает отправку сообщений в модели GigaChat и предоставляет другие методы для работы с API. Библиотека доступна как для Python, так и для JavaScript.
В этом репозитории вы найдете краткие инструкции по началу работы с библиотеками, а так же ссылки на различные примеры их использования.
Требования
Для работы с библиотеками langchain-gigachat и gigachat вам понадобятся:
-
Python версии 3.9 и выше для работы с библиотеками Python.
-
Node.js версии 16 и выше для работы с библиотеками JavaScript.
-
Ключ авторизации для работы с API. О том, как получить ключ авторизации — в документации GigaChat API.
-
Если нужно, вы можете отключить проверку сертификатов. Подробнее — в примерах ниже.
Быстрый старт для Python
langchain-gigachat
Для установки библиотеки используйте менеджер пакетов pip:
Запустите пример:
Объект GigaChat принимает параметры:
-
— ключ авторизации для обмена сообщениями с GigaChat API. Подробнее о получении ключа авторизации.credentials -
— необязательный параметр, в котором можно указать версию API. По умолчанию запросы передаются в версию для физических лиц. Возможные значения:scope— версия API для физических лиц;GIGACHAT_API_PERS— доступ для ИП и юридических лиц по предоплате;GIGACHAT_API_B2B— доступ для ИП и юридических лиц по схеме pay-as-you-go.GIGACHAT_API_CORP
-
— необязательный параметр, в котором можно задать модель GigaChat. По умолчанию запросы передаются в модель GigaChat Lite (model).model="GigaChat" -
— необязательный параметр, с помощью которого можно отключить проверку сертификатов НУЦ Минцифры.verify_ssl_certs -
— необязательный параметр, который включает и отключает потоковую генерацию токенов. По умолчаниюstreaming. Потоковая генерация позволяет повысить отзывчивость интерфейса программы при работе с длинными текстами.False
Tip
Спросите чат-бот LangChain, как использовать GigaChat с инструментами фреймворка.
Исходный код чат-бота — в репозитории chat-langchain.
gigachat
Для установки библиотеки используйте менеджер пакетов pip:
Вызовите подходящий метод для запроса в API:
Объект GigaChat принимает параметры:
-
— ключ авторизации для обмена сообщениями с GigaChat API. Подробнее о получении ключа авторизации.credentials -
— необязательный параметр, в котором можно указать версию API. Возможные значения:scope— версия API для физических лиц;GIGACHAT_API_PERS— доступ для ИП и юридических лиц по предоплате;GIGACHAT_API_B2B— доступ для ИП и юридических лиц по схеме pay-as-you-go.GIGACHAT_API_CORP
По умолчанию запросы передаются в версию для физических лиц.
-
— необязательный параметр, в котором можно явно задать модель GigaChat. По умолчанию запросы передаются в модель GigaChat Lite (значение поляmodel).GigaChat -
— необязательный параметр, с помощью которого можно отключить проверку сертификатов НУЦ Минцифры.verify_ssl_certs
В отличие от библиотеки langchain-gigachat, для запуска потоковой передачи используйте метод :
Tip
Больше примеров работы с библиотекой — в репозитории.
Быстрый старт для JavaScript
langchain-gigachat
Для установки библиотеки используйте менеджер пакетов npm:
Запустите простой пример:
Объект GigaChat принимает параметры:
-
— ключ авторизации для обмена сообщениями с GigaChat API. Подробнее о получении ключа авторизации.credentials -
— необязательный параметр, в котором можно указать версию API. По умолчанию запросы передаются в версию для физических лиц. Возможные значения:scope— версия API для физических лиц;GIGACHAT_API_PERS— доступ для ИП и юридических лиц по предоплате;GIGACHAT_API_B2B— доступ для ИП и юридических лиц по схеме pay-as-you-go.GIGACHAT_API_CORP
-
— необязательный параметр, в котором можно задать модель GigaChat. По умолчанию запросы передаются в модель GigaChat Lite (model).model="GigaChat" -
— необязательный параметр, который позволяет задать настройки HTTPS. Эти настройки будут использованы при подключении к серверу API. Вы можете использовать их для отключения проверки сертификатов НУЦ Минцифры.httpsAgent
gigachat
Для установки библиотеки используйте менеджер пакетов npm:
Вызовите подходящий метод для запроса в API:
Объект GigaChat принимает параметры:
-
— ключ авторизации для обмена сообщениями с GigaChat API. Подробнее о получении ключа авторизации.credentials -
— необязательный параметр, в котором можно явно задать модель GigaChat. По умолчанию запросы передаются в модель GigaChat Lite (значение поляmodel).GigaChat -
— необязательный параметр, в котором можно указать версию API. Возможные значения:scope— версия API для физических лиц;GIGACHAT_API_PERS— доступ для ИП и юридических лиц по предоплате;GIGACHAT_API_B2B— доступ для ИП и юридических лиц по схеме pay-as-you-go.GIGACHAT_API_CORP
По умолчанию запросы передаются в версию для физических лиц.
Настройки HTTPS, которые добавляются при подключении к серверу API
— необязательный параметр, который позволяет задать настройки HTTPS. Эти настройки будут использованы при подключении к серверу API. Вы можете использовать их для отключения проверки сертификатов НУЦ Минцифры.httpsAgent
Tip
Больше примеров работы с библиотекой — в репозитории.
Примеры
Ниже представлен список интерактивных примеров для Python и JavaScript в формате Jupyter-блокнотов.
Python
При запуске примеров могут возникать проблемы, связанные с особенностями локального окружения Python. Чтобы их избежать, используйте чистое виртуальное окружение.
- Retrieval-Augmented Generation (RAG):
- Агенты:
- Извлечение структурированной информации
- Работа с изображениями:
JavaScript
- Retrieval-Augmented Generation (RAG)
- Работа с функциями
- Выделение сущностей в тексте
- Пример разработки агента на основе LangGraph.js и GigaChat API
Смотрите также
- Документация GigaChat API:
- Документация LangChain:
- Документация LangGraph.