8000 GitHub - theurs/bing10api
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

theurs/bing10api

Repository files navigation

Bing Image Generator API for https://github.com/theurs/tb1

Этот проект предоставляет API для генерации изображений с использованием Bing Image Creator.

Установка

  1. Клонируйте репозиторий:

    git clone https://github.com/theurs/bing10api.git
    cd bing10api
  2. Создайте и активируйте виртуальное окружение (venv):

    python3 -m venv venv
    source venv/bin/activate  # Linux/macOS
    # venv\Scripts\activate  # Windows
  3. Установите зависимости:

    pip install -r requirements.txt

Настройка

  1. Файл cfg.py:
    • MAX_LOG_FILE_SIZE: Целое число, Максимальный размер файла журнала в байтах (по умолчанию 20MB).
    • ADDR: Строка, IP-адрес, на котором будет запущен Flask-сервер.
    • PORT: Строка, Порт, на котором будет запущен Flask-сервер.
    • Измените эти переменные в соответствии с вашими потребностями.
MAX_LOG_FILE_SIZE = 20*1024*1024
ADDR = '127.0.0.1'
PORT = '58796'
  1. Файл cookie.txt:

    • Этот файл должен содержать cookie для аутентификации в Bing. Получить cookie можно, например, из инструментов разработчика вашего браузера. Расширение для браузера - cookie editor(export header string)
    • Поместите ваш cookie в файл cookie.txt
  2. Настройка службы Systemd (опционально):

    • Если вы хотите запускать сервер как службу systemd, создайте файл службы systemd:

      sudo nano /etc/systemd/system/bing_image_generator.service
    • Вставьте следующий текст, измените пути на ваши.

       [Unit]
       Description=Bing Image Generator Service
       After=network.target
      
       [Service]
       User=<your_user>
       Group=<your_group>
       WorkingDirectory=<path_to_your_project>
       ExecStart=<path_to_your_venv>/bin/python <path_to_your_project>/bing10api.py
       Restart=on-failure
       
       [Install]
       WantedBy=multi-user.target
      
    • Замените:

      • <your_user> на вашего пользователя.
      • <your_group> на вашу группу.
      • <path_to_your_project> на абсолютный путь к вашему проекту.
      • <path_to_your_venv> на абсолютный путь к вашему виртуальному окружению.
    • Сохраните файл и включите службу:

      sudo systemctl daemon-reload
      sudo systemctl enable bing_image_generator.service
      sudo systemctl start bing_image_generator.service
      sudo systemctl status bing_image_generator.service

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

API Endpoint

  • POST /bing: Генерирует изображения на основе предоставленного запроса. Возвращает JSON с ключом urls (массив URL-адресов изображений).
  • POST /bing2: Повторяет запрос к Bing 2 раза.
  • POST /bing10: Повторяет запрос к Bing 10 раз.
  • POST /bing20: Повторяет запрос к Bing 20 раз.

Запрос должен быть предварительно отмодерирован. 10х и 20х принудительно останавливаются если запрос был неудачным, бинг не любит когда его заставляют рисовать то что ему не нравится.

Запрос

Отправьте POST-запрос к одному из endpoints с JSON телом:

{
  "prompt": "a beautiful cat in space"
}

Ответ

В случае успеха, вернется JSON:

{
    "urls": [
        "https://....bing.net/th/id/....jpg",
        "https://....bing.net/th/id/....jpg",
        "https://....bing.net/th/id/....jpg",
        "https://....bing.net/th/id/....jpg"
    ]
}

В случае ошибки, вернется JSON с ошибкой:

{
    "error": "No images generated"
}

Пример запроса с curl:

curl -X POST \
    -H "Content-Type: application/json" \
    -d '{
        "prompt": "a beautiful cat in space"
    }' \
    http://<your_address>:<your_port>/bing10

Замените <your_address> и <your_port> на фактические значения из файла cfg.py.

Описание файлов

  • .gitignore: Игнорирует файлы, которые не нужно отслеживать в Git.
  • bing_genimg_v3.py: Содержит основной класс BingBrush для взаимодействия с API Bing. Отвечает за генерацию изображений через Bing Image Creator.
  • bing10api.py: Flask API для доступа к генерации изображений Bing.
  • cfg.py: Файл конфигурации для проекта.
  • my_genimg.py: Содержит функции для управления процессом генерации изображений (логика повторения запросов, ограничение на число одновременных запросов).
  • my_log.py: Функции для логирования событий.
  • requirements.txt: Список зависимостей Python.
  • utils.py: Вспомогательные функции.

Примечания

  • При первом запуске, сервер может какое-то время не отвечать. Это связано с загрузкой необходимых данных.
  • Если возникают проблемы при генерации изображений, убедитесь, что cookie в файле cookie.txt валидный и не истек.
  • Авторизации нет, адрес сервера должен быть или на локалхосте или в защищенной сети (локальная или впн)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0