Skip to content

Commit

Permalink
Add course documentation for AI Agents
Browse files Browse the repository at this point in the history
- Created a comprehensive course on AI Agents covering 20 lessons
- Included documentation for course topics like agent architecture, tools, memory, multi-agent systems, and deployment
- Added structured MDX files for each lesson with code examples, explanations, and best practices
- Updated `mint.json` to include new course navigation and pages
- Provided a step-by-step learning path for understanding and building AI agents
  • Loading branch information
MervinPraison committed Mar 11, 2025
1 parent dfe0914 commit 5ec129f
Show file tree
Hide file tree
Showing 21 changed files with 4,213 additions and 0 deletions.
59 changes: 59 additions & 0 deletions docs/course/agents/01-introduction.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
title: "Introduction to AI Agents"
description: "Welcome to the beginner's course on AI Agents"
icon: "book-open"
---

# Introduction to AI Agents

Welcome to the beginners' course on AI Agents! This course is designed to help you understand and build your own AI agents, even if you have little to no programming experience.

## What Are AI Agents?

An AI agent is a software program that can:
- Understand information from its environment
- Make decisions based on that information
- Take actions to achieve specific goals

Think of an AI agent like a helpful assistant that can perform tasks for you automatically.

```mermaid
graph TD
A[Perceive Information] --> B[Make Decisions]
B --> C[Take Actions]
C --> A
```

## Examples in Daily Life

You might already be using AI agents without realizing it:

- **Virtual Assistants**: Siri, Alexa, and Google Assistant are AI agents that respond to your voice commands
- **Recommendation Systems**: Netflix, YouTube, and Amazon use AI agents to suggest content you might like
- **Smart Home Devices**: Devices that adjust temperature or lighting based on your preferences

## What You'll Learn in This Course

Throughout this course, you will:

1. Understand the basic concepts of AI agents
2. Learn about different types of AI agents
3. Explore how AI agents make decisions
4. Discover how to build simple AI agents without complex programming
5. Create your own functional AI agents

## Who This Course Is For

This course is perfect for:
- Complete beginners with no prior knowledge of AI
- Non-technical professionals interested in how AI can solve problems
- Students curious about artificial intelligence
- Anyone who wants to understand and use AI agents in practical ways

Let's begin our journey into the fascinating world of AI agents!

<CardGroup cols={1}>
<Card title="Ready to Start?" icon="rocket">
Continue to the next lesson to learn about the different types of AI agents.
</Card>
</CardGroup>
113 changes: 113 additions & 0 deletions docs/course/agents/02-types-of-agents.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
---
title: "Types of AI Agents"
description: "Understanding the different categories of AI agents"
icon: "sitemap"
---

# Types of AI Agents

AI agents come in different forms, each designed for specific purposes and with varying levels of complexity. Understanding these types will help you choose the right approach for your needs.

## Simple Reflex Agents

These are the most basic type of AI agents that operate using simple if-then rules.

<CardGroup cols={1}>
<Card title="Key Characteristics" icon="lightbulb">
- React directly to current input only
- No memory of past events
- No prediction of future states
- Use predefined rules to determine actions
</Card>
</CardGroup>

**Real-world example**: A basic thermostat that turns heating on when temperature drops below a set point.

```mermaid
graph LR
A[Sensor Input] --> B{If-Then Rules}
B --> C[Action]
```

## Model-Based Agents

These agents maintain an internal model of their environment to make better decisions.

<CardGroup cols={1}>
<Card title="Key Characteristics" icon="brain">
- Build and maintain an internal representation of the world
- Can work with partial information
- Can consider "what if" scenarios
- Make decisions based on their understanding of how the world works
</Card>
</CardGroup>

**Real-world example**: A GPS navigation system that models roads and traffic conditions.

## Goal-Based Agents

These agents make decisions based on how their actions will help achieve specific goals.

<CardGroup cols={1}>
<Card title="Key Characteristics" icon="bullseye">
- Consider future consequences of actions
- Evaluate which actions will lead toward goals
- Can plan sequences of actions
- Choose actions that maximize goal attainment
</Card>
</CardGroup>

**Real-world example**: A chess-playing AI that plans moves to achieve checkmate.

## Utility-Based Agents

These agents choose actions that maximize a specific utility (or happiness) function.

<CardGroup cols={1}>
<Card title="Key Characteristics" icon="chart-line">
- Assign a utility value to different possible outcomes
- Consider probability and risk
- Choose actions that maximize expected utility
- Can balance competing objectives
</Card>
</CardGroup>

**Real-world example**: An investment robo-advisor that balances risk and return.

## Learning Agents

These agents improve their performance over time through experience.

<CardGroup cols={1}>
<Card title="Key Characteristics" icon="graduation-cap">
- Learn from past experiences
- Adapt to changing environments
- Improve decision-making over time
- Can discover new strategies
</Card>
</CardGroup>

**Real-world example**: Recommendation systems that learn your preferences over time.

## Understanding Agent Complexity

<Tip>
As you move from Simple Reflex Agents toward Learning Agents, both capability and complexity increase. For beginners, starting with simpler agent types is often best.
</Tip>

## Which Agent Type Should You Build?

The best type of agent for your project depends on:

1. **The problem complexity**: Simple problems may only need reflex agents
2. **Available data**: Learning agents need training data
3. **Required adaptability**: Will your agent need to adapt to new situations?
4. **Available resources**: More complex agents require more computational power

In this course, we'll focus primarily on goal-based and simple learning agents as they provide a good balance of capability and complexity for beginners.

<CardGroup cols={1}>
<Card title="Next Steps" icon="arrow-right">
In the next lesson, we'll explore how agents process information and make decisions.
</Card>
</CardGroup>
157 changes: 157 additions & 0 deletions docs/course/agents/03-agent-architecture.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,157 @@
---
title: "Agent Architecture"
description: "Understanding how AI agents are structured"
icon: "layer-group"
---

# Agent Architecture

Understanding how AI agents are structured will help you build more effective agents. This lesson covers the fundamental components of an agent's architecture.

## Basic Components of an AI Agent

Every AI agent, regardless of complexity, has these basic components:

```mermaid
graph TD
A[Sensors/Input] --> B[Processing Unit]
B --> C[Decision-Making]
C --> D[Actions/Output]
```

### 1. Input (Sensors)

This is how agents receive information from their environment.

<CardGroup cols={1}>
<Card title="Examples of Input" icon="eye">
- Text input from users
- Data from databases
- Image or audio input
- API responses
- Sensor readings (in physical agents)
</Card>
</CardGroup>

### 2. Processing Unit

This component processes information and converts it into a format the agent can understand.

<CardGroup cols={1}>
<Card title="Processing Functions" icon="gears">
- Data cleaning and transformation
- Feature extraction
- Context building
- Information retrieval
- Pattern recognition
</Card>
</CardGroup>

### 3. Decision-Making Core

The "brain" of the agent that determines what actions to take.

<CardGroup cols={1}>
<Card title="Decision Components" icon="brain">
- Language models (like GPT-4)
- Rule systems
- Planning algorithms
- Knowledge base
- Memory systems
</Card>
</CardGroup>

### 4. Output (Actions)

The actions the agent can perform to achieve its goals.

<CardGroup cols={1}>
<Card title="Action Examples" icon="hand">
- Generating text responses
- Creating visual content
- Making API calls
- Controlling other systems
- Updating databases
</Card>
</CardGroup>

## The Agent Loop

Agents operate in a continuous loop:

```mermaid
graph LR
A[Perceive] --> B[Process]
B --> C[Decide]
C --> D[Act]
D --> A
```

This cycle allows agents to continuously:
1. Gather information
2. Update their understanding
3. Make new decisions
4. Take appropriate actions

## PraisonAI Agent Architecture

In the PraisonAI framework, agents follow a specific architecture:

<CardGroup cols={1}>
<Card title="PraisonAI Agent Components" icon="puzzle-piece">
- **Instructions**: Defines the agent's purpose and behavior
- **Language Model**: Powers the agent's intelligence (e.g., GPT-4)
- **Memory**: Stores context and previous interactions
- **Tools**: Specialized capabilities an agent can use
</Card>
</CardGroup>

### Simple Agent Structure

```python
from praisonaiagents import Agent

# Create a simple agent
research_agent = Agent(
instructions="Research the latest developments in renewable energy",
name="ResearchAgent"
)

# Start the agent
research_agent.start()
```

## Understanding Agent Communication

Multi-agent systems allow agents to communicate with each other:

```mermaid
graph LR
A[Agent 1] --> B[Agent 2]
B --> C[Agent 3]
C --> A
```

Each agent can:
- Pass information to other agents
- Request assistance from specialized agents
- Collaborate on complex tasks

## Key Takeaways

<CardGroup cols={2}>
<Card title="Component Importance" icon="check">
Each component plays a vital role in the agent's functionality
</Card>
<Card title="Agent Customization" icon="gear">
You can customize each component based on your specific needs
</Card>
<Card title="Component Balance" icon="scale-balanced">
A well-designed agent balances all components effectively
</Card>
<Card title="Continuous Improvement" icon="arrow-trend-up">
Agents can be improved by enhancing individual components
</Card>
</CardGroup>

In the next lesson, we'll explore how to define effective instructions for your AI agents.
Loading

0 comments on commit 5ec129f

Please sign in to comment.