Welcome to the Learn Agentic AI repository! This project focuses on exploring Agentic AI through the Dapr Agentic Cloud Ascent (DACA) design pattern. We utilize various cutting-edge technologies, including the OpenAI Agents SDK, memory management, and cloud-native solutions.
- Introduction
- Technologies Used
- Getting Started
- Features
- Architecture
- How to Use
- Contributing
- License
- Contact
Agentic AI represents a significant leap in how we interact with technology. This repository serves as a comprehensive guide to implementing Agentic AI solutions using the DAPR framework and various cloud technologies. By integrating tools like OpenAI's SDK and Kubernetes, we can create intelligent applications that learn and adapt over time.
This project leverages a wide range of technologies:
- Dapr: A portable, event-driven runtime that makes it easy to build microservices.
- OpenAI Agents SDK: A toolkit for developing intelligent agents.
- Memory Management: Techniques to store and retrieve information effectively.
- MCP (Microservices Communication Protocol): A standard for communication between microservices.
- A2A (Agent-to-Agent Communication): Facilitates communication between different agents.
- Knowledge Graphs: Structures for storing interconnected descriptions of entities.
- Docker: A platform for developing, shipping, and running applications in containers.
- Kubernetes: An orchestration tool for managing containerized applications.
- PostgreSQL: A powerful relational database system.
- Redis: An in-memory data structure store, used as a database, cache, and message broker.
- RabbitMQ: A message broker that enables applications to communicate with each other.
- Kafka: A distributed streaming platform.
- Rancher Desktop: A tool for managing Kubernetes clusters on your desktop.
To get started with this project, you need to set up your environment. Follow these steps:
-
Clone the Repository:
git clone https://github.com/bilal0399/learn-agentic-ai.git cd learn-agentic-ai
-
Install Dependencies: Use Docker to set up your environment. Make sure you have Docker installed and running.
docker-compose up
-
Run the Application: After the dependencies are installed, you can run the application.
docker-compose up
-
Access the Application: Open your web browser and navigate to
http://localhost:8080
.
- Event-Driven Architecture: Use Dapr's pub-sub model for seamless communication.
- Scalability: Deploy on Kubernetes for easy scaling.
- Intelligent Agents: Leverage OpenAI's SDK to create agents that learn and adapt.
- Real-Time Data Processing: Utilize Kafka and RabbitMQ for handling real-time data streams.
- Persistent Storage: Store data in PostgreSQL and Redis for fast access.
The architecture of this project is designed for modularity and scalability. Below is a high-level overview of how the components interact:
- Client: The user interface that interacts with the agents.
- Dapr Sidecar: Each service runs alongside a Dapr sidecar to handle service invocation and pub-sub messaging.
- Agents: Built using OpenAI's SDK, these agents perform tasks based on user input.
- Database: PostgreSQL stores persistent data, while Redis serves as a caching layer.
-
Create an Agent: To create a new agent, define its behavior in the
agents
directory. Use the OpenAI SDK to specify its functions. -
Configure Dapr: Update the Dapr configuration files to include your new agent. This allows Dapr to route messages to the correct service.
-
Deploy: Use Kubernetes to deploy your agents. Ensure your configuration files are correctly set up.
-
Monitor: Use monitoring tools to keep track of your agents' performance. Adjust configurations as needed for optimal performance.
We welcome contributions! If you want to help improve this project, please follow these steps:
- Fork the Repository: Click the "Fork" button on the top right of the page.
- Create a New Branch: Use a descriptive name for your branch.
git checkout -b feature/YourFeature
- Make Your Changes: Implement your feature or fix.
- Commit Your Changes: Write a clear commit message.
git commit -m "Add Your Feature"
- Push to Your Fork:
git push origin feature/YourFeature
- Create a Pull Request: Go to the original repository and click "New Pull Request."
This project is licensed under the MIT License. See the LICENSE file for more details.
For questions or feedback, please reach out to the repository owner:
- Bilal: bilal0399
You can also check the Releases section for the latest updates and downloads.
Thank you for your interest in Learn Agentic AI! We hope you find this repository helpful in your journey to mastering Agentic AI technologies.