FastAPI + aiogram + AWS (S3 + DynamoDB) + Docker + LLM (mock/OpenAI)
- FastAPI — бекенд
- aiogram 3 — Telegram-бот
- AWS S3 — фото
- AWS DynamoDB — мета-дані
- LLM — OpenAI (або мок)
- Pytest — тести
docker compose up --build
Запуск локально
# Бекенд
uvicorn app.main:app --reload
# Бот
python bot/main.py
Тести
docker compose run --rm tests.env
TELEGRAM_BOT_TOKEN=...
BACKEND_BASE_URL=http://backend:8000
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
S3_BUCKET_NAME=testtask-friends-photos
DYNAMODB_TABLE_NAME=FriendsTable
LLM_PROVIDER=mockКоманди в Telegram
@friends_list893_bot
/addfriend — додати друга
/list — список
/friend — деталі
/ask <питання> — запит до LLM