Spaces:
Sleeping
Sleeping
| from fastapi import APIRouter, Request | |
| from pydantic import BaseModel | |
| from api.gpt_func import generate_response_and_voice | |
| from api.firebase_storage import upload_audio_to_firebase | |
| from pathlib import Path | |
| router = APIRouter() | |
| class Query(BaseModel): | |
| user_input: str | |
| async def chat(query: Query): | |
| try: | |
| text, audio_path = generate_response_and_voice(query.user_input) | |
| return {"text": text, "audio_path": str(audio_path)} | |
| except Exception as e: | |
| raise HTTPException(status_code=500, detail=str(e)) | |
| async def upload_audio(): | |
| audio_path = Path("/tmp/generated.mp3") | |
| url = upload_audio_to_firebase(audio_path) | |
| return {"url": url} |