Gaykar commited on
Commit
f22f62d
·
verified ·
1 Parent(s): 6099a6b

Created app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -0
app.py ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from fastapi import FastAPI
2
+ from pydantic import BaseModel
3
+ from typing import List
4
+ from sentence_transformers import SentenceTransformer
5
+ import uvicorn
6
+
7
+ app = FastAPI(title="Medical Embedding Service")
8
+
9
+ # Load model ONCE at startup
10
+ print("Loading Medical RAG Model... this may take a moment.")
11
+ model = SentenceTransformer("sentence-transformers/all-MiniLM-L6-v2")
12
+ print("Model loaded successfully!")
13
+
14
+ class QueryRequest(BaseModel):
15
+ text: str
16
+
17
+ class DocumentRequest(BaseModel):
18
+ texts: List[str]
19
+
20
+ @app.post("/embed_query")
21
+ async def embed_query(request: QueryRequest):
22
+ # Uses specialized encode_query for IR tasks
23
+ embedding = model.encode_query(request.text).tolist()
24
+ return {"embedding": embedding}
25
+
26
+ @app.post("/embed_docs")
27
+ async def embed_docs(request: DocumentRequest):
28
+ # Uses specialized encode_document for IR tasks
29
+ embeddings = model.encode_document(request.texts).tolist()
30
+ return {"embeddings": embeddings}