llamaindex-retrieval-api icon indicating copy to clipboard operation
llamaindex-retrieval-api copied to clipboard

Add an HTTPException for when the engine fails in query.p

Open Haste171 opened this issue 1 year ago • 2 comments

Add an HTTPException for when the engine fails in query.p

Haste171 avatar Jan 17 '24 06:01 Haste171

1. 📝 Indexing

I'm indexing the files within your repository.

2. 🔎 Searching

I'm searching for relevant snippets in your repository.

I found the following snippets in your repository.

View Snippets

https://github.com/Haste171/llamaindex-retrieval-api/blob/9cd5c37e745e52e3b1eba66d885992d34be0be64/routers/loaders/pdf.py#L0-L24

https://github.com/Haste171/llamaindex-retrieval-api/blob/9cd5c37e745e52e3b1eba66d885992d34be0be64/LICENSE#L0-L15

https://github.com/Haste171/llamaindex-retrieval-api/blob/9cd5c37e745e52e3b1eba66d885992d34be0be64/LICENSE#L15-L30

https://github.com/Haste171/llamaindex-retrieval-api/blob/9cd5c37e745e52e3b1eba66d885992d34be0be64/routers/loaders/ipynb.py#L0-L25

https://github.com/Haste171/llamaindex-retrieval-api/blob/9cd5c37e745e52e3b1eba66d885992d34be0be64/.gitignore#L0-L15

3. 🌐 Initiate Planning💬 Discussion

I'm creating a plan for the discussion and coding steps.

I have created the following workflow as a basis for how the discussion and coding will be derived.

💡 Steps

Import HTTPException

*View Info*

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'. Dependencies: []

Add HTTPException

*View Info*

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. 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. The code should look something like this: 'try: [engine call] except: raise HTTPException(status_code=500, detail='Engine has failed')'. Dependencies: ['Step 1']

Write tests

*View Info*

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 query function with this mock engine. Assert that the HTTPException is raised with the correct status code and detail message. Dependencies: ['Step 2']

Haste171 avatar Jan 17 '24 06:01 Haste171

{"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'.", "async_score": 2, "assigned_agent": "AI or User", "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. 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. The code should look something like this: 'try: [engine call] except: raise HTTPException(status_code=500, detail='Engine has failed')'.", "async_score": 8, "assigned_agent": "AI or User", "dependencies": ["Step 1"]}, {"step": "Step 3", "name": "Write tests", "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 query function with this mock engine. Assert that the HTTPException is raised with the correct status code and detail message.", "async_score": 10, "assigned_agent": "AI or User", "dependencies": ["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'.
	Async Score: 2
	Assigned Agent: AI or User
	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. 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. The code should look something like this: 'try: [engine call] except: raise HTTPException(status_code=500, detail='Engine has failed')'.
	Async Score: 8
	Assigned Agent: AI or User
	Dependencies: ['Step 1']
Step 3: Write tests
	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 query function with this mock engine. Assert that the HTTPException is raised with the correct status code and detail message.
	Async Score: 10
	Assigned Agent: AI or User
	Dependencies: ['Step 2']

Haste171 avatar Jan 17 '24 06:01 Haste171