File size: 972 Bytes
364a1cc d7a92f3 9a50b03 d7a92f3 364a1cc d7a92f3 364a1cc d354551 364a1cc d7a92f3 364a1cc d7a92f3 c8a3df0 d7a92f3 c8a3df0 d354551 d7a92f3 d354551 c8a3df0 364a1cc d7a92f3 | 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 32 | from fastapi import FastAPI, HTTPException
from pydantic import BaseModel
from transformers import pipeline
# Load model
generator = pipeline("text-generation", model="bp7274/soulprint-model")
app = FastAPI()
class InputData(BaseModel):
age: int
location: str
profession: str
personality: str
@app.get("/")
def health():
return {"status": "ready"}
@app.post("/generate")
def generate_quote(data: InputData):
try:
prompt = f"{data.age}, {data.location}, {data.profession}, {data.personality}."
result = generator(
prompt,
max_length=120,
temperature=0.9,
top_p=0.95,
repetition_penalty=1.2,
do_sample=True
)[0]["generated_text"]
# Strip only the prompt portion (no fallback check)
quote = result[len(prompt):].strip()
return {"quote": quote}
except Exception as e:
raise HTTPException(status_code=500, detail=str(e)) |