Skip to content

Commit

Permalink
rebase branch
Browse files Browse the repository at this point in the history
  • Loading branch information
FrenchBully committed Feb 21, 2025
2 parents 01bb710 + 616085b commit 5eb1181
Show file tree
Hide file tree
Showing 14 changed files with 1,897 additions and 236 deletions.
4 changes: 2 additions & 2 deletions 00-course-setup/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ Open that file and paste the token you created into the `GITHUB_TOKEN=` field of

## Install Required Packages

To ensure you have all the required Python packages for to run the code, run the following command into your terminal.
To ensure you have all the required Python packages to run the code, run the following command into your terminal.

We recommend creating a Python virtual environment to avoid any conflicts and issues.

Expand All @@ -61,4 +61,4 @@ This should install the required Python packages.

You are now ready to run the code of this code, happy learning more about the world of AI Agents!

If you have any issue running this setup, hop into our <a href="https://discord.gg/kzRShWzttr" target="_blank">Azure AI Community Discord</a> or <a href="https://github.com/microsoft/ai-agents-for-beginners/issues?WT.mc_id=academic-105485-koreyst" target="_blank">create an issue</a>.
If you have any issues running this setup, hop into our <a href="https://discord.gg/kzRShWzttr" target="_blank">Azure AI Community Discord</a> or <a href="https://github.com/microsoft/ai-agents-for-beginners/issues?WT.mc_id=academic-105485-koreyst" target="_blank">create an issue</a>.
10 changes: 5 additions & 5 deletions 01-intro-to-ai-agents/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ To start this course, we begin by getting a better understanding of what AI Agen
This lesson covers:

- What are AI Agents and what are the different types of agents?
- What use cases are best for AI Agents and how they can help us?
- What use cases are best for AI Agents and how can they help us?
- What are some of the basic building blocks when designing Agentic Solutions?

## Learning Goals
Expand All @@ -34,11 +34,11 @@ Let's break this definition into smaller parts:
- **Sensors** - Environments have information and provide feedback. AI Agents use sensors to gather and interpret this information about the current state of the environment. In the Travel Booking Agent example, the travel booking system can provide information such as hotel availability or flight prices.
- **Actuators** - Once the AI Agent receives the current state of the environment, for the current task the agent determines what action to perform to change the environment. For the travel booking agent, it might be to book an available room for the user.

![What Are AI Agents?](./images/what-are-ai-agents.png?WT.mc_id=academic-105485-koreyst)
![What Are AI Agents?](./images/what-are-ai-agents.png)

**Large Language Models** - The concept of agents existed before the creation of LLMs. The advantage of building AI Agents with LLMs is their ability to interpret human language and data. This ability enables LLMs to interpret environmental information and define a plan to change the environment.

**Perform Actions** - Outside of AI Agent systems, LLMs are limited to situations where the action is generating content or information based on a user's prompt. Inside AI Agent systems, LLMs can accomplish tasks by interpreting the user's request and using tools that are available in its environment.
**Perform Actions** - Outside of AI Agent systems, LLMs are limited to situations where the action is generating content or information based on a user's prompt. Inside AI Agent systems, LLMs can accomplish tasks by interpreting the user's request and using tools that are available in their environment.

**Access To Tools** - What tools the LLM has access to is defined by 1) the environment it's operating in and 2) the developer of the AI Agent. For our travel agent example, the agent's tools are limited by the operations available in the booking system, and/or the developer can limit the agent's tool access to flights.

Expand All @@ -52,7 +52,7 @@ Now that we have a general definition of AI Agents, let us look at some specific
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Simple Reflex Agents** | Perform immediate actions based on predefined rules. | Travel agent interprets the context of the email and forwards travel complaints to customer service. |
| **Model-Based Reflex Agents** | Perform actions based on a model of the world and changes to that model. | Travel agent prioritizes routes with significant price changes based on access to historical pricing data. |
| **Goal-Based Agents** | Create plans to achieve specific goals by interpreting the goal and determining actions to reach it. | Travel agent books a journey by determining necessary travel arrangements (car, public transit, flights) from current location to destination. |
| **Goal-Based Agents** | Create plans to achieve specific goals by interpreting the goal and determining actions to reach it. | Travel agent books a journey by determining necessary travel arrangements (car, public transit, flights) from the current location to the destination. |
| **Utility-Based Agents** | Consider preferences and weigh tradeoffs numerically to determine how to achieve goals. | Travel agent maximizes utility by weighing convenience vs. cost when booking travel. |
| **Learning Agents** | Improve over time by responding to feedback and adjusting actions accordingly. | Travel agent improves by using customer feedback from post-trip surveys to make adjustments to future bookings. |
| **Hierarchical Agents** | Feature multiple agents in a tiered system, with higher-level agents breaking tasks into subtasks for lower-level agents to complete. | Travel agent cancels a trip by dividing the task into subtasks (for example, canceling specific bookings) and having lower-level agents complete them, reporting back to the higher-level agent. |
Expand All @@ -64,7 +64,7 @@ In the earlier section, we used the Travel Agent use-case to explain how the dif

Let's look at the types of use cases that AI Agents are best used for:

![When to use AI Agents?](./images/when-to-use-ai-agents.png?WT.mc_id=academic-105485-koreyst)
![When to use AI Agents?](./images/when-to-use-ai-agents.png)


- **Open-Ended Problems** - allowing the LLM to determine needed steps to complete a task because it can't always be hardcoded into a workflow.
Expand Down
2 changes: 1 addition & 1 deletion 03-agentic-design-patterns/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ After completing this lesson, you will be able to:

## The Agentic Design Principles

![Agentic Design Principles](./images/agentic-design-principles.png?WT.mc_id=academic-105485-koreyst)
![Agentic Design Principles](./images/agentic-design-principles.png)

### Agent (Space)

Expand Down
2 changes: 1 addition & 1 deletion 04-tool-use/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -267,7 +267,7 @@ Imagine you are a sales agent at a company called Contoso. You want to develop a
The following image illustrates how you could use Azure AI Agent Service to analyze your sales data:
![Agentic Service In Action](./images/agent-service-in-action.jpg?WT.mc_id=academic-105485-koreyst)
![Agentic Service In Action](./images/agent-service-in-action.jpg)
To use any of these tools with the service we can create a client and define a tool or toolset. To implement this practically we can use the following Python code. The LLM will be able to look at the toolset and decide whether to use the user created function, `fetch_sales_data_using_sqlite_query`, or the pre-built Code Interpreter depending on the user request.
Expand Down
7 changes: 3 additions & 4 deletions 04-tool-use/code_samples/04-semantic-kernel-tool.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,10 @@
},
{
"cell_type": "code",
"execution_count": 8,
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"import asyncio\n",
"import os\n",
"import asyncio\n",
"\n",
Expand Down Expand Up @@ -228,7 +227,7 @@
],
"metadata": {
"kernelspec": {
"display_name": ".venv",
"display_name": "venv",
"language": "python",
"name": "python3"
},
Expand All @@ -242,7 +241,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.8"
"version": "3.12.4"
}
},
"nbformat": 4,
Expand Down
Loading

0 comments on commit 5eb1181

Please sign in to comment.