gigachain
🦜️🔗 GigaChain (GigaChat + LangChain)
Набор решений для разработки LLM-приложений на русском языке с поддержкой GigaChat
Создать issue
·
Документация GigaChain
[!WARNING] С 29.10.2024 GigaChain изменяет способ взаимодействия с LangChain. Проект перестает быть ответвлением LangChain и будет предоставлять всю функциональность в рамках партнерского пакета langchain-gigachat.
Это значительно упростит разработку и позволит развивать оригинальные решения GigaChain, а также даст доступ ко всем интеграциям, которые поддерживает LangChain и обеспечит поддержку новых версий фреймворка в момент выпуска.
Предыдущую версию GigaChain (v0.2.x) вы можете найти в ветке v_2.x_legacy.
О GigaChain
GigaChain – это набор решений для создания приложений с использованием больших языковых моделей (LLM), который охватывает все этапы разработки от прототипирования и исследования, до запуска в эксплуатацию и поддержки.
Один из компонентов GigaChain — партнерский пакет langchain-gigachat, который позволяет использовать модели GigaChat при работе с LangChain. Также, благодаря этому пакету, вы сможете использовать GigaChat для разработки агентов с помощью LangGraph.
Быстрый старт
Чтобы начать работу, установите партнерский пакет:
pip install langchain-gigachat
Запустите простой пример:
from langchain_core.messages import HumanMessage, SystemMessagefrom langchain_gigachat.chat_models import GigaChat
# Авторизация в GigaChatllm = GigaChat( credentials="ключ_авторизации", scope="GIGACHAT_API_PERS", model="GigaChat", # Отключает проверку наличия сертификатов НУЦ Минцифры verify_ssl_certs=False, streaming=False,)
messages = [ SystemMessage( content="Ты эмпатичный бот-психолог, который помогает пользователю решить его проблемы." )]
while(True): user_input = input("Пользователь: ") if user_input == "пока": break messages.append(HumanMessage(content=user_input)) res = llm.invoke(messages) messages.append(res) print("GigaChat: ", res.content)
Объект GigaChat принимает параметры:
-
— ключ_авторизации для обмена сообщениями с GigaChat API. О том, как их получить — в официальной документации.credentials -
— необязательный параметр, в котором можно указать версию API. Возможные значения:scope
— версия API для физических лиц;GIGACHAT_API_PERS
— доступ для ИП и юридических лиц по предоплате;GIGACHAT_API_B2B
— доступ для ИП и юридических лиц по схеме pay-as-you-go.GIGACHAT_API_CORP
По умолчанию запросы передаются в версию для физических лиц.
-
— необязательный параметр, в котором можно явно задать модель GigaChat. По умолчанию запросы передаются в модельmodel
.GigaChat -
— необязательный параметр, с помощью которого можно отключить проверку сертификатов НУЦ Минцифры.verify_ssl_certs -
— необязательный параметр, который включает и отключает потоковую генерацию токенов. Потоковая генерация позволяет повысить отзывчивость интерфейса программы при работе с длинными текстами. По умолчаниюstreaming
.False