Revolutionize how you find and use information with intelligent search and comprehensive content analysis.
InsightAI Suite is a Streamlit application that integrates OpenAI's assistance API (Version 2) to create an intelligent assistant capable of interacting with uploaded documents, scraping web content, and fetching the latest news based on user-defined topics. The application is designed to assist users in various tasks such as researching topics, analyzing content, and staying updated with current events.
- File Upload and Search: Upload multiple files (PDFs, research papers, etc.) and store them in a vector database. The assistant can then answer questions related to these files.
- Web Scraping: Enter a URL to scrape content from a website. The scraped content is stored in the vector database, and users can ask questions related to the content.
- News Fetching: Get the latest news on a given topic with details such as the title, author, description, and URL to the news source.
- Intelligent Assistant: Powered by OpenAI's
gpt-4o-mini
model, the assistant uses a combination of tools (file search, code interpreter, web scraping, news fetching) to answer user queries.
To install and run this application locally, follow these steps:
-
Clone the repository:
git clone https://github.com/Abhishekwagh20/insightai-suite.git cd insightai-suite
-
Set up a virtual environment (optional but recommended):
python3 -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install dependencies:
pip install -r requirements.txt
-
Configure API keys:
- Create a
config.py
file in the project directory and add your OpenAI API key and News API key:
API_KEY = "your-openai-api-key" news_api_key = "your-news-api-key"
- Create a
-
Run the application:
streamlit run app.py
-
Access the application:
Open your web browser and navigate to
http://localhost:8501
to interact with the application.
- Enter a Title: This will be the name of your assistant session.
- Initiate the First Question: Provide a prompt to start the conversation with the assistant.
- Upload Files: Upload any files you want the assistant to reference. These files will be stored in a vector database for search and retrieval.
- Ask Questions: Once the assistant is initialized, you can ask follow-up questions related to the uploaded files or other content.
- Web Scraping: Provide a URL, and the assistant will scrape the content and store it. You can then ask questions related to the content.
- News Fetching: Provide a topic, and the assistant will fetch the latest news articles related to that topic.
- Research and Study: Upload research papers and websites related to a subject, and ask the assistant to summarize and provide insights.
- Job Preparation: Upload resumes and company profiles to receive tailored advice on job applications and interview preparation.
- Python 3.7+
- Streamlit
- OpenAI API Key
- News API Key
Contributions are welcome! Please fork the repository and submit a pull request with your improvements.
This project is licensed under the MIT License. See the LICENSE file for details.