Spaces:
Sleeping
Sleeping
File size: 816 Bytes
a286c29 e532bec a286c29 f7319da f8391ba a286c29 efd0483 a286c29 e532bec 042042c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
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()
@app.post("/chat")
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}
@app.post("/transcribe")
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}
|