Skip to main content

GigaChat. Python-библиотека для GigaChain

Project description

GigaChat. Python-библиотека для GigaChain

Библиотека Python, позволяющая GigaChain обращаться к GigaChat — нейросетевой модели, которая умеет вести диалог, писать код, создавать тексты и картинки по запросу.

Обмен данными с сервисом обеспечивается с помощью GigaChat API. О том как получить доступ к API читайте в официальной документации.

Библиотека поддерживает обработку потоковой передачи токенов, а также работу в синхронном или в асинхронном режиме.

Установка

Библиотеку можно установить с помощью pip:

pip install gigachat

Работа с GigaChat

Перед использованием модуля:

  1. Подключите проект GigaChat API.

  2. В личном кабинете нажмите кнопку Сгенерировать новый Client Secret.

    Откроется окно Новый Client Secret.

  3. В открывшемся окне, скопируйте и сохраните токен, указанный в поле Авторизационные данные.

    [!WARNING] Не закрывайте окно, пока не сохраните токен. В противном случае его нужно будет сгенерировать заново.

Пример показывает как импортировать библиотеку в GigaChain и использовать ее для обращения к GigaChat:

from gigachat import GigaChat

# Используйте токен, полученный в личном кабинете из поля Авторизационные данные
with GigaChat(credentials=..., verify_ssl_certs=False) as giga:
    response = giga.chat("Какие факторы влияют на стоимость страховки на дом?")
    print(response.choices[0].message.content)

Больше примеров.

Способы авторизации

Авторизация с помощью токена (в личном кабинете из поля Авторизационные данные):

giga = GigaChat(credentials=...)

# Личное пространство
giga = GigaChat(credentials=..., scope="GIGACHAT_API_PERS")

# Корпоративное пространство
giga = GigaChat(credentials=..., scope="GIGACHAT_API_CORP")

Авторизация с помощью логина и пароля:

giga = GigaChat(
    base_url="https://gigachat.devices.sberbank.ru/api/v1",
    user=...,
    password=...,
)

Взаимная аутентификация по протоколу TLS (mTLS):

giga = GigaChat(
    base_url="https://gigachat.devices.sberbank.ru/api/v1",
    ca_bundle_file="certs/ca.pem",  # chain_pem.txt
    cert_file="certs/tls.pem",  # published_pem.txt
    key_file="certs/tls.key",
    key_file_password="123456",
)

Дополнительные настройки

Отключение проверки сертификатов:

giga = GigaChat(verify_ssl_certs=False)

[!WARNING] Отключение проверки сертификатов снижает безопасность обмена данными.

Установка корневого сертификата "Минцифры России":

curl -k "https://gu-st.ru/content/Other/doc/russian_trusted_root_ca.cer" -w "\n" >> $(python -m certifi)

Настройки в переменных окружения

Чтобы задать настройки с помощью переменных окружения, используйте префикс GIGACHAT_.

Авторизация с помощью токена и отключение проверки сертификатов:

export GIGACHAT_CREDENTIALS=...
export GIGACHAT_SCOPE=...
export GIGACHAT_VERIFY_SSL_CERTS=False

Авторизация с помощью логина и пароля:

export GIGACHAT_BASE_URL=https://gigachat.devices.sberbank.ru/api/v1
export GIGACHAT_USER=...
export GIGACHAT_PASSWORD=...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gigachat-0.1.8.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

gigachat-0.1.8-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

Details for the file gigachat-0.1.8.tar.gz.

File metadata

  • Download URL: gigachat-0.1.8.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.5 Darwin/22.6.0

File hashes

Hashes for gigachat-0.1.8.tar.gz
Algorithm Hash digest
SHA256 9c2a65c9b8543dc4cf74061622aa67446e125f5ef81063b8fd642879cce384d5
MD5 b28d616696ed2c35d698fbad64c3a3dd
BLAKE2b-256 174372686c3ff7a5a9dff3e8225d3d2adabd18547a099a44f444fdae75eab89e

See more details on using hashes here.

File details

Details for the file gigachat-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: gigachat-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 20.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.5 Darwin/22.6.0

File hashes

Hashes for gigachat-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 2581ed497d47937701846d1433b12974cbfb36a6e1ffeddc3b11ed8e8e0a8ba4
MD5 19dceb955e5be07cb511b2008e67cba4
BLAKE2b-256 8dc618e36a4864bfc37237bb83ebe65d9cf2a40aee82ee4d63e4f6ebb819b840

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page