Haste171 / llamaindex-retrieval-api

API to load and query documents using RAG
MIT License
15 stars 3 forks source link

Add an HTTPException for when the engine fails in query.py #29 #31

Open Haste171 opened 5 months ago

Haste171 commented 5 months ago

{"tag": "INITIAL_PLANNING", "workflow": {"tasks": [{"step": "Step 1", "name": "Import HTTPException", "action": "modify", "file": "routers/retrievers/query.py", "start_line": 1, "end_line": 1, "instructions": "At the top of the file, import HTTPException from fastapi.exceptions by adding the line 'from fastapi.exceptions import HTTPException'. This will allow us to raise the HTTPException when the engine fails.", "async_score": 2, "assigned_agent": "AI", "dependencies": []}, {"step": "Step 2", "name": "Add HTTPException", "action": "modify", "file": "routers/retrievers/query.py", "start_line": 10, "end_line": 20, "instructions": "Identify the section of the code where the engine is called and could potentially fail. Surround this section with a try-except block. In the except block, raise an HTTPException with a status code of 500 and a detail message indicating that the engine has failed. This will look something like 'except Exception: raise HTTPException(status_code=500, detail='Engine failure')'.", "async_score": 7, "assigned_agent": "AI", "dependencies": ["Step 1"]}, {"step": "Step 3", "name": "Write tests for HTTPException", "action": "create", "file": "tests/test_query.py", "start_line": 1, "end_line": 50, "instructions": "Create a new file in the tests directory called test_query.py. In this file, write tests to ensure that the HTTPException is raised when the engine fails. This will involve creating a mock engine that always fails, and then calling the function in query.py that uses this engine. The test should assert that an HTTPException with a status code of 500 is raised. Make sure to import the necessary modules and functions, including HTTPException from fastapi.exceptions and the function you are testing from query.py.", "async_score": 8, "assigned_agent": "AI", "dependencies": ["Step 1", "Step 2"]}], "snippets": []}}

Step 1: Import HTTPException
    Action: modify
    File: routers/retrievers/query.py
    Start Line: 1
    End Line: 1
    Instructions: At the top of the file, import HTTPException from fastapi.exceptions by adding the line 'from fastapi.exceptions import HTTPException'. This will allow us to raise the HTTPException when the engine fails.
    Async Score: 2
    Assigned Agent: AI
    Dependencies: []
Step 2: Add HTTPException
    Action: modify
    File: routers/retrievers/query.py
    Start Line: 10
    End Line: 20
    Instructions: Identify the section of the code where the engine is called and could potentially fail. Surround this section with a try-except block. In the except block, raise an HTTPException with a status code of 500 and a detail message indicating that the engine has failed. This will look something like 'except Exception: raise HTTPException(status_code=500, detail='Engine failure')'.
    Async Score: 7
    Assigned Agent: AI
    Dependencies: ['Step 1']
Step 3: Write tests for HTTPException
    Action: create
    File: tests/test_query.py
    Start Line: 1
    End Line: 50
    Instructions: Create a new file in the tests directory called test_query.py. In this file, write tests to ensure that the HTTPException is raised when the engine fails. This will involve creating a mock engine that always fails, and then calling the function in query.py that uses this engine. The test should assert that an HTTPException with a status code of 500 is raised. Make sure to import the necessary modules and functions, including HTTPException from fastapi.exceptions and the function you are testing from query.py.
    Async Score: 8
    Assigned Agent: AI
    Dependencies: ['Step 1', 'Step 2']