Spaces:
Sleeping
Sleeping
| from fastapi import FastAPI, Request, UploadFile, File | |
| import openai | |
| import os | |
| from io import BytesIO | |
| openai.api_key = os.environ["OPENAI_API_KEY"] | |
| app = FastAPI() | |
| async def chat(req: Request): | |
| data = await req.json() | |
| messages = data.get("messages", []) | |
| response = openai.chat.completions.create( | |
| model="gpt-4o", | |
| messages=messages | |
| ) | |
| return {"reply": response.choices[0].message.content} | |
| async def transcribe(file: UploadFile = File(...)): | |
| audio_bytes = await file.read() | |
| audio_file = BytesIO(audio_bytes) | |
| audio_file.name = file.filename # Required so OpenAI knows the format | |
| response = openai.audio.transcriptions.create( | |
| model="whisper-1", | |
| file=audio_file | |
| ) | |
| return {"text": response.text} | |