Заказчик
Отзывы фрилансеров:
+ 0
- 0
Зарегистрирован на сайте меньше месяца
Бюджет:
10 000 руб
128.27 $ — 109.71 €
🛠 Техническое задание: Telegram-бот для анализа медицинских анализов
🎯 Цель проекта
Разработать Telegram-бота, который:
Получает медицинские анализы от пользователя в разных форматах (текст, таблицы, PDF, фото).
Распознаёт и извлекает данные из файлов (включая сканы и фотографии).
Отправляет содержимое в OpenAI GPT-4 для анализа.
Выдаёт текстовый медицинский разбор и советы.
Строит графики по показателям, если в файлах есть числовые данные.
💻 Стек технологий
Язык: Python 3.10+
Telegram API: python-telegram-bot
OpenAI API: openai
Переменные окружения: python-dotenv
Работа с изображениями: Pillow
OCR: pytesseract (Tesseract OCR)
Работа с PDF: PyMuPDF (fitz) или pdfplumber
Работа с Excel: pandas, openpyxl
Графики: matplotlib или plotly
⚙️ Функциональность
📥 1. Загрузка и приём файлов
Поддерживаемые форматы:
.txt, .csv, .xlsx
.pdf — включая сканированные документы
.jpg, .jpeg, .png — фото/сканы анализов
Бот должен:
принимать файлы через Telegram
сохранять их на сервере
определять тип файла и обрабатывать соответствующим способом
🔍 2. Извлечение и обработка данных
Тип файла Что делать
.txt, .csv, .xlsx Прочитать как таблицу или текст
.pdf Извлечь текст или применить OCR, если PDF скан
.jpg, .png Распознать текст с помощью Tesseract OCR
Файлы проходят обработку и преобразуются в структурированный текст, пригодный для анализа.
🧠 3. Анализ через OpenAI
После обработки:
текст передаётся в OpenAI Chat API (GPT-4) с промтом:
"Проанализируй следующие медицинские анализы. Объясни показатели и сделай рекомендации на русском языке, как врач."
Ответ выводится пользователю в Telegram.
📊 4. Визуализация (если применимо)
Если в данных есть числовые показатели (например, гемоглобин, глюкоза и т.д. по датам), бот:
строит графики изменений показателей во времени
присылает график в виде изображения (например, .png)
Можно использовать matplotlib или plotly для красивой визуализации.
📦 5. Хранение данных
Все файлы сохраняются в папке files/
Имена файлов уникализируются с помощью user_id и времени
Логи: логируются загрузки, ошибки и ответы от OpenAI
👤 6. Управление пользователями
Бот должен сохранять Telegram user_id, username, дату загрузки
При желании можно ограничить доступ по whitelisting
💬 Команды бота
/start — приветствие и инструкция
/help — краткое описание поддерживаемых форматов
/history — (опционально) список предыдущих загрузок
/graph — построить график по предыдущим анализам (если данные накоплены)
🛡 Безопасность
Все ключи (BOT_TOKEN, OPENAI_API_KEY) хранятся в .env
В коде не должно быть жёстко вписанных токенов
Желательно обрабатывать большие файлы аккуратно (лимиты Telegram/OpenAI)
🗂 Структура проекта (предложение)
telegram_health_bot/
├── bot.py
├── .env
├── requirements.txt
├── files/
├── utils/
│ ├── pdf_reader.py
│ ├── image_ocr.py
│ ├── excel_parser.py
│ ├── visualizer.py
│ └── gpt_interface.py
└── logs/
🖥 Развёртывание
Локальный запуск: python bot.py
Поддержка Docker — по желанию
Можно разместить на сервере (VPS) или PythonAnywhere
📎 Что предоставляет заказчик
Telegram BOT TOKEN из @BotFather
OpenAI API Key (GPT-4)
Примеры анализов: фото, PDF, таблицы
⏱ Сроки
MVP: 3–5 рабочих дней
Поддержка изображений и графиков: +2 дня
📌 Итог
Выход:
Полностью рабочий Telegram-бот
Поддержка всех нужных форматов
Графики, советы, OCR, логирование
Инструкция по установке
Исходный код
Разделы:
Опубликован:
30.06.2025 | 16:20 [поднят: 30.06.2025 | 16:20]
Заказ находится в архиве