MarketIntel is a tool designed to help users conduct comprehensive market research of a given company / industry to automatically analyze its data, and propose AI/GenAI solutions for companies or industries. At its core, it uses CrewAI
as the mutli-agent framework. It can use GPT
models through OpenAI API as well as local models
using Ollama to perform analysis and generate research reports. It uses Serper API to scrape search engine results and extract relevant information from the web.
-
Clone the repository:
git clone https://github.com/argishh/MarketIntel.git cd MarketIntel
-
Install the required dependencies:
pip install -r requirements.txt
-
Set up environment variables:
- Create a
.env
file in the root directory. - Add your OpenAI API key:
OPENAI_API_KEY = your_openai_api_key
- Add your Serper API key:
SERPER_API_KEY = your_serper_api_key
- Create a
-
Run the Streamlit application:
streamlit run app.py
-
Open the application in your browser:
http://localhost:8501
-
Configure the application:
- Select the model provider (OpenAI or Local).
- Enter the OpenAI API key if using OpenAI.
- Enter the company or industry to be researched.
- Click "Start Research" to begin the process.
In addition to OpenAI GPT models, you can also use local Ollama models. To use a local Ollama model:
-
Start the Ollama server:
ollama start
-
Enter the model name in the sidebar.
-
Ensure the selected model is downloaded:
ollama pull <model>
- Researcher Agent: Conducts comprehensive research using tools like SerperDevTool and ScrapeWebsiteTool.
- Analyzer Agent: Analyzes the research data to identify AI/GenAI opportunities.
- Validator Agent: Validates and aligns AI/GenAI solutions with the company's needs.
- Resource Collector Agent: Collects relevant datasets from various platforms.
- Resource Solutions Proposer Agent: Proposes additional GenAI solutions based on the collected datasets.
- Research Task: Conducts research to understand the industry, market, and operations of the specified company.
- Analysis Task: Analyzes the research data to identify AI/GenAI opportunities.
- Validation Task: Proposes AI/GenAI solutions based on the analysis.
- Resource Collection Task: Finds datasets from platforms like Kaggle, HuggingFace, and GitHub.
- Resource Solutions Proposal Task: Proposes GenAI solutions based on the collected datasets.
- SerperDevTool: A tool that uses the Serper API to scrape search engine results and extract relevant information.
- ScrapeWebsiteTool: A tool that scrapes websites to extract information for research purposes.
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes.
- Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature-branch
). - Open a pull request.
Please open an issue or submit a pull request for any improvements or bug fixes.
This project is licensed under the MIT License. See the LICENSE file for details.