Унифицированный API для доступа к различным языковым моделям (LLM) через автоматизацию браузера. Получите бесплатный доступ к OpenAI, DeepSeek, DuckDuckGo, Gemini и другим провайдерам через единый интерфейс.
Демонстрация работы (старая версия)
- 🚀 Установка
- 🔨 Сборка из исходного кода
- ⚡ Быстрый старт
- 🌐 Веб-интерфейс
- 🐍 Пример использования
- 📚 API Документация
- ⚙️ Дополнительные настройки
-
Установите OpenJDK 21+:
sudo apt install openjdk-21-jdk
-
Установите необходимые зависимости (только для Linux):
sudo apt install xdotool
-
Установите браузер Chrome
-
Скачайте и запустите .jar файл из раздела Releases:
java -jar bingchat4urapp_server-0.0.1-SNAPSHOT.jar
-
Сервер запустится на порту 8080
Если вы хотите собрать проект самостоятельно из исходного кода:
-
Установите OpenJDK 21+:
sudo apt install openjdk-21-jdk
-
Установите Apache Maven:
sudo apt install maven
-
Установите необходимые зависимости (только для Linux):
sudo apt install xdotool
-
Установите браузер Chrome
💡 Примечание для Windows: На Windows не требуется установка дополнительных утилит, достаточно Java и Maven.
-
Сборка и установка библиотеки:
cd llmapi4free_lib ./install.sh
Этот скрипт соберет библиотеку llmapi4free и установит её в локальный Maven-репозиторий.
-
Сборка веб-приложения:
cd serverimpl/bingchat4urapp_server ./build.sh
Этот скрипт соберет веб-приложение с REST API, которое позволяет использовать библиотеку через веб-интерфейс или REST API.
-
Запуск собранного приложения:
java -jar target/bingchat4urapp_server-0.0.1-SNAPSHOT.jar
💡 Примечание: Первый скрипт (install.sh) собирает и устанавливает библиотеку в локальный Maven-репозиторий, а второй скрипт (build.sh) собирает веб-приложение, которое использует эту библиотеку.
- Запустите сервер - откроется окно браузера
- Войдите в Google аккаунт в открывшемся окне браузера
- Готово! Теперь можете использовать API или веб-интерфейс
💡 Важно: Авторизация в Google обязательна для всех LLM провайдеров. Выполните её один раз при запуске сервера.
Откройте в браузере: http://127.0.0.1:8080/
Веб-интерфейс позволяет:
- Тестировать работу сервиса
- Управлять провайдерами
- Просматривать историю ответов
В файле example/example.py
находится готовый Python-клиент, демонстрирующий работу с API.
Возможности примера:
- Интерактивный выбор LLM провайдера
- Установка предпочтительного провайдера
- Опциональная аутентификация
- Создание чат-сессии
- Отправка промптов с красивым выводом
Запуск:
cd example
python example.py
💡 Подсказка: Изучите код example.py чтобы понять как правильно интегрировать API в ваши проекты.
Base URL: /api
Сервер работает асинхронно:
- Создание задачи - клиент отправляет запрос и получает ID задачи
- Ожидание выполнения - клиент опрашивает
/get/{id}
доisFinished: true
- Получение результата - в ответе содержится результат выполнения
⚠️ Опционально: Этот endpoint не обязателен. Система автоматически выполнит авторизацию при первой отправке промпта.
Request:
{
"provider": "OpenAI" // OpenAI | DeepSeek | DuckDuck | Gemini
}
Response:
42 // ID задачи
Response:
43 // ID задачи
Request:
{
"prompt": "Ваш вопрос здесь",
"timeOutForAnswer": 90
}
Validation:
prompt
: 4-4000 символовtimeOutForAnswer
: 30-300 секунд
Response:
44 // ID задачи
Response:
[
{
"provider": "OpenAI",
"gotError": false,
"authDone": true,
"authRequired": true,
"lastAnswer": "Последний ответ от модели"
}
]
Request:
{
"provider": "OpenAI"
}
Response:
{
"provider": "OpenAI",
"authDone": true,
"gotError": false,
"lastAnswer": "..."
}
Response:
{
"id": 42,
"type": 1,
"isFinished": true,
"gotError": false,
"result": "Текстовый результат",
"htmlResult": "<div>HTML результат</div>",
"imageResult": "screenshot.png"
}
Поддерживаются SOCKS5 прокси без авторизации:
java -jar bingchat4urapp_server-0.0.1-SNAPSHOT.jar --proxy 127.0.0.1:2080
При развертывании на удаленном сервере обязательно установите:
- VNC сервер
- Графическое окружение
- Менеджер окон X11
type = 0
: Системная задача завершения работыtype = 1
: Задача аутентификацииtype = 2
: Задача отправки промптаtype = 3
: Задача создания чата
200 OK
: Успешное выполнение201 Created
: Ресурс создан400 Bad Request
: Ошибка валидации404 Not Found
: Ресурс не найден500 Internal Server Error
: Внутренняя ошибка
- Все задачи выполняются асинхронно
- ID задач - уникальные целые числа
- Поля
result
,htmlResult
,imageResult
присутствуют всегда - При ошибках валидации возвращается список конкретных ошибок