Задача
Необходимо разработать Telegram-бота, который выступает в роли промежуточного звена между интерфейсом Telegram и конкретным проектом ChatGPT. Основная функция бота - передача данных от пользователя в проект и возврат сгенерированных проектом ответов.
Функционал
1. Обработка PDF-файлов
- Пользователь отправляет в чат с ботом PDF-файл.
- Бот перенаправляет файл в проект ChatGPT.
- Ответ формируется строго на основании логики, заложенной в проекте.
2. Обработка голосовых сообщений
- После получения ответа по PDF пользователь отправляет голосовое сообщение.
- Бот автоматически распознаёт речь и переводит её в текст.
- Полученный текст передаётся в тот же проект ChatGPT.
- Результатом являются дополненные рекомендации.
3. Поддержание контекста
- Проект ChatGPT имеет доступ ко всей цепочке диалога:
- Загруженные PDF-файлы
- Предыдущие ответы системы
- Голосовые уточнения в текстовом формате
- Контекст одного сценария (кейса) сохраняется и не обнуляется без необходимости.
Технические требования
- Использование Telegram Bot API для создания бота.
- Интеграция с OpenAI API с поддержкой функционала Projects.
- Реализация обработки PDF-документов и распознавания речи (Voice to Text).
- Обязательная привязка к определённому идентификатору проекта (project_id).
- Минимальная собственная логика на стороне бота - только маршрутизация и перенос данных.
Результат работы
- Готовый работоспособный бот.
- Полная привязка к проекту ChatGPT.
- Чистый исходный код бота.
- Краткая документация (инструкция) по запуску.
Важные условия
- Бот не должен иметь собственного обучения, интерпретации или дополнительной логики обработки.
- Формирование всех ответов является исключительной прерогативой проекта ChatGPT.