gigachain

0

Описание

⚡ Набор решений для разработки LLM-приложений на русском языке с поддержкой GigaChat ⚡

Языки

  • Jupyter Notebook98,1%
  • Python1,3%
  • CSS0,6%
README.md

License: MIT


Logo

🦜️🔗 GigaChain (GigaChat + LangChain)

Набор решений для разработки LLM-приложений на русском языке с поддержкой GigaChat
Создать issue · Документация GigaChain

Product Name Screen Shot


О GigaChain

GigaChain – это набор решений для создания приложений с использованием больших языковых моделей (LLM). GigaChain охватывает все этапы разработки от прототипирования и исследования, до запуска в эксплуатацию и поддержки.

В состав GigaChain входят такие библиотеки для работы с моделями GigaChat, как:

langchain-gigachat — партнерский пакет популярного open source фреймворка LangChain для разработки комплексных LLM-приложений. Пакет позволяет использовать все возможности фреймворка и моделей GigaChat, в том числе создание агентов с помощью LangGraph. Библиотека langchain-gigachat доступна как для Python, так и для JavaScript.

В этом репозитории вы найдете краткие инструкции по началу работы с библиотеками, а так же ссылки на различные примеры их использования.

Требования

Для работы с библиотеками langchain-gigachat и gigachat вам понадобятся:

  • Python версии 3.9 и выше для работы с библиотеками Python.

  • Node.js версии 16 и выше для работы с библиотеками JavaScript.

  • Ключ авторизации для работы с API. О том, как получить ключ авторизации — в документации GigaChat API.

  • Сертификаты НУЦ Минцифры.

    Если нужно, вы можете отключить проверку сертификатов. Подробнее — в примерах ниже.

Быстрый старт для Python

langchain-gigachat

Для установки библиотеки используйте менеджер пакетов pip:

Запустите пример:

Объект GigaChat принимает параметры:

  • credentials
    — ключ авторизации для обмена сообщениями с GigaChat API. Подробнее о получении ключа авторизации.

  • scope
    — необязательный параметр, в котором можно указать версию API. По умолчанию запросы передаются в версию для физических лиц. Возможные значения:

    • GIGACHAT_API_PERS
      — версия API для физических лиц;
    • GIGACHAT_API_B2B
      — доступ для ИП и юридических лиц по предоплате;
    • GIGACHAT_API_CORP
      — доступ для ИП и юридических лиц по схеме pay-as-you-go.
  • model
    — необязательный параметр, в котором можно задать модель GigaChat. По умолчанию запросы передаются в модель GigaChat Lite (
    model="GigaChat"
    ).

  • verify_ssl_certs
    — необязательный параметр, с помощью которого можно отключить проверку сертификатов НУЦ Минцифры.

  • streaming
    — необязательный параметр, который включает и отключает потоковую генерацию токенов. По умолчанию
    False
    . Потоковая генерация позволяет повысить отзывчивость интерфейса программы при работе с длинными текстами.

Tip

Спросите чат-бот LangChain, как использовать GigaChat с инструментами фреймворка.

Исходный код чат-бота — в репозитории chat-langchain.

gigachat

Для установки библиотеки используйте менеджер пакетов pip:

Вызовите подходящий метод для запроса в API:

Объект GigaChat принимает параметры:

  • credentials
    — ключ авторизации для обмена сообщениями с GigaChat API. Подробнее о получении ключа авторизации.

  • scope
    — необязательный параметр, в котором можно указать версию API. Возможные значения:

    • GIGACHAT_API_PERS
      — версия API для физических лиц;
    • GIGACHAT_API_B2B
      — доступ для ИП и юридических лиц по предоплате;
    • GIGACHAT_API_CORP
      — доступ для ИП и юридических лиц по схеме pay-as-you-go.

    По умолчанию запросы передаются в версию для физических лиц.

  • model
    — необязательный параметр, в котором можно явно задать модель GigaChat. По умолчанию запросы передаются в модель GigaChat Lite (значение поля
    GigaChat
    ).

  • verify_ssl_certs
    — необязательный параметр, с помощью которого можно отключить проверку сертификатов НУЦ Минцифры.

В отличие от библиотеки langchain-gigachat, для запуска потоковой передачи используйте метод

stream()
:

Tip

Больше примеров работы с библиотекой — в репозитории.

Быстрый старт для JavaScript

langchain-gigachat

Для установки библиотеки используйте менеджер пакетов npm:

Запустите простой пример:

Объект GigaChat принимает параметры:

  • credentials
    — ключ авторизации для обмена сообщениями с GigaChat API. Подробнее о получении ключа авторизации.

  • scope
    — необязательный параметр, в котором можно указать версию API. По умолчанию запросы передаются в версию для физических лиц. Возможные значения:

    • GIGACHAT_API_PERS
      — версия API для физических лиц;
    • GIGACHAT_API_B2B
      — доступ для ИП и юридических лиц по предоплате;
    • GIGACHAT_API_CORP
      — доступ для ИП и юридических лиц по схеме pay-as-you-go.
  • model
    — необязательный параметр, в котором можно задать модель GigaChat. По умолчанию запросы передаются в модель GigaChat Lite (
    model="GigaChat"
    ).

  • httpsAgent
    — необязательный параметр, который позволяет задать настройки HTTPS. Эти настройки будут использованы при подключении к серверу API. Вы можете использовать их для отключения проверки сертификатов НУЦ Минцифры.

gigachat

Для установки библиотеки используйте менеджер пакетов npm:

Вызовите подходящий метод для запроса в API:

Объект GigaChat принимает параметры:

  • credentials
    — ключ авторизации для обмена сообщениями с GigaChat API. Подробнее о получении ключа авторизации.

  • model
    — необязательный параметр, в котором можно явно задать модель GigaChat. По умолчанию запросы передаются в модель GigaChat Lite (значение поля
    GigaChat
    ).

  • scope
    — необязательный параметр, в котором можно указать версию API. Возможные значения:

    • GIGACHAT_API_PERS
      — версия API для физических лиц;
    • GIGACHAT_API_B2B
      — доступ для ИП и юридических лиц по предоплате;
    • GIGACHAT_API_CORP
      — доступ для ИП и юридических лиц по схеме pay-as-you-go.

    По умолчанию запросы передаются в версию для физических лиц.

Настройки HTTPS, которые добавляются при подключении к серверу API

  • httpsAgent
    — необязательный параметр, который позволяет задать настройки HTTPS. Эти настройки будут использованы при подключении к серверу API. Вы можете использовать их для отключения проверки сертификатов НУЦ Минцифры.

Tip

Больше примеров работы с библиотекой — в репозитории.

Примеры

Ниже представлен список интерактивных примеров для Python и JavaScript в формате Jupyter-блокнотов.

Python

При запуске примеров могут возникать проблемы, связанные с особенностями локального окружения Python. Чтобы их избежать, используйте чистое виртуальное окружение.

JavaScript

Смотрите также