Веб-программист. Говорящие аватары‑философы AI (Дистанционная работа)

Бюджет не указан

Задание: Веб-программист. Говорящие аватары‑философы AI (Дистанционная работа)

1. Цель и задачи Цель: Создать веб‑сервис, позволяющий пользователю в реальном времени общаться с «аватарами» философов (Эпиктет, Аристотель, Марк Аврелий и др.) через голосовые сообщения и получать от них видео‑ответы с синхронизацией речи и анимацией лица (HeyGen). Ключевые задачи: * Приём аудио‑запросов от пользователя * Распознавание речи (STT → текст) * Поисковый модуль: извлечение контекста из корпуса текстов философа * Генерация ответа через LLM (RAG: retrieval‑augmented generation) * Синтез речи (TTS) * Генерация видео‑аватара через HeyGen API * Отправка видео пользователю в веб‑чат 2. Архитектура системы flowchart LR Client[Клиент (React/NextJS)] STT[STT‑сервис (Whisper)] VecDB[Векторная БД (Pinecone/Weaviate)] Agent[Agent (Django API + LangChain)] TTS[TTS‑сервис (ElevenLabs/Azure)] HeyGen[HeyGen‑Proxy] Queue[Очередь (RabbitMQ/Redis Streams)] WS[WebSocket‑сервер] Client -->|аудио| STT STT -->|текст| Agent Agent -->|запрос контекста| VecDB VecDB --> Agent Agent -->|ответ текст| TTS TTS --> Agent Agent -->|audio+avatarID| HeyGen HeyGen --> Agent Agent -->|видео| Client Agent -.-> Queue Queue -.-> Agent Agent <--> WS 3. Основные компоненты и технологии Компонент Технологии / сервисы Бэкенд API & Agent Python, Django, Django REST Framework, LangChain/LlamaIndex Векторная БД Pinecone / Weaviate / Qdrant + OpenAI Embeddings API STT (Speech‑to‑Text) OpenAI Whisper API или локально развёрнутый Whisper TTS (Text‑to‑Speech) ElevenLabs / Azure Cognitive Services / Google Cloud TTS Интеграция HeyGen официальное HeyGen REST API (+ свой прокси‑контейнер) Очереди и асинхронность RabbitMQ или Redis Streams + Celery или custom workers WebSocket‑сервер Django Channels или отдельный Node.js с Socket.IO Фронтенд ReactJS, NextJS, WebRTC (для записи аудио), Vercel deployment Контейнеризация и деплой Docker, Docker Compose, DigitalOcean Droplet, Vercel Хранение сессий и кэш Redis Мониторинг Prometheus + Grafana Безопасность Nginx (TLS), JWT для внутренних сервисов, rate‑limit 4. Функциональные требования 1. Регистрация и сессии * Каждый пользователь получает уникальный ID сессии. * Возможность переключаться между разными философами. 2. Запись и отправка аудио * UI‑компонент для записи (WebRTC) или загрузки файла. * Отправка на STT‑сервис. 3. Распознавание речи * Точность распознавания не ниже 95%. * Поддержка русского и английского языков. 4. Поиск контекста * Индексация минимум 1 000–5 000 цитат и текстов для каждого философа. * Время отклика ≤ 300 ms. 5. Генерация ответа * Ответы в стиле выбранного философа (тон, цитаты). * Ограничение длины ответа — до 200 слов. 6. Синтез речи и видео‑аватар * Время конвертации TTS ≤ 1 s. * Генерация видео в HeyGen ≤ 3 s. * Сохранение видео‑ответов в S3‑like хранилище или DigitalOcean Spaces. 7. Front‑end * Отображение видео и текста ответа. * Индикация процесса (загрузка, обработка, готово). 8. Логи и метрики * Логирование всех этапов (STT, поиск, LLM, TTS, HeyGen). * Сбор метрик задержек, ошибок, нагрузок. 5. Нефункциональные требования * Производительность: * Обработка одного запроса end‑to‑end ≤ 6 s. * Масштабируемость: * Возможность горизонтального масштабирования каждого микросервиса. * Надёжность: * Автоматический перезапуск контейнеров при падении. * Очереди гарантируют доставку сообщений. * Безопасность: * TLS‑шифрование для всех HTTP/WebSocket соединений. * Защита API ключей (Vault или переменные окружения). 6. Требования к программисту Позиция: Full‑stack разработчик / DevOps инженер (microservices) Обязательные навыки: * Backend: * Python 3.8+, Django, Django REST Framework * Опыт работы с LangChain или LlamaIndex (RAG) * Знание OpenAI API (GPT, Embeddings), Whisper API * Celery / RabbitMQ или Redis Streams * PostgreSQL, Redis * Frontend: * ReactJS, NextJS * WebRTC (или опыт интеграции аудио‑записи в браузере) * Опыт работы с WebSocket (Django Channels или Socket.IO) * Инфраструктура: * Docker, Docker Compose, базовое понимание Kubernetes * DigitalOcean Droplet, Vercel (CI/CD) * Nginx + TLS * Опыт деплоя и мониторинга микросервисов (Prometheus, Grafana) * Векторные БД: * Pinecone, Weaviate или Qdrant * OpenAI Embeddings API Пожалуйста, пришлите примеры ваших работ, в частности проекты по интеграции с OpenAI и ChatGPT, а также тексты в GPT Wrappers. Расскажите, как вы видите наш проект: в какие сроки сможете его реализовать и какова будет стоимость. Уточните, работаете ли вы как частный специалист или в составе команды, и достаточно ли у вас квалификации для выполнения этой задачи. Жду ваши примеры, коммерческое предложение, сроки и бюджет.