1. قبل از شروع
این آزمایشگاه کد خودگام شما را در ساخت عوامل هوش مصنوعی با سازنده عامل هوش مصنوعی Vertex Google Cloud راهنمایی می کند. هر مرحله یک ویژگی خاص Agent Builder را برجسته می کند و هدف آن را توضیح می دهد.
پیش نیازها
- درک اولیه از هوش مصنوعی مولد در Google Cloud
- درک اولیه از مفاهیم عامل هوش مصنوعی
- درک اولیه Gemini CodeAssist (اختیاری)
چیزی که یاد خواهید گرفت
- نحوه ایجاد یک عامل AI ساده با استفاده از Vertex AI Agent Builder
- نحوه اتصال عامل ایجاد شده با پیوست کردن یک دیتا استور
- نحوه ادغام عامل هوش مصنوعی در وب سایت خود (اختیاری)
آنچه شما نیاز دارید
- یک ذهن کنجکاو
- یک کامپیوتر کارآمد و وای فای قابل اعتماد
- یک پروژه Google Cloud با صورتحساب پیوست شده است.
توجه: اگر هنوز پروژه Google Cloud ندارید، میتوانید با دنبال کردن دستورالعملها ، آن را ایجاد کنید. همچنین میتوانید خدمات لایه رایگان Google Cloud را بررسی کنید.
2. طراحی اولین عامل هوش مصنوعی شما
اکنون شما آماده هستید تا عامل هوش مصنوعی خود را ایجاد کنید. اما قبل از فرو رفتن در توسعه، ضروری است که یک چشم انداز روشن برای نماینده خود ایجاد کنید. این سوالات کلیدی را از خود بپرسید:
- چه مشکلی را حل خواهد کرد؟ آیا وظایف را خودکار می کند، اطلاعات ارائه می دهد، سرگرمی ارائه می دهد یا کاوش خلاق را تسهیل می کند؟
- کارکردهای اولیه آن چیست؟ آیا وظایف را اجرا می کند یا وظایف را محول می کند؟ آیا متن تولید می کند یا ترکیبی از رسانه های مختلف را تولید می کند؟
- محدودیت های آن چیست؟ آیا می تواند همه چیز را به صورت مستقل انجام دهد؟
- چه شخصیت یا شخصیتی باید داشته باشد؟ آیا رسمی، غیررسمی، طنزآمیز، مفید یا آموزنده خواهد بود؟
- معیارهای موفقیت چیست؟ چگونه اثربخشی عامل را اندازه گیری می کنید؟
برای سرعت بخشیدن به این فرآیند، در اینجا پاسخ این سؤالات برای آژانس مسافرتی است که امروز ایجاد خواهید کرد:
- چه مشکلی را حل خواهد کرد؟
- برنامه ریزی یک سفر می تواند زمان بر و طاقت فرسا باشد. این آژانس مسافرتی به کاربران کمک می کند تا مقصدها را کشف کنند، برنامه های سفر را برنامه ریزی کنند، پروازها و اقامتگاه ها را رزرو کنند.
- کارکردهای اولیه آن چیست؟
- نماینده باید بتواند
- به سوالات مربوط به مقاصد، مانند شرایط ویزا پاسخ دهید
- برنامه های سفری را برنامه ریزی کنید که برای برنامه ها و اهداف کاربران کار می کند
- رزرو پرواز و اقامتگاه
- محدودیت های آن چیست؟
- ممکن است عامل به طور پیش فرض نتواند به سؤالات پیچیده پاسخ دهد
- عامل قادر به تولید تصاویر بصری نخواهد بود
- دانش عامل توسط مدل زیربنایی محدود خواهد شد
- چه شخصیت یا شخصیتی باید داشته باشد؟
- این نماینده باید در مورد سفر آگاه، کمک کننده و مشتاق باشد. باید بتواند اطلاعات را به طور واضح و مختصر انتقال دهد.
- معیارهای موفقیت چیست؟
- موفقیت این نماینده را می توان با میزان رضایت کاربران از توصیه های آن (کاوش، برنامه ریزی، رزرو) سنجید.
3. ساخت عامل هوش مصنوعی با Vertex AI Agent Builder
با Vertex AI Agent Builder، عامل های هوش مصنوعی را می توان تنها در چند مرحله ایجاد کرد.
مرحله 1:
- به Vertex AI Agent Builder بروید.
- شما باید صفحه خوش آمد گویی را ببینید.
- روی دکمه CONTINUE AND ACTIVE THE API کلیک کنید.
مرحله 2:
- شما به صفحه ایجاد برنامه هدایت خواهید شد.
- روی دکمه CREATE A NEW APP کلیک کنید.
مرحله 3:
- Conversational agent را انتخاب کنید و روی CREATE کلیک کنید
توجه:
- پس از کلیک بر روی CREATE یک تب جدید از Diaglogflow Conversational Agents باز می شود.
- اگر از شما می خواهد که یک پروژه Google Cloud را انتخاب کنید ، لطفاً پروژه Google Cloud خود را که با حساب gmail صحیح خود مرتبط است انتخاب کنید.
- اگر این آزمایشگاه را در حساب جدیدی انجام میدهید، از شما میخواهد که Dialogflow API را فعال کنید، روی Enable API کلیک کنید تا فعال شود.
- اگر کلیک کردن روی دکمه کار نمی کند، می توانید با مراجعه مستقیم به صفحه API، آن را به صورت دستی فعال کنید.
- در صفحه Diaglogflow که به تازگی باز شده است، روی Create Agent کلیک کنید
- اکنون، گزینه هایی برای ایجاد یک عامل به شما می دهد، گزینه Build your own را انتخاب کنید.
مرحله 4:
- یک نام نمایشی انتخاب کنید (مثلاً دوست مسافرتی)
- برای مکان، جهانی (سرویس دهی جهانی، داده در حالت استراحت در ایالات متحده) را به عنوان منطقه انتخاب کنید
- تنظیمات دیگر، پیش فرض را حفظ کنید
- بر روی دکمه CREATE کلیک کنید
مرحله 5:
- نام کتاب راهنما را انتخاب کنید (مثلاً عامل اطلاعات)
- یک هدف اضافه کنید (مثلاً به مشتریان کمک کنید به سؤالات مربوط به سفر پاسخ دهند)
- یک دستورالعمل تعریف کنید (به عنوان مثال - به کاربران سلام کنید، سپس بپرسید چگونه می توانید امروز به آنها کمک کنید)
- هنگامی که همه چیز نهایی شد، ذخیره را فشار دهید
مرحله 6:
- روی نماد Toggle Simulator کلیک کنید
- عاملی را که به تازگی ایجاد کرده اید انتخاب کنید (مثلاً عامل اطلاعات )
- مدل AI مولد زیربنایی را برای نماینده خود انتخاب کنید (به عنوان مثال gemini-1.5-flash )
- نماینده خود را با مکالمه با آن آزمایش کنید (یعنی چیزی را در کادر متنی "Enter User Input" تایپ کنید)
تبریک می گویم! شما به تازگی با استفاده از Vertex AI Agent Builder با موفقیت یک عامل هوش مصنوعی ایجاد کردید.
4. پیوست کردن Datastores به Agent
سعی کنید از نماینده خود در مورد رسیدن به واکاندا بپرسید (مثلاً "بهترین راه برای رسیدن به واکاندا چیست؟")، پاسخی مانند این دریافت خواهید کرد:
در حالی که این از نظر واقعی درست است، به جای صرفاً بیان «نمیتوانم اطلاعات ارائه کنم» و مکالمه را پایان دهیم، اگر نماینده مکانهای مشابهی را پیشنهاد کند، برای کاربر مفیدتر خواهد بود. این رویکرد میتواند به طور بالقوه منجر به این شود که کاربران واقعاً یک سفر را از طریق نماینده رزرو کنند.
برای اینکه نماینده مکان های مشابه را توصیه کند، می توانید اطلاعات بیشتری را از طریق Datastores در اختیار نماینده قرار دهید. اگر نماینده قادر به پاسخگویی به سؤالات کاربر بر اساس دانش داخلی آنها نباشد، به عنوان یک پایگاه دانش اضافی برای نماینده عمل می کند تا به آن مراجعه کند.
توجه: اگر میخواهید شبیهساز را ببندید، دوباره بر روی آیکون toggle simulator کلیک کنید
ایجاد دیتا استور ساده است، روی دکمه + ذخیره داده در پایین صفحه Agent Basics کلیک کنید.
اطلاعات زیر را پر کنید:
- نام ابزار: مکان جایگزین
- نوع: ذخیره اطلاعات
- توضیحات: اگر درخواست کاربر حاوی مکانی است که وجود ندارد از این ابزار استفاده کنید
وقتی کارتان تمام شد روی ذخیره کلیک کنید.
با این کار یک ابزار ذخیره داده برای عامل ایجاد می شود تا با دیتا استور ارتباط برقرار کند، اما همچنان باید یک دیتا استور واقعی ایجاد کنید که حاوی اطلاعات باشد. برای انجام این کار، بر روی افزودن فروشگاه های داده و ایجاد فروشگاه داده کلیک کنید.
پس از کلیک بر روی ایجاد فروشگاه داده جدید ، مانند زیر به صفحه سازنده عامل Vertex AI هدایت خواهید شد.
گزینه on Cloud Storage را انتخاب کنید
وقتی مرحله را تمام کردید،
- روی FILE کلیک کنید (این بسیار مهم است در غیر این صورت وارد کردن شما ناموفق خواهد بود)
- ai-workshops/agents/data/wakanda.txt را تایپ کنید
- بر روی CONTINUE کلیک کنید
اگر کنجکاو هستید، محتوای فایل متنی ارائه شده در اینجا آمده است:
Places that are similar to Wakanda
- Oribi Gorge in South Africa: The rock formations here are reminiscent of the Warrior Falls in Wakanda.
- Iguazu Falls: Located on the border of Argentina and Brazil, these massive waterfalls were a major inspiration for the Warrior Falls.
- Immerse yourself in Wakandan culture: Read the Black Panther comics, watch the movies, and explore online resources to learn more about Wakandan culture, language, and technology.
- Visit a Disney theme park: While there isn't a dedicated Wakanda land yet, you might be able to meet Black Panther at Disneyland or on a Marvel Day at Sea Disney cruise.
در صفحه بعد، داده ذخیره خود را نامگذاری کنید (مثلاً Wakanda Alternative) و روی CREATE کلیک کنید.
به عنوان آخرین مرحله، منبع داده ای را که به تازگی ایجاد کرده اید انتخاب کنید و روی CREATE کلیک کنید، می توانید با کلیک بر روی ذخیره داده خود، پیشرفت وارد کردن فروشگاه داده خود را مشاهده کنید**.**
توجه: فعالیت واردات مدتی طول می کشد تا با موفقیت انجام شود، بنابراین تا زمانی که این فعالیت ادامه دارد، می توانید گزینه های ذخیره داده بیشتری را که برای عامل Vertex AI خود در دسترس است در اینجا کاوش کنید.
اگر همه چیز به خوبی پیش رفت، به برگه dialogflow خود برگردید و روی refresh کلیک کنید، باید دیتا استور ایجاد شده در صفحه ذخیرههای داده موجود را ببینید.
به منظور جلوگیری از توهم Agent، در پیکربندی زمینی برای ذخیره داده خود، تنظیم را روی Very Low تنظیم کنید که محدودیتهای سختتری را برای Agent اعمال میکند، در حال حاضر آن را پیشفرض نگه دارید اما هر زمان که بخواهید میتوانید آن را با تنظیمات مختلف کاوش کنید.
اکنون، ذخیره داده اضافه شده را انتخاب کنید، روی تایید کلیک کنید، سپس روی ذخیره کلیک کنید.
اکنون، به صفحه Agent Basics خود برگردید، در پایین پیکربندی playbook، میبینید که ذخیره داده جدید ایجاد شده (مثلاً مکان جایگزین) برای استفاده در دسترس است، فروشگاه داده (مثلاً مکان جایگزین) را بررسی کنید و روی دکمه ذخیره در بالای صفحه کلیک کنید.
شما تقریباً آنجا هستید! مرحله آخر این است که ابزار " محل جایگزین " را در دستورالعمل های عامل قرار دهید. یک خط اضافه کنید، - اگر درخواست کاربر حاوی مکانی است که وجود ندارد، از ${TOOL: Alternative Location} به دستورالعمل های عامل استفاده کنید و سپس روی ذخیره کلیک کنید.
ما آماده ایم بیایید دوباره شبیه ساز ضامن را باز کنیم و همان سؤالات را بپرسیم (یعنی بهترین راه برای رسیدن به واکاندا چیست؟)
تبریک می گویم! نماینده شما اکنون مکان هایی را با استفاده از اطلاعات ارائه شده از یک فایل متنی توصیه می کند.
کار تمام شد، ما کار ساخت عامل هوش مصنوعی سازنده خودمان را تمام کردیم، اگر میخواهید بیشتر از نظر شخصیسازی عامل خود برای تجربه بهتر کاوش کنید، لطفاً فعالیتهای اضافی زیر را بررسی کنید.
5. فعالیت های اضافی - عامل هوش مصنوعی خود را زنده کنید
در مراحل قبل، یک عامل هوش مصنوعی ایجاد کردهاید و آن را با دادههای مرجع مرتبط پایهگذاری کردهاید. در بخش بعدی، به این سوال مهم می پردازید که چگونه می توان این عامل را در وب سایت خود جاسازی کرد و امکان تعامل بی درنگ با بازدیدکنندگان را فراهم کرد.
راه های زیادی برای افشای نماینده شما وجود دارد. می توانید آن را صادر کنید یا مستقیماً آن را منتشر کنید. برای اطلاع از گزینه های احتمالی می توانید اسناد را بررسی کنید.
در گوشه سمت راست بالای برگه Dialogflow خود، روی منوی Overflow و سپس Publish agent کلیک کنید
تمام تنظیمات را به صورت پیش فرض نگه دارید و روی Enable unauthenticated API کلیک کنید.
توجه: فعال کردن API تایید نشده فقط برای اهداف نمایشی است و استفاده از این پیکربندی برای حجم کاری تولید توصیه نمیشود. اگر علاقه مند به انتشار ایمن هستید، این مستندات را بررسی کنید.
پس از کلیک کردن، باید یک قطعه کد کوچک CSS را مشاهده کنید:
فقط قطعه کد را کپی کنید . بعداً این قطعه کد را در یک وب سایت ادغام خواهید کرد.
برای ایجاد یک وب سایت، از محیط Cloud Editor استفاده خواهید کرد. در اینجا مراحل باز کردن Cloud Editor آمده است:
- Google Cloud Console را در تب دیگری باز کنید.
- روی دکمه Activate Cloud Shell در گوشه سمت راست بالا کلیک کنید
- بر روی دکمه Open Editor کلیک کنید.
اگر درخواستی برای Authorize Cloud Shell وجود دارد، برای ادامه روی Authorize کلیک کنید.
در بخش زیر، از Gemini Code Assist برای ایجاد یک نمونه برنامه وب فلاسک پایتون برای ادغام با قطعه Agent خود استفاده خواهید کرد.
پس از باز شدن Cloud Shell Editor، روی Gemini Code Assist کلیک کنید و به Google Cloud Project خود وارد شوید . اگر از شما می خواهد که API را فعال کنید، روی Enable کلیک کنید.
پس از اتمام، بیایید از Gemini Code Assist بخواهیم یک برنامه فلاسک ایجاد کند و قطعه کد عامل هوش مصنوعی را در آن ادغام کند.
در اینجا اعلان نمونه است، شما می توانید استفاده کنید
Here
قطعه code
publish
agent
builder
agent
Vertex
AI
buddy
Travel
my
is
snippet,
<REPLACE IT WITH YOUR AI AGENT PUBLISH CODE SNIPPET>
can
you
a
app
flask
sample
to
use
it
create
توجه: در اینجا ما یک برنامه فلاسک پایتون را درخواست کرده ایم. اگر زبان برنامه نویسی یا فریم ورک دیگری را ترجیح می دهید، لطفاً از آن استفاده کنید. Gemini Code Assist قابلیت تولید زبان های برنامه نویسی مختلف را دارد. برای جزئیات بیشتر ، زبان ها، IDE ها و رابط های پشتیبانی شده را بررسی کنید.
خواهید دید که قطعه کد ارائه شده از قبل با عامل هوش مصنوعی یکپارچه شده است. برای آزمایش اینکه آیا کد ارائه شده معتبر است یا خیر، می توانید دستورالعمل های ارائه شده توسط Gemini Code Assist در مورد نحوه اجرای این بخش کد از پاسخ خروجی را دنبال کنید.
نمونه کد پاسخ خروجی -
from
import
flask
Flask,
render_template_string
app
=
Flask(__name__)
#
string
template
HTML
with
the
Dialogflow
Messenger
provided
code
html_template
=
"""
<!DOCTYPE
html>
<html
lang="en">
<head>
<meta
charset="UTF-8">
<meta
name="viewport"
content="width=device-width,
initial-scale=1.0">
<title>Travel
Buddy
Chatbot</title>
<link
rel="stylesheet"
href="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/themes/df-messenger-default.css">
<script
src="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/df-messenger.js"></script>
<style>
df-messenger
{
z-index:
999;
position:
fixed;
--df-messenger-font-color:
#000;
--df-messenger-font-family:
Google
Sans;
--df-messenger-chat-background:
#f3f6fc;
--df-messenger-message-user-background:
#d3e3fd;
--df-messenger-message-bot-background:
#fff;
bottom:
16px;
right:
16px;
}
body
{
font-family:
sans-serif;
margin:
20px;
}
</style>
</head>
<body>
<h1>Welcome
to
Travel
Buddy!</h1>
<p>Start
in
the
سمت right
bottom
، chatting
with
buddy,
Travel
AI
our
شروع کنید corner.</p>
<df-messenger
project-id="<SAMPLE>"
agent-id="<SAMPLE>"
language-code="en"
max-query-length="-1">
<df-messenger-chat-bubble
chat-title=" Buddy">
chat-title="Travel
">
</df-messenger-chat-bubble>
</df-messenger>
</body>
</html>
"""
@app.route("/")
def
index():
"""Renders
the
HTML
template
with
the
رسان Dialogflow
ارائه می دهد Messenger."""
return
render_template_string(html_template)
if
__name__
==
"__main__":
app.run(debug=True)
طبق دستورالعمل داده شده
- نمونه کد برنامه فلاسک ارائه شده را کپی کنید،
- یک فایل جدید با نام app.py ایجاد کنید و فایل را ذخیره کنید.
در مرحله بعدی، درخواست نصب فلاسک برای اجرای این قطعه است، که فعلاً مورد نیاز نیست، زیرا پوسته ابری از قبل تمام ابزارهای معمول مورد استفاده را به طور پیش فرض نصب کرده است.
فایل را ذخیره کنید (Ctrl + S یا CMD + S) و سپس بر روی Open Terminal کلیک کنید، جایی که کد ارائه شده را اجرا می کنید.
در ترمینال دستور زیر را اجرا کنید
python app.py
توجه: مطمئن شوید که در پوشه مناسبی هستید، جایی که فایل app.py شما وجود دارد
برنامه فلاسک پایتون روی پورت 5000 اجرا خواهد شد. برای مشاهده پیش نمایش این وب اپلیکیشن، روی نماد Web Preview در پوسته ابری کلیک کنید. سپس می توانید روی Change Port کلیک کنید، 5000 را وارد کنید و برای ذخیره آن روی Change and Preview کلیک کنید.
یک وب سایت نمونه ایجاد می شود و یک عامل هوش مصنوعی در حال حاضر موجود است. فقط روی عامل هوش مصنوعی کلیک کنید و با آن چت کنید.
به راحتی آن را با دستورات مختلف تست کنید. همچنین میتوانید از Gemini Code Assist بخواهید که وبسایت شما را زیبا کند یا دادههای زمینی بیشتری را به عامل هوش مصنوعی اضافه کند و آن را مدبرتر کند.
هنگامی که آماده شدید، به عنوان گام بعدی، میتوانید این عامل هوش مصنوعی را در Google Cloud میزبانی کنید تا هر کسی در هر کجا به آن دسترسی داشته باشد. در مورد یادآوری این کد لبه، شما این نمونه برنامه فلاسک را در Cloud Run به عنوان یک ظرف مستقر خواهید کرد.
توجه: این فقط به اجرای ابری محدود نمی شود (اگر نمی دانید اجرای ابری چیست، حتی می توانید این را بپرسید)، می توانید از کمک کد gemini بخواهید تا به شما کمک کند این را در Google Cloud یا هر جایی با بهترین روش ها استقرار دهید، می تواند در آن قسمت نیز به شما کمک کند.
به ترمینال Cloud Shell برگردید و Ctrl + C را فشار دهید تا فرآیند از بین برود. دوباره بر روی Open Editor کلیک کنید و از Gemini Code Assist بخواهید که به ما در کانتینری کردن برنامه و استقرار آن در اجرای ابری کمک کند.
Can
you
me
help
تا this
sample
app
flask
را to
service
run
cloud
deploy
برای میزبانی برنامه ما در سرویس اجرای ابری، دستورالعمل ها و دستورهایی را ارائه می دهد که باید دنبال شوند، بیایید دستورالعمل ها را دنبال کنیم
در اینجا نمونه پاسخ خروجی است
مراحل استقرار در Cloud Run
- پیش نیازها:
- حساب Google Cloud: به یک حساب Google Cloud با فعال بودن صورتحساب نیاز دارید.
- gcloud CLI: Google Cloud SDK (gcloud CLI) را روی دستگاه محلی خود نصب و مقداردهی اولیه کنید. شما از این برای تعامل با Google Cloud از ترمینال خود استفاده خواهید کرد.
- Docker: Docker را روی دستگاه محلی خود نصب کنید. Cloud Run از Docker برای کانتینر کردن برنامه شما استفاده می کند.
- راه اندازی پروژه: مطمئن شوید که یک پروژه Google Cloud را در gcloud CLI خود انتخاب کرده اید. می توانید با
gcloud config list project
بررسی کنید و آن را باgcloud config set project YOUR_PROJECT_ID
توجه: از آنجایی که ما کل این فعالیت را در پوسته ابری انجام می دهیم، نیازی به راه اندازی پروژه ها نیست
- Create **
requirements.txt
******:**
- این فایل تمام بسته های پایتون مورد نیاز برنامه شما را فهرست می کند. در دایرکتوری پروژه خود (جایی که
main.py
است)، یک فایل با نامrequirements.txt
ایجاد کنید و خط زیر را اضافه کنید.
- ایجاد
Dockerfile
******:**
- یک
Dockerfile
نحوه ساخت یک تصویر Docker را برای برنامه شما تعریف می کند. یک فایل به نامDockerfile
(بدون پسوند) در فهرست پروژه خود ایجاد کنید و محتوای زیر را اضافه کنید:
#
Use
an
runtime
official
Python
as
a
parent
imageFROM
python:3.9-slim-buster
#
the
working
directory
to
/appWORKDIR
/app
Set
#
the
directory
current
contents
into
the
at
/app
Copy
container
COPY
.
/app
#
any
packages
needed
specified
in
requirements.txt
Install
RUN
pip
install
--no-cache-dir
-r
requirements.txt
#
port
5000
world
available
to
the
outside
this
container
Make
EXPOSE
5000
#
variable
environment
Define
ENV
NAME
World
#
when
the
launches
container
app.py
Run
CMD
["python",
".py"]
- ساخت تصویر داکر:
- ترمینال خود را باز کنید، به دایرکتوری پروژه خود بروید و اجرا کنید:
بیلدهای gcloud submit –tag gcr.io/bgr-workshop-23rd/travel-buddy
- استقرار در Cloud Run:
- پس از ساخت و آپلود تصویر، آن را با دستور زیر در Cloud Run قرار دهید:
gcloud
run
deploy
travel-buddy
--image
gcr.io/bgr-workshop-23rd/travel-buddy
--region
us-central1
پس از انجام این مراحل، خواهید دید که برنامه شما با عامل هوش مصنوعی یکپارچه برای کاربران نهایی شما فعال خواهد شد.
تبریک و یادگیری شاد.
6. پاکسازی کنید
برای جلوگیری از تحمیل هزینه به حساب Google Cloud خود برای منابع مورد استفاده در این Codelab، این مراحل را دنبال کنید:
- در کنسول Google Cloud، به صفحه مدیریت منابع بروید.
- در لیست پروژه، پروژه ای را که می خواهید حذف کنید انتخاب کنید و سپس روی Delete کلیک کنید.
- در محاوره، شناسه پروژه را تایپ کنید و سپس روی Shut down کلیک کنید تا پروژه حذف شود.
- یا میتوانید به Cloud Run در کنسول بروید، سرویسی را که به تازگی مستقر کردهاید انتخاب کرده و حذف کنید.