Welcome to the repository for learning how to use CrewAI, a powerful framework for AI-driven task automation. This repository serves as a resource for developers looking to integrate CrewAI into their workflows for building complex, scalable AI systems.
The acquisition of knowledge is a cornerstone of personal and professional growth, but not all learning is created equal. While memorizing facts and figures has its place, truly grasping the underlying concepts of a subject can be transformative. Understanding core principles and ideas provides a robust framework for deeper learning, problem-solving, and innovation across various fields.
- Understanding fundamental concepts allows for a deeper comprehension of any subject.
- Concepts are the building blocks of knowledge, forming the foundation for more complex ideas.
- Mastering key concepts facilitates problem-solving in various situations.
- Well-understood concepts can be applied in different contexts, increasing versatility.
- Solid concepts allow for more effective communication of complex ideas.
- Comprehension of fundamental concepts is crucial for the development of new theories and innovations.
- Python 3.8 or higher, see my Fast Course for Learn: Python
- Poetry (Python package manager), see my Fast Course for Learn: Poetry
OpenAI is an AI research organization focused on benefiting humanity.
Generate an OpenAI API Key
- Sign Up: Create an account at OpenAI.
- Dashboard: Go to the Dashboard and click "API Keys".
- Create Key: Click "Create new secret key".
- Copy & Save: Store the key securely.
- Optional: Store in
.env
- Add to a
.env
file:
- Add to a
OPENAI_API_KEY=your_api_key_here
Serper provides search engine data and SERP insights through an API, allowing developers to programmatically retrieve search results.
Generate a Serper API Key
- Sign Up: Go to serper.dev and create an account.
- Access the Dashboard: After logging in, head to your Dashboard.
- Generate API Key: Find the "API Keys" section and click "Generate new API key".
- Copy and Save: Copy the key and store it securely.
- Optional - Store in
.env
:- Add the key to a
.env
file in your project:
- Add the key to a
SERPER_API_KEY=your_api_key_here
To install CrewAI, first clone the repository and install the necessary dependencies:
$ git clone https://github.com/ciro-maciel/learn_crewAI.git
$ poetry install
$ poetry shell
In this lesson, you will be introduced to the foundational concepts of multi-agent systems and get an overview of the crewAI framework.
$ python src/L2_research_write_article.py
In this lesson, you will learn about the six key elements which help make Agents perform even better:
- Role Playing
- Focus
- Tools
- Cooperation
- Guardrails
- Memory
$ python src/L3_customer_support.py
In this lesson, you will learn more about Tools. You'll focus on three key elements of Tools:
- Versatility
- Fault Tolerance
- Caching
$ python src/L4_tools_customer_outreach.py
In this lesson, you will learn more about Tasks.
$ python src/L5_tasks_event_planning.py
In this lesson, you will learn ways for making agents collaborate with each other.
$ python src/L6_collaboration_financial_analysis.py
In this lesson, you will built your first multi-agent system.
$ python src/L7_job_application_crew.py
This repository was created and is maintained by Ciro Cesar Maciel. I am a Software Engineer passionate about creating efficient and well-documented solutions. I am always looking for new tools and practices that can simplify and improve the development workflow.
In addition to this project, I have been working on other interesting projects related to automation, Artificial Intelligence (AI), browser extensions, and more. I am also beginning to teach what is necessary to learn Artificial Intelligence (AI), helping others to get started on their AI journey.
If you are interested in Software Development, Data Science, AI, or other tech topics, feel free to explore my GitHub profile and connect with me.
- GitHub: ciro-maciel
- LinkedIn: Ciro Cesar Maciel
- Website: ciro-maciel
I am always open to new collaborations and projects. If you have an interesting idea or just want to exchange thoughts about development, don't hesitate to reach out!
This project is licensed under the MIT License - see the LICENSE file for details.