Skip to main content

No project description provided

Project description

revGigaChat

Описание

Реверс-инжиниринг GigaChat и Kandinsky от СберБанк России

Отказ от отственности

Используя этот репозиторий или любой связанный с ним код, вы соглашаетесь с официальным уведомлением. Автор не несет ответственности за любые копии, форки, повторные загрузки, сделанные другими пользователями, или что-либо еще, связанное с revGigaChat. Это единственный аккаунт и репозиторий автора. Чтобы предотвратить выдачу себя за другое лицо или безответственные действия, соблюдайте лицензию GNU GPL, которую использует этот репозиторий.

Установка

pip install -U git+https://github.com/DenisPonomar/revGigaChat.git

или

pip install revGigaChat

Использование

Через developers.sber.ru/studio/workspaces

Подготовка

  • Перейдите по ссылке https://developers.sber.ru/studio/workspaces/
  • Авторизуйтесь
  • На странице личного пространства нажмите "Все инструменты", далее выберите "Модель GigaChat" и создайте проект
  • Откройте проект
  • Откройте инструменты разработчика через F12
  • Перейдите во вкладку "Сеть" или "Network
  • Отправьте сообщение GigaChat
  • Найдите запрос на https://developers.sber.ru/api/chatwm/api/client/
  • Из заголовков запроса скопируйте значения Cookie, space-id и user-id

Создание нового чата

from revGigaChat import revGigaChat
Chat = revGigaChat.V1(cookie = "Cookie", space_id = "space-id", user_id = "user-id")
print(Chat.GPT("Привет"))

Создание нового чата с использованием прокси

from revGigaChat import revGigaChat
Chat = revGigaChat.V1(cookie = "Cookie", space_id = "space-id", user_id = "user-id", proxies="127.0.0.1:8080")
print(Chat.GPT("Привет"))

Использование чата с заданным id

id представляет из себя строку uuid

from revGigaChat import revGigaChat
Chat = revGigaChat.V1(cookie = "Cookie", space_id = "space-id", user_id = "user-id", random_id="id")
print(Chat.GPT("Привет"))

Плюсы

  • Возможность параллельно работать с несколькими чатами

Минусы

  • Необходимо иметь российский IP или российский прокси
  • Каждые несколько дней нужно получать новый Cookie

Через клиент Telegram

  • Перейдите по ссылке https://my.telegram.org/auth
  • Откройте "API development tools"
  • Скопируйте "App api_id" и "App api_hash"
from revGigaChat import revGigaChat
import asyncio
Chat = revGigaChat.V2(api_id='api_id', api_hash='api_hash')
loop = asyncio.get_event_loop()
print(loop.run_until_complete(Chat.send_telegram_message(message = "Привет", time_sleep = 5, new_chat = False)))

После первого запуска последовательно введите номер телефона и код безопасности. Рядом с вашим скриптом создастся файл session_name.session - не удаляйте его.

Необязательные параметры

  • time_sleep устанавливает задержу по времени между отправкой сообщения боту @gigachat_bot и анализом последних сообщений в чате. По умолчанию 5 секунд. При слишком маленькой задержке по времени есть риск получить в ответ "Классный запрос, @exmaplename! 💭Прочитал, думаю над ответом".
  • new_chat устанавливает отправлять боту @gigachat_bot сообщение "/restart" (при значении True) или нет (при значении False). По умолчанию False.

Плюсы

  • Нет необходимости иметь российский IP

Минусы

  • Работа только с одним чатом
  • Риск постоянного бана

Через fusionbrain.ai/editor/

from revGigaChat import revKandinsky
from PIL import Image
from io import BytesIO
image_bytes = revKandinsky.FB(prompt="девушка", negativ_prompt="красота", width=1024, height=1024, style=revKandinsky.get_style("Аниме"))
#image_bytes = revKandinsky.FB(prompt="девушка", negativ_prompt="красота", width=1024, height=1024, style="ANIME")
# Создаем объект BytesIO из потока байтов
image_stream = BytesIO(image_bytes)
# Открываем изображение с помощью PIL
image = Image.open(image_stream)
# Отображаем изображение
image.show()

Необязательные параметры

  • negativ_prompt
  • style

Список всех стилей

  • "Аниме": "ANIME",
  • "Детальное фото": "UHD",
  • "Киберпанк": "CYBERPUNK",
  • "Кандинский": "KANDINSKY",
  • "Айвазовский": "AIVAZOVSKY",
  • "Малевич": "MALEVICH",
  • "Пикассо": "PICASSO",
  • "Гончарова": "GONCHAROVA",
  • "Классицизм": "CLASSICIS",
  • "Ренессанс": "RENAISSANCE",
  • "Картина маслом": "OILPAINTING",
  • "Рисунок карандашом": "PENCILDRAWING",
  • "Цифровая живопись": "DIGITALPAINTING",
  • "Средневековый стиль": "MEDIEVALPAINTING",
  • "Советский мультфильм": "SOVIETCARTOON",
  • "3D рендер": "RENDER",
  • "Мультфильм": "CARTOON",
  • "Студийное фото": "STUDIOPHOTO",
  • "Портретное фото": "PORTRAITPHOTO",
  • "Хохлома": "KHOKHLOMA",
  • "Новый год": "CRISTMAS"

Примечания

  • Размер изображения не больше 1024x1024 пикселей

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

revGigaChat-2.0.tar.gz (19.5 kB view details)

Uploaded Source

File details

Details for the file revGigaChat-2.0.tar.gz.

File metadata

  • Download URL: revGigaChat-2.0.tar.gz
  • Upload date:
  • Size: 19.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for revGigaChat-2.0.tar.gz
Algorithm Hash digest
SHA256 2c93014f5c572711c5b03c08e744eca48a2d1af968370e880e1c3731e383c196
MD5 f409943d7bb22931b6de515b0f71b723
BLAKE2b-256 c03b21d7e34e93db49efaab40f2a8ffc5c332a568de983e9def11113f6444763

See more details on using hashes here.

Supported by

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