Skip to main content

Неофициальный Python-клиент для gpt4free.pro (текст, изображения, async/sync интерфейсы)

Project description

⚠️ Важное предупреждение

Я НЕ РЕКОМЕНДУЮ использовать эту библиотеку в продакшн-среде или для важных задач по следующим причинам:

  1. Низкое качество кода - Библиотека была написана неопытным разработчиком ("рукожопом") и содержит множество потенциальных проблем
  2. Нестабильность сервиса - gpt4free.pro может быть крайне нестабильным, закрыться в любой момент или иметь дополнительные недокументированные ограничения
  3. Отсутствие документации API - Официальной документации по API нет, поэтому поведение может быть непредсказуемым
  4. Частые ошибки - Сервис может возвращать непонятные ошибки без внятного описания

📋 О проекте

Эта библиотека предоставляет Python-интерфейс для бесплатного использования различных AI-моделей через сервис gpt4free.pro. Она позволяет генерировать текст и изображения без необходимости API-ключей.

Поддерживаемые возможности:

  • ✅ Текстовая генерация (чат)
  • ✅ Генерация изображений
  • ✅ Стриминг ответов
  • ✅ Синхронный и асинхронный интерфейсы
  • ✅ Поддержка мультимодальных сообщений

⚠️ Ограничения сервиса

Важные ограничения, о которых нужно знать:

  • Текстовая генерация: ~5 запросов в минуту
  • Генерация изображений: ~1 запрос в 30 секунд
  • Нестабильность: Сервис может быть недоступен в любое время
  • Непредсказуемые ошибки: Могут возникать без очевидных причин

🚀 Быстрый старт

Установка

# Установите библиотеку (если она доступна через pip)
pip install g4fpro

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

from g4fpro import Chat, AsyncChat, ImageGenerator, Messages

# Инициализация чата
chat = Chat()

# Простой текстовый запрос
response = chat.generate("Привет, как дела?")
print(response['choices'][0]['message']['content'])

📖 Детальная документация

Класс Chat (синхронный)

Основной класс для синхронной текстовой генерации.

chat = Chat()

response = chat.generate(
    message="Расскажи о космосе",
    model="gpt-4o-mini",
    # Следующие параметры МОГУТ НЕ РАБОТАТЬ из-за ограничений gpt4free.pro:
    temperature=0.7,        # Может игнорироваться
    top_p=0.9,              # Может игнорироваться  
    max_tokens=500,         # Может игнорироваться
    presence_penalty=0.1,   # Может игнорироваться
    frequency_penalty=0.1,  # Может игнорироваться
    stop=["\n", "###"]      # Может игнорироваться
)

Класс AsyncChat (асинхронный)

Асинхронная версия для текстовой генерации.

async_chat = AsyncChat()

# Асинхронная генерация
response = await async_chat.generate("Привет!")

# Стриминг
async for chunk in async_chat.generate_stream("Расскажи историю:"):
    print(chunk, end="", flush=True)

Класс ImageGenerator

Генерация изображений по текстовому описанию.

image_gen = ImageGenerator()

# Получить URL изображений
urls = image_gen.generate_urls("Красивый закат над морем", model="sdxl")

# Сохранить изображения
paths = image_gen.save_images(
    prompt="Кот в шляпе", 
    save_path="images/cat",
    n=2  # количество изображений
)

Класс AsyncImageGenerator

Асинхронная генерация изображений.

async_image_gen = AsyncImageGenerator()

# Асинхронная генерация
urls = await async_image_gen.generate_urls("Город будущего")

Класс Messages

Утилита для работы с мультимодальными сообщениями.

messages = Messages()

# Текстовое сообщение
messages.add_text_message("user", "Привет!")

# Сообщение с изображением по URL
messages.add_url_image_message(
    "user", 
    "https://example.com/image.jpg",
    "Что изображено на этой картинке?"
)

# Сообщение с локальным изображением
messages.add_file_image_message(
    "user",
    "path/to/image.png", 
    "Проанализируй это изображение"
)

# Использование с чатом
response = chat.generate(messages)

Класс Models

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

# Все модели
all_models = Models.get_all_models()

# Только чат-модели
chat_models = Models.get_chat_models()

# Только модели для генерации изображений
image_models = Models.get_image_models()

# Асинхронные методы
chat_models = await Models.get_chat_models_async()

📝 Важные замечания

По параметрам генерации:

Следующие параметры могут не работать или игнорироваться сервисом gpt4free.pro:

  • temperature - контроль случайности
  • top_p - nucleus sampling
  • max_tokens - ограничение длины ответа
  • presence_penalty - штраф за повторение тем
  • frequency_penalty - штраф за частоту токенов
  • stop - стоп-последовательности

Рекомендация: Используйте только обязательные параметры (message, model), так как остальные могут не поддерживаться.

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

g4fpro-0.1.3.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

g4fpro-0.1.3-py3-none-any.whl (21.3 kB view details)

Uploaded Python 3

File details

Details for the file g4fpro-0.1.3.tar.gz.

File metadata

  • Download URL: g4fpro-0.1.3.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for g4fpro-0.1.3.tar.gz
Algorithm Hash digest
SHA256 b633f20be60d780a0c8499752efcbf3b8a53f83bdf3363532a90f20c31fa72fd
MD5 cca63ff93aca760bf0f850565bb1bf46
BLAKE2b-256 677cbb35301f82c049b107c990251ef23619b2401b381bd63949858dc6954cdf

See more details on using hashes here.

File details

Details for the file g4fpro-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: g4fpro-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 21.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for g4fpro-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5b94b3537fd766139427e6aca52999ec78312e5628ebdb1a3bc5bd95a4371ae0
MD5 17621e98b111d7e33378dc8f0d44550b
BLAKE2b-256 61a54e4ceeb3e6743e7b4223d268e1be4f736bac828bb6ae0106877e0ec4a47b

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