Skip to content

Commit 9cba4f0

Browse files
committed
feat(ai): return generic error message for LLM validation failures
1 parent b4f47dd commit 9cba4f0

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

  • apps/python-service/routers

‎apps/python-service/routers/ai.py‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,10 @@ async def query_builder(request: QueryBuilderRequest, req: Request):
140140
logger.error("[Trace: %s] ⏱️ AI Query Builder request timed out after 15s for developer_id=%s", trace_id, request.developer_id, exc_info=True)
141141
raise HTTPException(status_code=504, detail="AI request timed out") from e
142142
except Exception as e:
143+
error_name = e.__class__.__name__
143144
logger.error("[Trace: %s] ❌ AI Query Builder unhandled failure for developer_id=%s: %s", trace_id, request.developer_id, e, exc_info=True)
145+
if "BadRequest" in error_name or "Validation" in error_name:
146+
raise HTTPException(status_code=400, detail="The AI generated an invalid query format. Please rephrase or simplify your prompt.") from e
144147
raise HTTPException(status_code=500, detail="Internal server error") from e
145148

146149
@router.post("/collection-creator", response_model=CollectionCreatorResponse)
@@ -210,6 +213,6 @@ async def collection_creator(request: CollectionCreatorRequest, req: Request):
210213
error_name = e.__class__.__name__
211214
logger.error("[Trace: %s] ❌ AI Collection Creator unhandled failure for developer_id=%s: %s", trace_id, request.developer_id, e, exc_info=True)
212215
if "BadRequest" in error_name or "Validation" in error_name:
213-
raise HTTPException(status_code=400, detail=f"AI generation failed validation: {str(e)}") from e
216+
raise HTTPException(status_code=400, detail="The AI generated an invalid response format. Please rephrase or simplify your prompt.") from e
214217
raise HTTPException(status_code=500, detail="Internal server error") from e
215218

0 commit comments

Comments
 (0)