32 lines
588 B
Python
32 lines
588 B
Python
from fastapi import FastAPI
|
|
from pydantic import BaseModel
|
|
|
|
from .core.llm import client
|
|
|
|
app = FastAPI()
|
|
|
|
|
|
# ---- request model ----
|
|
class ChatRequest(BaseModel):
|
|
message: str
|
|
|
|
|
|
# ---- basic health check ----
|
|
@app.get("/")
|
|
def root():
|
|
return {"status": "ok"}
|
|
|
|
|
|
# ---- test LLM endpoint ----
|
|
@app.post("/chat")
|
|
def chat(req: ChatRequest):
|
|
response = client.chat.completions.create(
|
|
model="deepseek-chat",
|
|
messages=[
|
|
{"role": "user", "content": req.message}
|
|
]
|
|
)
|
|
|
|
return {
|
|
"response": response.choices[0].message.content
|
|
} |