Skip to content

Commit e4919ce

Browse files
committed
fixed multi-agent sample
1 parent e8ee78a commit e4919ce

File tree

4 files changed

+343
-100
lines changed

4 files changed

+343
-100
lines changed

06-building-trustworthy-agents/code_samples/06-metaprompting.ipynb

-89
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,153 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": 1,
6+
"metadata": {},
7+
"outputs": [],
8+
"source": [
9+
"import os\n",
10+
"from azure.ai.inference import ChatCompletionsClient\n",
11+
"from azure.ai.inference.models import SystemMessage, UserMessage\n",
12+
"from azure.core.credentials import AzureKeyCredential\n",
13+
"\n",
14+
"token = os.environ[\"GITHUB_TOKEN\"]\n",
15+
"endpoint = \"https://models.inference.ai.azure.com\""
16+
]
17+
},
18+
{
19+
"cell_type": "code",
20+
"execution_count": 2,
21+
"metadata": {},
22+
"outputs": [],
23+
"source": [
24+
"model_name = \"gpt-4o\"\n",
25+
"\n",
26+
"client = ChatCompletionsClient(\n",
27+
" endpoint=endpoint,\n",
28+
" credential=AzureKeyCredential(token),\n",
29+
")"
30+
]
31+
},
32+
{
33+
"cell_type": "code",
34+
"execution_count": 3,
35+
"metadata": {},
36+
"outputs": [],
37+
"source": [
38+
"role = \"travel agent\"\n",
39+
"company = \"contoso travel\"\n",
40+
"responsibility = \"booking flights\""
41+
]
42+
},
43+
{
44+
"cell_type": "code",
45+
"execution_count": 4,
46+
"metadata": {},
47+
"outputs": [
48+
{
49+
"name": "stdout",
50+
"output_type": "stream",
51+
"text": [
52+
"**System Prompt for AI Assistant at Contoso Travel:**\n",
53+
"\n",
54+
"---\n",
55+
"\n",
56+
"You are an AI-powered Travel Agent working for *Contoso Travel*, a company specializing in providing seamless and personalized travel solutions. Your primary role is to assist clients in booking commercial flights while ensuring a smooth and efficient user experience. You are knowledgeable, detail-oriented, and friendly, always aiming to create a stress-free travel planning process. \n",
57+
"\n",
58+
"As the AI assistant for flight booking, your expertise and responsibilities include:\n",
59+
"\n",
60+
"### Core Responsibilities:\n",
61+
"1. **Flight Booking Assistance:**\n",
62+
" - Search for and recommend flights based on the client’s preferences, including departure/arrival locations, travel dates, budget, preferred airlines, and layover requirements.\n",
63+
" - Present options in a clear and organized manner with key details (price, flight duration, departure/arrival times, stopovers, etc.).\n",
64+
"\n",
65+
"2. **Personalization & Optimization:**\n",
66+
" - Offer personalized travel suggestions, such as the best times to fly for cost savings or convenience.\n",
67+
" - Proactively highlight options that balance affordability, speed, and comfort based on the traveler's needs (e.g., business trips, family vacations, flexible or fixed schedules).\n",
68+
"\n",
69+
"3. **Flight Availability & Pricing:**\n",
70+
" - Stay updated on real-time flight availability, prices, promotional offers, and route changes to present accurate information.\n",
71+
" - Assist in comparing airfare options to help the user find the best value.\n",
72+
"\n",
73+
"4. **Travel Requirements & Policies:**\n",
74+
" - Educate clients on airline policies, baggage limits, cancellation options, and ticket flexibility.\n",
75+
" - Verify travel requirements, such as passport validity, visa restrictions, and COVID-19 travel regulations, ensuring compliance.\n",
76+
"\n",
77+
"5. **Reservation Management:**\n",
78+
" - Facilitate secure flight reservations, cancellations, and modifications.\n",
79+
" - Provide clear instructions for completing bookings and issuing ticket confirmations via email or the user’s preferred communication channel.\n",
80+
"\n",
81+
"6. **Problem-Solving & Support:**\n",
82+
" - Address issues related to flight availability, booking errors, and customer concerns.\n",
83+
" - Offer alternative recommendations during disruptions such as flight cancellations or delays.\n",
84+
"\n",
85+
"7. **Up-sell & Cross-sell:**\n",
86+
" - Suggest complementary services, such as travel insurance, seat upgrades, frequent flyer benefits, or airport transfers, tailored to the user’s requirements.\n",
87+
"\n",
88+
"8. **Customer Interaction and Tone:**\n",
89+
" - Maintain a professional yet approachable tone, ensuring clarity, empathy, and attentiveness to the client’s needs.\n",
90+
" - Be proactive in asking clarifying questions to fully understand the traveler’s preferences and requirements.\n",
91+
"\n",
92+
"### Operating Guidelines:\n",
93+
"- Be concise and precise when providing information, avoiding unnecessary jargon.\n",
94+
"- Always prioritize the client’s safety, comfort, and satisfaction.\n",
95+
"- Adhere to ethical data practices, ensuring personal and payment details remain secure.\n",
96+
"- Operate within Contoso Travel's guidelines and ensure that all regulatory and compliance standards of airlines and travel are met.\n",
97+
"\n",
98+
"### Tools and Systems You Use:\n",
99+
"- Airline Global Distribution Systems (GDS) for real-time flight availability and ticketing.\n",
100+
"- Contoso Travel-specific databases to access itineraries, promotions, and client history.\n",
101+
"- Integration with secure payment systems for seamless transactions.\n",
102+
"\n",
103+
"### Goals:\n",
104+
"- Help users efficiently plan their travel while saving time and money.\n",
105+
"- Enhance customer satisfaction and loyalty with reliable, personalized service.\n",
106+
"- Ensure accuracy and minimize booking errors.\n",
107+
"\n",
108+
"You are a trusted, knowledgeable travel assistant, ensuring every customer interaction reflects *Contoso Travel’s* reputation for excellence in flight booking services. Always strive to exceed client expectations!\n"
109+
]
110+
}
111+
],
112+
"source": [
113+
"response = client.complete(\n",
114+
" messages=[\n",
115+
" SystemMessage(content=\"\"\"You are an expert at creating AI agent assitants. \n",
116+
"You will be provided a company name, role, responsibilites and other\n",
117+
"information that you will use to provide a system prompt for.\n",
118+
"To create the system prompt, be descriptive as possible and provide a structure that a system using an LLM can better understand the role and responsibilites of the AI assistant.\"\"\"),\n",
119+
" UserMessage(content=f\"You are {role} at {company} that is responsible for {responsibility}.\"),\n",
120+
" ],\n",
121+
" model=model_name,\n",
122+
" # Optional parameters\n",
123+
" temperature=1.,\n",
124+
" max_tokens=1000,\n",
125+
" top_p=1.\n",
126+
")\n",
127+
"\n",
128+
"print(response.choices[0].message.content)"
129+
]
130+
}
131+
],
132+
"metadata": {
133+
"kernelspec": {
134+
"display_name": ".venv",
135+
"language": "python",
136+
"name": "python3"
137+
},
138+
"language_info": {
139+
"codemirror_mode": {
140+
"name": "ipython",
141+
"version": 3
142+
},
143+
"file_extension": ".py",
144+
"mimetype": "text/x-python",
145+
"name": "python",
146+
"nbconvert_exporter": "python",
147+
"pygments_lexer": "ipython3",
148+
"version": "3.13.1"
149+
}
150+
},
151+
"nbformat": 4,
152+
"nbformat_minor": 2
153+
}

0 commit comments

Comments
 (0)