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.2.0.tar.gz (19.2 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.2.0-py3-none-any.whl (21.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for g4fpro-0.2.0.tar.gz
Algorithm Hash digest
SHA256 8c60c544d50b2c84ad788465afde0376d88e59eac5df7dd8d73f17a4130bfae1
MD5 9f5367a55ee8437012e57263c75d3fc3
BLAKE2b-256 45b525fd9b42eb647cae86359cc102741ce74e2b366b9f6536f9abec85c304d9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: g4fpro-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 21.5 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4ce5bf94e3322763f529dae75cc02890d9284ab89df10701a7318118184c6f7e
MD5 eb64ba1610f32b0f06b54e6de2649ae8
BLAKE2b-256 c4dd1bf84b55c7f87db84ce66e058657e9deff5df9ffd865e0a00aaadc87f86a

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