Быстрый старт
В этом разделе вы узнаете:
- как подготовить среду к работе GigaChain;
- ознакомитесь с примером обращения к GigaChat;
- узнаете как работать с потоком токенов.
Подготовка к работе
Для работы с GigaChain нужно:
- Установить библиотеки GigaChain.
- Установить библиотеку GigaChat.
- Настроить авторизацию запросов к GigaChat API.
- Установить сертификаты минцифры.
Установка GigaChain
GigaChain можно установить с помощью менеджера пакетов pip:
pip install gigachain
Более подробную информацию об установке библиотеки и других компонентов смотрите в разделе Установка.
Установка библиотеки GigaChat
Для взаимодействия с нейросетевой моделью используется отдельная python-библиотека, которая позволяет отправлять запросы к нейросетевой модели GigaChat. Обмен данными с моделью обеспечивается с помощью GigaChat API.
Для установки библиотеки используйте менеджер пакетов pip:
pip install gigachat
Настройка авторизации запросов к GigaChat API
Для авторизации запросов к GigaChat вам понадобится получить авторизационные данные для работы с GigaChat API.
Авторизационные данные — строка, полученная в результате кодирования в base64 идентификатора (Client ID) и клиентского ключа (Client Secret) API. Как получить авторизационные данные, Client ID и Client Secret читайте в разделах Быстрый старт для физических лиц и Быстрый старт для ИП и юридических лиц.
Передайте полученные авторизационные данные в параметре credentials
объекта GigaChat
.
chat = GigaChat(credentials=<авторизационные_данные>)
Вы также можете явно указать версию API с помощью атрибута scope
:
# Личное пространство
giga = GigaChat(credentials=<авторизационные_данные>, scope="GIGACHAT_API_PERS")
# Корпоративное пространство
giga = GigaChat(credentials=<авторизационные_данные>, scope="GIGACHAT_API_CORP")
Доступ GigaChat API предоставляется как физическим, так и юридическим лицам.
Для передачи авторизационных данных и других параметров GigaChat вы также можете настроить переменные окружения, например, GIGACHAT_CREDENTIALS
и другие.
Установка сертификатов минцифры
Для обращения к GigaChat в вашем приложении или в вашей ОС должны быть установлены сертификаты минцифры.
Вы можете установить сертификаты с помощью утилиты gigachain-cli
.
Для этого:
Установите утилиту с помощью менеджера пакетов pip:
pip install gigachain-cli
Установите сертификаты с помощью команды:
gigachain install-rus-certs
Если вы не используете сертификат минцифры, то при создании объекта GigaChat
вам нужно передать параметр verify_ssl_certs=False
.
chat = GigaChat(credentials=<авторизационные_данные>, verify_ssl_certs=False)
Этот и другие параметры вы можете настроить с помощью переменных окружения, например GIGACHAT_VERIFY_SSL_CERTS
и других.
Работа с GigaChain
Простой пример работы с чатом с помощью модуля GigaChat:
"""Пример работы с чатом через gigachain"""
from langchain.schema import HumanMessage, SystemMessage
from langchain.chat_models.gigachat import GigaChat
# Авторизация в сервисе GigaChat
chat = GigaChat(credentials='<авторизационные_данные>', verify_ssl_certs=False)
messages = [
SystemMessage(
content="Ты эмпатичный бот-психолог, который помогает пользователю решить его проблемы."
)
]
while(True):
# Ввод пользователя
user_input = input("User: ")
messages.append(HumanMessage(content=user_input))
res = chat(messages)
messages.append(res)
# Ответ сервиса
print("Bot: ", res.content)
Устранение проблем
Если у вас возникли проблемы при работе с GigaChain убедитесь, что:
- у вас установлена последняя версия библиотеки;
- вместо модулей GigaChain не установлены модули LangChain.
В любом случае для решения проблемы нужно удалить модули LangChain и повторно установить последние версии модулей GigaChain.
Для вывода полного списка установленных модулей используйте команду:
pip list
Модули langchain_hub
и langsmith
не требуют удаления и переустановки.
Для удаления модулей LangChain используйте команды менеджера пакетов:
pip uninstall langchain_core
pip uninstall langchain_community
pip uninstall langchain_expiremental
#Модуль langchain_openai содержит зависимости от langchain_core
pip uninstall langchain_openai
pip uninstall langchain
Если кроме представленных в примере модулей вы используете модули langgraph
и langserve
их также потребуется заменить на gigagraph
и gigaserve
, соответственно.
Для установки последних версий модулей GigaChain используйте команды менеджера пакетов:
pip install -U gigachain_core
pip install -U gigachain_community
pip install -U gigachain-expiremental
pip install -U gigahain-openai
pip install -U gigachain
Работа с большими текстами
Обработка больших текстов может занимать у модели продолжительное время — 10 минут и более. Это может привести к возникновению проблем, связанных с превышением времени ожидания.
Чтобы избежать таких проблем, используйте потоковую передачу токенов (параметр streaming=True
):
chat = GigaChat(credentials='<авторизационные_данные>', verify_ssl_certs=False, streaming=True)