File size: 819 Bytes
e83c648
304c996
703dd7a
304c996
e83c648
 
304c996
e83c648
 
385f9be
e83c648
 
304c996
e83c648
 
03e26b5
304c996
e83c648
 
 
 
03e26b5
e83c648
 
 
 
 
03e26b5
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
from fastapi import FastAPI
from pydantic import BaseModel
from sentence_transformers import SentenceTransformer

import os
os.environ["HF_HOME"] = "/tmp/huggingface"

# Initialize FastAPI app
app = FastAPI()

# Load pretrained model from Hugging Face (instead of hf_hub_download)
model = SentenceTransformer("all-MiniLM-L6-v2")  # Updated model

# Define request structure
class TextRequest(BaseModel):
    text: str

# Define response structure
class EmbeddingResponse(BaseModel):
    dimensions: int
    embedding: list[float]

# Endpoint to get text embedding
@app.post("/get_embedding", response_model=EmbeddingResponse)
async def get_embedding(request: TextRequest):
    embedding = model.encode([request.text])[0]  # Generate embedding
    return {"dimensions": len(embedding), "embedding": embedding.tolist()}