A sophisticated weather chatbot powered by CrewAI, providing real-time weather updates and forecasts for any location worldwide.
- Real-time weather information for any city
- Current conditions including temperature, humidity, and weather description
- 3-day weather forecasts
- Extreme weather alerts
- Powered by Tomorrow.io weather API
- Automated workflow using CrewAI
- Python 3.8+
- CrewAI for agent-based automation
- LangChain for tool management
- Tomorrow.io Weather API
- OpenAI for natural language processing
CrewAI_Weather_Chatbot/
├── .env # Environment variables
├── requirements.txt # Project dependencies
├── main.py # Main application file
├── config/
│ └── config.py # Configuration settings
├── agents/
│ └── weather_agent.py # Weather agent definition
├── tools/
│ └── weather_tools.py # Weather API tools
└── tasks/
└── weather_tasks.py # Task definitions
-
Clone the repository:
git clone https://github.com/ProactiveAIAgents/CrewAI_Weather_Chatbot.git cd CrewAI_Weather_Chatbot -
Install dependencies:
pip install -r requirements.txt
-
Set up environment variables: Create a
.envfile with your API keys:OPENAI_API_KEY=your_openai_api_key TOMORROW_API_KEY=your_tomorrow_api_key -
Run the application:
python main.py
The organized directory structure of the CrewAI Weather Chatbot
Sample weather report output for Miami
Configuration of the Weather Information Analyst agent
- Start the application
- Enter a city name when prompted
- Receive detailed weather information including:
- Current temperature and conditions
- Humidity levels
- Weather description
- Any extreme weather warnings
- 3-day forecast summary
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
-
CrewAI Development
- Building and orchestrating autonomous AI agents
- Agent task delegation and coordination
- Custom tool creation for agents
-
API Integration & Data Handling
- RESTful API integration with Tomorrow.io
- JSON data parsing and manipulation
- Error handling and API rate limiting
- Environment variable management
-
Python Best Practices
- Object-oriented programming principles
- Clean code architecture
- Modular design patterns
- Type hinting and documentation
-
Development Workflow
- Git version control
- Environment management
- Project structuring
- Documentation writing
-
AI/ML Concepts
- Natural Language Processing (NLP)
- Prompt engineering
- AI agent behavior configuration
- LLM integration and optimization