2.2 KiB
2.2 KiB
Meeting Assistant API
FastAPI orchestration backend for Meeting Assistant - middleware between Mobile App, Whisper, and Ollama.
Architecture
Mobile App → FastAPI API → Whisper (transcription) + Ollama (AI analysis)
→ PostgreSQL (data) + Redis (queues/cache)
→ Celery Worker (async processing)
Quick Start
cp .env.example .env
docker-compose up -d
docker-compose exec api alembic upgrade head
API Documentation
- Swagger UI: http://localhost:8080/docs
- ReDoc: http://localhost:8080/redoc
Endpoints
Auth
POST /api/auth/register- Register new userPOST /api/auth/login- Login (returns JWT)POST /api/auth/refresh- Refresh access tokenGET /api/auth/me- Get current user
Meetings
POST /api/meetings/upload- Upload audio + trigger processingGET /api/meetings- List meetingsGET /api/meetings/{id}- Get meeting detailsGET /api/meetings/{id}/status- Get processing statusGET /api/meetings/{id}/analyses- Get all analysesGET /api/meetings/{id}/analyses/{type}- Get specific analysisPUT /api/meetings/{id}/participants/{label}- Update speaker nameDELETE /api/meetings/{id}- Delete meeting
WebSocket
WS /ws/meetings/{meeting_id}- Real-time status updates
Health
GET /health- Health check
Processing Pipeline
- Audio uploaded → saved to storage/
- Celery task queued
- Audio sent to Whisper for diarized transcription
- Transcription sent to Ollama for parallel analyses:
minutes- Structured meeting minutessentiment- Emotional tone analysispsychological- Behavioral patternscommunication- Communication quality feedbacksummary- Executive summary
- Status updated to
completed - WebSocket notification sent
Environment Variables
See .env.example for all configuration options.
Development
# View logs
docker-compose logs -f api
# Run migrations
docker-compose exec api alembic upgrade head
# Create new migration
docker-compose exec api alembic revision --autogenerate -m "description"
# Check celery worker
docker-compose logs -f worker