Skip to content

Latest commit

 

History

History
135 lines (96 loc) · 8.05 KB

README_RU.md

File metadata and controls

135 lines (96 loc) · 8.05 KB

DeepLX Vercel

English | Русский

Бесплатное бессерверное решение для API перевода DeepL, позволяющее легко интегрироваться с вашими приложениями. Разверните свой собственный экземпляр или запустите его локально в соответствии с вашими потребностями.

Особенности

  • Архитектура Serverless: Построено с использованием масштабируемости и простоты бессерверных платформ.
  • Лёгкое развертывание: Однокликовое развертывание на Vercel с минимальной конфигурацией.
  • Локальная разработка: Поддерживает локальную разработку для тестирования и модификаций (либо через Vercel CLI, либо с помощью описанного ниже метода).
  • Обновлённая логика API: Совместимо с последними изменениями API DeepLX для надёжного перевода.

Развертывание на Vercel

Разверните свой собственный API перевода DeepLX, нажав на кнопку ниже.

Развернуть с помощью Vercel

После нажатия на кнопку просто следуйте инструкциям для настройки API на Vercel.

Локальный запуск

Вот метод локального развертывания, описанный в репозитории deeplx-serverless от LegendLeo:

git clone https://github.com/LegendLeo/deeplx-serverless
cd deeplx-serverless
npm install
npm run start

Это запустит локальный сервер с API, работающим на http://localhost:9000.

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

После развертывания или локального запуска вы можете начать отправлять запросы на перевод текста. Отправьте POST запрос на /api/translate со следующей структурой JSON:

{
  "text": "Ваш текст для перевода",
  "source_lang": "Код исходного языка (например, 'EN')",
  "target_lang": "Код целевого языка (например, 'DE')",
  "tag_handling": "Опционально: обработка тегов ('html', 'xml' или оставьте пустым)"
}

Параметры:

  • text (обязательный): Текст, который вы хотите перевести.
  • source_lang (опционально): Код языка исходного текста (например, 'EN'). Используйте 'auto' для автоматического определения. По умолчанию 'auto'.
  • target_lang (обязательный): Код языка, на который нужно перевести текст (например, 'DE').
  • tag_handling (опционально): Укажите 'html' или 'xml', если ваш текст содержит такие теги и вы хотите, чтобы они корректно обрабатывались.

Пример использования curl:

curl --location --request POST 'https://your-deployment-url/api/translate' \
--header 'Content-Type: application/json' \
--data-raw '{
    "text": "Hello, World!",
    "source_lang": "EN",
    "target_lang": "DE",
    "tag_handling": ""
}'

Замените https://your-deployment-url на фактический URL вашего развертывания на Vercel или http://localhost:9000, если вы работаете локально.

Ответ:

API вернёт JSON-объект с переводом и дополнительной информацией:

{
  "code": 200,
  "id": 1234567890,
  "data": "Hallo, Welt!",
  "alternatives": ["Hallo, Welt!"],
  "source_lang": "EN",
  "target_lang": "DE",
  "method": "Free"
}
  • code: HTTP статус-код.
  • id: Уникальный идентификатор запроса на перевод.
  • data: Переведённый текст.
  • alternatives: Массив альтернативных переводов.
  • source_lang: Определённый или указанный исходный язык.
  • target_lang: Целевой язык перевода.
  • method: Указывает, использовался ли метод 'Free' или 'Pro'.

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

  • Ограничение частоты запросов: Избыточное количество запросов может привести к временному блокированию со стороны DeepL. Пожалуйста, избегайте отправки слишком большого количества запросов за короткий промежуток времени.
  • Ограничения использования: Этот API предназначен для личного или разработческого использования. Для коммерческого использования рассмотрите возможность подписки на официальный API DeepL.
  • Нет гарантий: Поскольку этот API зависит от публичных конечных точек DeepL, функциональность может быть нарушена, если DeepL изменит свой API. Пожалуйста, сообщайте о проблемах или вносите исправления, если это произойдёт.

Для пользователей Ballon Translator

После получения ссылки в формате https://your-deployment-url/api/translate просто вставьте её в поле api_url.

изображение

Для автоматического обновления

На случай, если я придумаю что-то новое, я заимствовал sync.yml из репозитория drmartinmar/Deeplx-vercel. Спасибо.

  • Чтобы это работало, вам нужно вручную перейти в раздел Actions и запустить workflow.

Благодарности

  • LegendLeo за оригинальную бессерверную реализацию.
  • OwO-Network за проект DeepLX.
  • ChatGPT (который помог написать этот README и помог разобраться с новым API)

Участие

Предложения и вклад приветствуются! Если у вас есть предложение или исправление, пожалуйста, создайте форк репозитория и отправьте pull request.

Лицензия

Этот проект распространяется под лицензией MIT. См. файл LICENSE для получения дополнительной информации.