Compare commits

..

No commits in common. "a0efd90c14ab0a3f650c446da3df5de64f8f862c" and "7b76c8cfefd987f2a00d8f29ef2e266a9e058140" have entirely different histories.

View File

@ -32,66 +32,6 @@ def health_healthz():
return jsonify("OK"), 200 return jsonify("OK"), 200
@app.post("/add_points")
def add_points():
#doc uuid and clauses: [{},{}]
if request.content_type == 'application/json':
try:
data = request.get_json(force=True)
if data is None:
raise BadRequest
except BadRequest:
return jsonify({"error": "Invalid JSON"}), 400
else:
data = request.form.to_dict()
doc_uuid=data.get("doc_uuid")
clauses = data.get("clauses", [])
if not doc_uuid or not clauses:
return jsonify({"error": "Missing 'doc_uuid' or 'clauses' in request"}), 400
vector_points = []
for clause in clauses:
clause_id = clause.get("clause_id")
line_item = clause.get("line_item")
line_number = clause.get("line_number")
if not clause_id or not line_item:
return jsonify({"error":"Missing fileds in clause"}), 400
try:
clause_vectors=Embedding.call(line_item)
except Exception as e:
return jsonify({"error": f"Embedding failed: {str(e)}"}), 500
payload = {
"doc_id": doc_uuid,
"clause_id": clause_id,
"line_item": line_item,
"line_number": line_number
}
for vector in clause_vectors:
point = PointStruct(
id=str(uuid.uuid7()),
vector=vector.tolist(),
payload=payload
)
vector_points.append(point)
try:
result = Qdrant.get_client().upsert(
points= vector_points
)
except Exception as e:
return jsonify({"error": f"Qdrant upsert failed: {str(e)}"}), 500
return jsonify({"message": f"{len(vector_points)} points added successfully"}), 200
@app.post("/add") @app.post("/add")
def add(): def add():
if request.content_type == 'application/json': if request.content_type == 'application/json':
@ -140,47 +80,6 @@ def add():
@app.post("/delete_points")
def delete_points():
if request.content_type == 'application/json':
try:
data = request.get_json(force=True)
if data is None:
raise BadRequest
except BadRequest:
return jsonify({"error": "Invalid JSON"}), 400
else:
data = request.form.to_dict()
doc_uuid=data.get("doc_uuid")
if not doc_uuid:
return jsonify({"error": "Missing 'doc_uuid' in request"}), 400
filter_condition = models.Filter(
must=[
models.FieldCondition(
key="doc_id",
match=models.MatchValue(value=doc_uuid)
)
]
)
try:
result = Qdrant.get_client().delete(
points_selector=models.FilterSelector(
filter=filter_condition
),
wait=True
)
if result and result.status == "completed":
return jsonify({"message": f"Deleted all points with doc_id = {doc_uuid}"}), 200
else:
return jsonify({"warning": "Deletion request did not complete successfully"}), 500
except Exception as e:
return jsonify({"error": str(e)}), 500
@app.post("/delete") @app.post("/delete")
def delete(): def delete():