SQL_chatbot_API / app.py
saadkhi's picture
Update app.py
107fcf0 verified
raw
history blame
988 Bytes
import torch
from fastapi import FastAPI
from pydantic import BaseModel
from transformers import AutoTokenizer, AutoModelForCausalLM
MODEL_ID = "saadkhi/SQL_Chat_finetuned_model"
app = FastAPI()
# ---- LOAD ONCE ONLY ----
tokenizer = AutoTokenizer.from_pretrained(MODEL_ID)
model = AutoModelForCausalLM.from_pretrained(
MODEL_ID,
dtype=torch.float16, # use dtype, not torch_dtype
device_map="auto",
low_cpu_mem_usage=True
)
model.eval()
class QueryRequest(BaseModel):
prompt: str
max_new_tokens: int = 256
@app.post("/generate")
def generate(req: QueryRequest):
inputs = tokenizer(req.prompt, return_tensors="pt").to(model.device)
with torch.no_grad():
outputs = model.generate(
**inputs,
max_new_tokens=req.max_new_tokens,
do_sample=True,
temperature=0.7,
top_p=0.9
)
text = tokenizer.decode(outputs[0], skip_special_tokens=True)
return {"response": text}