CoolFace
Apppublic

kennethflowcrafter/testspace

sourceHugging Faceapache-2.0updated 3y agoView on Hugging Face
0likes
main.py41 linesDownload Raw Back to root
1from fastapi import FastAPI, Body2from fastapi.staticfiles import StaticFiles3from fastapi.responses import FileResponse4from sentence_transformers import SentenceTransformer5from transformers import pipeline6from typing import List7from pydantic import BaseModel8 9 10class Sentences(BaseModel):11    sentences: List[str]12 13 14app = FastAPI()15 16pipe_flan = pipeline("text2text-generation", model="google/flan-t5-small")17sentence_model = SentenceTransformer("sentence-transformers/all-mpnet-base-v2")18 19 20@app.get("/infer_t5")21def t5(input):22    output = pipe_flan(input)23    return {"output": output[0]["generated_text"]}24 25 26@app.post("/infer_vector")27async def infer_vector(sentences: Sentences = Body(...)):28    sentence_list = sentences.sentences29    embeddings_list = sentence_model.encode(sentence_list)30    # normalize each vector a list of floats31    embeddings_list = [list(map(float, embedding)) for embedding in embeddings_list]32    return {"vectors": embeddings_list}33 34 35app.mount("/", StaticFiles(directory="static", html=True), name="static")36 37 38@app.get("/")39def index() -> FileResponse:40    return FileResponse(path="/app/static/index.html", media_type="text/html")41