Skip to main content

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

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

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

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

Библиотека позволяет выполнить точный подсчет токенов в тексте с помощью GigaChat API.

Установка

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

pip install gigachat

Работа с GigaChat

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

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

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

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

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

Пример показывает как импортировать библиотеку в 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)

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

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=...

Metadata

Release files for gigachat 0.1.12.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gigachat 0.1.12.1
File Size Uploaded
gigachat-0.1.12.1.tar.gz 14.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gigachat 0.1.12.1
File Interpreter ABI Platform
gigachat-0.1.12.1-py3-none-any.whl Python 3 none any Details

Total release size: 40.1 kB

Release files / gigachat-0.1.12.1.tar.gz

Download URL gigachat-0.1.12.1.tar.gz
Size 14.8 kB
Tags Source
SHA-256 checksum
How to use checksums
3b235255b1989cbd1c31e69e695198fa227c1499ed8a402da11fc11d06a406fc
BLAKE2b-256 checksum
How to use checksums
f3711f818cc8668ab1e338f58bcb00ad6d280b267b9e227578ccb7bc7b61be13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.1 CPython/3.11.6 Darwin/23.1.0

Release files / gigachat-0.1.12.1-py3-none-any.whl

Download URL gigachat-0.1.12.1-py3-none-any.whl
Size 25.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
82fd12535e982cfe4b58fc357eed68898531d4a30ad11ac205c34c788a9fdc41
BLAKE2b-256 checksum
How to use checksums
2803049dcf24cca15e565b3c739041b3a9a51aa2a1b3fcb751edfc12fb17b4cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.1 CPython/3.11.6 Darwin/23.1.0

Release history Release notifications | RSS feed

0.2.3

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.43

2 release files

0.1.41

2 release files

0.1.40

2 release files

0.1.39

2 release files

0.1.38

2 release files

0.1.37

2 release files

0.1.36

2 release files

0.1.35

2 release files

0.1.32

2 release files

0.1.30

2 release files

0.1.29

2 release files

0.1.28

2 release files

0.1.27

2 release files

0.1.26

2 release files

0.1.25

2 release files

0.1.23

2 release files

0.1.21

2 release files

0.1.20

2 release files

0.1.17

2 release files

0.1.15

2 release files

0.1.14

2 release files

0.1.13

2 release files

This release

0.1.12.1 This release

2 release files

0.1.11

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page