Identify Lowesrt Prices for the products.
Featuring Notebooks to Modules to Infrastructure in Azure & more.
Hello and welcome!
End-To-End application of an LLM agent that takes the details of the product characteristics and returns a list of suggested products with lowest prices at the top and descriptions. LLM agent that sold the goods using Open AI - ChatGPT - can be inspected through Simple LLM Python module or a newer Python module that is still under work by 21st of February here or a newer Jupyter Notebook here while FastAPI
found here, Docker
- here & Terraform
- here implementations are built for the older Python module based on older Jupyter notebook that is ought to be remade by 21st of February as PostgreSQl database is not yet implemented but under work as found here.
- Create a Virtual nnvironemnt
To create a virtual environment, run the following command in your project directory:
python3 -m venv VENV_NAME
- Activate the Virtual Environment
To activate the virtual environment, use one of the following commands, depending on your operating system:
- On macOS and Linux:
source VENV_NAME/bin/activate
- On Windows:
.\VENV_NAME\Scripts\activate
- Install the dependencies
Ensure you have a requirements.txt
file in your project directory and then install the packages listed in requirements.txt
into your activated virtual environment by running:
pip install -r requirements.txt
- Run the application
To run the application, you can use one of the following methods:
- Run the Jupyter Notebook:
TO BE ADDED
- Run the FastAPI application:
TO BE ADDED
- Run the Docker container:
TO BE ADDED
- Run the Terraform script:
TO BE ADDED
- Run the Azure application:
TO BE ADDED
- Deactivate the Virtual Environment
Once you're done working in the virtual environment and want to switch back to the global Python environment, you can deactivate it by simply running:
`deactivate`
DONE 1. Update the description of the solved problem with what is expected.
DONE 2. Ensure the app is not getting blocked or over-engineering the solution, by starting from Jupyter Notebook and making the agent work.
DONE 3. Wrap up in Fast API and expose the POST endpoint to perform chat. Will assume that there is one user.
DONE 4. Wrap up the solution in docker-compose (+) to ensure we can spin it up quickly for validation.
Still under work 5. Use great_expectations for validation.
DONE 6. Document the edge cases, tradeoffs, and assumptions made during an implementation and providing directions to remediate and solve those cases as found here.
DONE 7. Create a Terraform script to host the solution in the Azure.
Still under work 8. Document Terraform implemetation in README.
Still under work 9. Provide a list of limitations and potential scalability issues for the final implementation and options to overcome them.
Still under work 10. Update README.md with the latest information and provide a link to the deployed solution on Azure.