Add minimal service stubs

This commit is contained in:
2026-02-20 02:40:50 +03:00
parent 721bf3d6d8
commit eaa2b1bd7c
13 changed files with 134 additions and 0 deletions

10
services/asr/Dockerfile Normal file
View File

@@ -0,0 +1,10 @@
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]

15
services/asr/app.py Normal file
View File

@@ -0,0 +1,15 @@
from fastapi import FastAPI
import redis
import os
app = FastAPI()
redis_host = os.getenv("REDIS_HOST", "localhost")
redis_port = int(os.getenv("REDIS_PORT", 6379))
r = redis.Redis(host=redis_host, port=redis_port, decode_responses=True)
@app.get("/health")
async def health():
return {"status": "ok", "service": "asr"}
# Позже здесь будут эндпоинты для приёма аудио и возврата текста

View File

@@ -0,0 +1,5 @@
fastapi==0.115.0
uvicorn[standard]==0.30.1
redis==5.0.4
pydantic==2.8.2
python-dotenv==1.0.1

View File

@@ -0,0 +1,10 @@
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]

View File

@@ -0,0 +1,16 @@
from fastapi import FastAPI
import redis
import os
import json
app = FastAPI()
redis_host = os.getenv("REDIS_HOST", "localhost")
redis_port = int(os.getenv("REDIS_PORT", 6379))
r = redis.Redis(host=redis_host, port=redis_port, decode_responses=True)
@app.get("/health")
async def health():
return {"status": "ok", "service": "speaker-id"}
# Позже здесь будут эндпоинты для регистрации и идентификации

View File

@@ -0,0 +1 @@
{}

View File

@@ -0,0 +1,5 @@
fastapi==0.115.0
uvicorn[standard]==0.30.1
redis==5.0.4
pydantic==2.8.2
python-dotenv==1.0.1

10
services/tts/Dockerfile Normal file
View File

@@ -0,0 +1,10 @@
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]

15
services/tts/app.py Normal file
View File

@@ -0,0 +1,15 @@
from fastapi import FastAPI
import redis
import os
app = FastAPI()
redis_host = os.getenv("REDIS_HOST", "localhost")
redis_port = int(os.getenv("REDIS_PORT", 6379))
r = redis.Redis(host=redis_host, port=redis_port, decode_responses=True)
@app.get("/health")
async def health():
return {"status": "ok", "service": "tts"}
# Позже здесь будет эндпоинт /synthesize

View File

@@ -0,0 +1,5 @@
fastapi==0.115.0
uvicorn[standard]==0.30.1
redis==5.0.4
pydantic==2.8.2
python-dotenv==1.0.1

10
services/vad/Dockerfile Normal file
View File

@@ -0,0 +1,10 @@
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]

26
services/vad/app.py Normal file
View File

@@ -0,0 +1,26 @@
from fastapi import FastAPI
import redis
import os
app = FastAPI()
redis_host = os.getenv("REDIS_HOST", "localhost")
redis_port = int(os.getenv("REDIS_PORT", 6379))
r = redis.Redis(host=redis_host, port=redis_port, decode_responses=True)
@app.get("/health")
async def health():
return {"status": "ok", "service": "vad"}
@app.websocket("/audio-stream")
async def audio_stream(websocket):
await websocket.accept()
print("Client connected to VAD")
try:
while True:
data = await websocket.receive_bytes()
# Пока ничего не делаем с данными
# В будущем здесь будет VAD-обработка
pass
except Exception as e:
print(f"VAD connection closed: {e}")

View File

@@ -0,0 +1,6 @@
fastapi==0.115.0
uvicorn[standard]==0.30.1
redis==5.0.4
pydantic==2.8.2
python-dotenv==1.0.1
# Позже добавим silero-vad, numpy, torch и т.д.