Update app.py
Browse files
app.py
CHANGED
@@ -81,30 +81,12 @@ async def t5answer(request: T5QuestionRequest):
|
|
81 |
@app.post("/modify_query2", response_model=ModifyQueryResponse)
|
82 |
async def modify_query2(request: ModifyQueryRequest):
|
83 |
try:
|
84 |
-
embeddings =
|
85 |
return ModifyQueryResponse(embeddings=embeddings[0].tolist())
|
86 |
except Exception as e:
|
87 |
raise HTTPException(status_code=500, detail=str(e))
|
88 |
|
89 |
|
90 |
-
def optimize_embedding(texts, precision='uint8'):
|
91 |
-
# Step 1: Generate embeddings with 384 dimensions
|
92 |
-
embeddings = model.encode(texts)
|
93 |
-
|
94 |
-
# Step 2: Normalize embeddings to [0, 1] range
|
95 |
-
embeddings_min = embeddings.min(axis=1, keepdims=True)
|
96 |
-
embeddings_max = embeddings.max(axis=1, keepdims=True)
|
97 |
-
normalized_embeddings = (embeddings - embeddings_min) / (embeddings_max - embeddings_min + 1e-8)
|
98 |
-
|
99 |
-
# Step 3: Scale normalized embeddings to fit within the range of uint8 or uint16
|
100 |
-
if precision == 'uint8':
|
101 |
-
scaled_embeddings = (normalized_embeddings * 255).astype('uint8')
|
102 |
-
elif precision == 'uint16':
|
103 |
-
scaled_embeddings = (normalized_embeddings * 65535).astype('uint16')
|
104 |
-
else:
|
105 |
-
raise ValueError("Unsupported precision. Use 'uint8' or 'uint16'.")
|
106 |
-
|
107 |
-
return scaled_embeddings
|
108 |
|
109 |
if __name__ == "__main__":
|
110 |
import uvicorn
|
|
|
81 |
@app.post("/modify_query2", response_model=ModifyQueryResponse)
|
82 |
async def modify_query2(request: ModifyQueryRequest):
|
83 |
try:
|
84 |
+
embeddings = model.encode([request.query_string])
|
85 |
return ModifyQueryResponse(embeddings=embeddings[0].tolist())
|
86 |
except Exception as e:
|
87 |
raise HTTPException(status_code=500, detail=str(e))
|
88 |
|
89 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
|
91 |
if __name__ == "__main__":
|
92 |
import uvicorn
|