Harnessing LLM for Intelligent Information Extraction.
IntelliExtract-AI is an innovative application designed to facilitate interactive data analysis and visualization through natural language conversations with various sources,i.e. csv, text, pdf, database, web url.
Before getting started with the Multiple-CSV ChatApp with LLM, ensure you have the following prerequisites installed on your system:
Python 3.10
Streamlit
Pandasai
for data manipulationMatplotlib
for data visualization- The
python-dotenv
package for environment variable management - An active OpenAI account with access to API services
To set up the Multiple-CSV ChatApp with LLM on your local machine, follow these steps:
-
Clone the repository from GitHub:
git clone https://github.com/vivifyhealthcare/IntelliExtract-AI.git cd IntelliExtract-AI
-
Create a conda environment with Python 3.10:
conda create -p venv python==3.10 -y
-
Activate the created virtual environment:
conda activate venv/
-
Install the required dependencies using pip:
pip install -r requirements.txt
-
Create a
.env
file at the root of the project directory and add your OpenAI API key:OPENAI_API_KEY='YourOpenAIKeyHere'
After completing the installation, you can start the Multiple-CSV ChatApp with LLM by running the Streamlit application:
streamlit run app.py
The Multiple-CSV ChatApp with LLM enables users to perform various data analysis tasks through an intuitive chat interface:
- CSV File Upload: Users can upload multiple CSV files and select one for analysis through a dropdown menu.
- Natural Language Queries: Engage in a chat-like interaction with the selected CSV file to ask questions, request summaries, or generate visualizations.
- Data Visualization: The application supports on-the-fly generation of charts and graphs based on the user's queries.
- Multiple CSV Support: Seamlessly switch between multiple uploaded CSV files for analysis.
- LLM-Powered Insights: Utilizes the OpenAI language model for interpreting natural language queries and generating meaningful responses.
- Interactive Visualizations: Generates dynamic matplotlib charts in response to user queries for a more engaging data analysis experience.
- Streamlit Integration: Offers a clean and responsive web interface for uploading files, entering queries, and displaying results.
We welcome contributions to the Multiple-CSV ChatApp with LLM project. To contribute:
- Fork the repository.
- Create a new branch for your feature or fix.
- Make your changes and commit them.
- Push your changes to your fork and submit a pull request.
Ensure your contributions are well-documented and follow the project's coding standards.