บทเรียนนี้จะครอบคลุมวิธีการรันตัวอย่างโค้ดในคอร์สนี้
ก่อนที่คุณจะเริ่มโคลน repo ของคุณ เข้าร่วม ช่อง Discord AI Agents For Beginners เพื่อขอความช่วยเหลือเกี่ยวกับการตั้งค่า ถามคำถามเกี่ยวกับคอร์ส หรือเชื่อมต่อกับผู้เรียนคนอื่น ๆ
เริ่มต้นโดยการโคลนหรือ fork GitHub Repository สิ่งนี้จะสร้างเวอร์ชันของคอร์สที่เป็นของคุณเอง เพื่อให้คุณสามารถรัน ทดสอบ และปรับแต่งโค้ดได้!
คุณสามารถทำได้โดยคลิกที่ลิงก์ fork repo
ตอนนี้คุณควรมีเวอร์ชัน fork ของคอร์สนี้ในลิงก์ต่อไปนี้:

Repository เต็มอาจมีขนาดใหญ่ (~3 GB) เมื่อคุณดาวน์โหลดประวัติและไฟล์ทั้งหมด หากคุณเข้าร่วม workshop หรือต้องการเพียงบางโฟลเดอร์ของบทเรียน การโคลนแบบ shallow (หรือ sparse clone) จะช่วยลดการดาวน์โหลดโดยการตัดประวัติและ/หรือข้าม blobs
แทนที่ <your-username> ในคำสั่งด้านล่างด้วย URL fork ของคุณ (หรือ URL upstream หากคุณต้องการ)
เพื่อโคลนเฉพาะประวัติ commit ล่าสุด (ดาวน์โหลดขนาดเล็ก):
git clone --depth 1 https://github.com/<your-username>/ai-agents-for-beginners.git
เพื่อโคลนสาขาเฉพาะ:
git clone --depth 1 --branch <branch-name> https://github.com/<your-username>/ai-agents-for-beginners.git
วิธีนี้ใช้ partial clone และ sparse-checkout (ต้องการ Git 2.25+ และแนะนำ Git รุ่นใหม่ที่รองรับ partial clone):
git clone --depth 1 --filter=blob:none --sparse https://github.com/<your-username>/ai-agents-for-beginners.git
เข้าสู่โฟลเดอร์ repo:
cd ai-agents-for-beginners
จากนั้นระบุโฟลเดอร์ที่คุณต้องการ (ตัวอย่างด้านล่างแสดงสองโฟลเดอร์):
git sparse-checkout set 00-course-setup 01-intro-to-ai-agents
หลังจากโคลนและตรวจสอบไฟล์ หากคุณต้องการเพียงไฟล์และต้องการเพิ่มพื้นที่ว่าง (ไม่มีประวัติ git) โปรดลบ metadata ของ repository (💀ไม่สามารถย้อนกลับได้ — คุณจะสูญเสียฟังก์ชัน Git ทั้งหมด: ไม่มี commit, pull, push หรือการเข้าถึงประวัติ)
# zsh/bash
rm -rf .git
# PowerShell
Remove-Item -Recurse -Force .git
สร้าง Codespace ใหม่สำหรับ repo นี้ผ่าน GitHub UI
คอร์สนี้มีชุด Jupyter Notebooks ที่คุณสามารถรันเพื่อสัมผัสประสบการณ์การสร้าง AI Agents
ตัวอย่างโค้ดใช้:
ต้องมีบัญชี GitHub - ฟรี:
1) Semantic Kernel Agent Framework + GitHub Models Marketplace. ระบุว่า (semantic-kernel.ipynb) 2) AutoGen Framework + GitHub Models Marketplace. ระบุว่า (autogen.ipynb)
ต้องมีการสมัครสมาชิก Azure: 3) Azure AI Foundry + Azure AI Agent Service. ระบุว่า (azureaiagent.ipynb)
เราขอแนะนำให้คุณลองใช้ตัวอย่างทั้งสามประเภทเพื่อดูว่าแบบใดเหมาะกับคุณที่สุด
ตัวเลือกที่คุณเลือกจะกำหนดขั้นตอนการตั้งค่าที่คุณต้องทำตามด้านล่าง:
NOTE: หากคุณยังไม่มี Python3.12 ติดตั้งอยู่ ให้ติดตั้งก่อน จากนั้นสร้าง venv โดยใช้ python3.12 เพื่อให้แน่ใจว่าเวอร์ชันที่ถูกต้องจะถูกติดตั้งจากไฟล์ requirements.txt
ตัวอย่าง
สร้างไดเรกทอรี Python venv:
python -m venv venv
จากนั้นเปิดใช้งาน venv environment สำหรับ:
# zsh/bash
source venv/bin/activate
# Command Prompt for Windows
venv\Scripts\activate
.NET 10+: สำหรับตัวอย่างโค้ดที่ใช้ .NET ให้แน่ใจว่าคุณติดตั้ง .NET 10 SDK หรือใหม่กว่า จากนั้นตรวจสอบเวอร์ชัน SDK ที่ติดตั้ง:
dotnet --list-sdks
เราได้รวมไฟล์ requirements.txt ไว้ใน root ของ repository นี้ ซึ่งมี Python packages ที่จำเป็นทั้งหมดสำหรับการรันตัวอย่างโค้ด
คุณสามารถติดตั้งได้โดยรันคำสั่งต่อไปนี้ใน terminal ที่ root ของ repository:
pip install -r requirements.txt
เราแนะนำให้สร้าง Python virtual environment เพื่อหลีกเลี่ยงปัญหาและความขัดแย้งใด ๆ
ตรวจสอบให้แน่ใจว่าคุณใช้เวอร์ชัน Python ที่ถูกต้องใน VSCode
คอร์สนี้ใช้ GitHub Models Marketplace ซึ่งให้การเข้าถึง Large Language Models (LLMs) ฟรีที่คุณจะใช้ในการสร้าง AI Agents
ในการใช้ GitHub Models คุณจะต้องสร้าง GitHub Personal Access Token
คุณสามารถทำได้โดยไปที่ การตั้งค่า Personal Access Tokens ในบัญชี GitHub ของคุณ
โปรดปฏิบัติตาม หลักการของ Least Privilege เมื่อสร้าง token ของคุณ ซึ่งหมายความว่าคุณควรให้ token มีสิทธิ์ที่จำเป็นเท่านั้นในการรันตัวอย่างโค้ดในคอร์สนี้
เลือกตัวเลือก Fine-grained tokens ทางด้านซ้ายของหน้าจอโดยไปที่ Developer settings

จากนั้นเลือก Generate new token

ใส่ชื่อที่อธิบายถึง token ของคุณที่สะท้อนถึงวัตถุประสงค์ ทำให้ง่ายต่อการระบุในภายหลัง
🔐 คำแนะนำระยะเวลาของ Token
ระยะเวลาที่แนะนำ: 30 วัน เพื่อความปลอดภัยที่มากขึ้น คุณสามารถเลือกระยะเวลาที่สั้นกว่า เช่น 7 วัน 🛡️ เป็นวิธีที่ดีในการตั้งเป้าหมายส่วนตัวและทำคอร์สให้เสร็จในขณะที่คุณมีแรงจูงใจในการเรียนรู้ 🚀

จำกัดขอบเขตของ token เฉพาะ fork ของ repository นี้

จำกัดสิทธิ์ของ token: ภายใต้ Permissions คลิกแท็บ Account และคลิกปุ่ม “+ Add permissions” จะมี dropdown ปรากฏขึ้น ค้นหา Models และเลือกช่องสำหรับมัน

ตรวจสอบสิทธิ์ที่จำเป็นก่อนสร้าง token 
ก่อนสร้าง token ตรวจสอบให้แน่ใจว่าคุณพร้อมที่จะเก็บ token ไว้ในที่ปลอดภัย เช่น vault ของ password manager เพราะมันจะไม่แสดงอีกหลังจากที่คุณสร้างมัน 
คัดลอก token ใหม่ที่คุณเพิ่งสร้างขึ้น ตอนนี้คุณจะเพิ่มสิ่งนี้ลงในไฟล์ .env ที่รวมอยู่ในคอร์สนี้
.env ของคุณเพื่อสร้างไฟล์ .env ให้รันคำสั่งต่อไปนี้ใน terminal ของคุณ
# zsh/bash
cp .env.example .env
# PowerShell
Copy-Item .env.example .env
สิ่งนี้จะคัดลอกไฟล์ตัวอย่างและสร้าง .env ในไดเรกทอรีของคุณ ซึ่งคุณจะเติมค่าของตัวแปร environment
เมื่อคุณคัดลอก token แล้ว ให้เปิดไฟล์ .env ใน text editor ที่คุณชื่นชอบและวาง token ลงในฟิลด์ GITHUB_TOKEN

ตอนนี้คุณควรสามารถรันตัวอย่างโค้ดในคอร์สนี้ได้แล้ว
ทำตามขั้นตอนการสร้าง hub และโปรเจกต์ใน Azure AI Foundry ได้ที่นี่: Hub resources overview
เมื่อคุณสร้างโปรเจกต์ของคุณแล้ว คุณจะต้องรับ connection string สำหรับโปรเจกต์ของคุณ
คุณสามารถทำได้โดยไปที่หน้า Overview ของโปรเจกต์ใน Azure AI Foundry portal

.env ของคุณเพื่อสร้างไฟล์ .env ให้รันคำสั่งต่อไปนี้ใน terminal ของคุณ
# zsh/bash
cp .env.example .env
# PowerShell
Copy-Item .env.example .env
สิ่งนี้จะคัดลอกไฟล์ตัวอย่างและสร้าง .env ในไดเรกทอรีของคุณ ซึ่งคุณจะเติมค่าของตัวแปร environment
เมื่อคุณคัดลอก token แล้ว ให้เปิดไฟล์ .env ใน text editor ที่คุณชื่นชอบและวาง token ลงในฟิลด์ PROJECT_ENDPOINT
เพื่อความปลอดภัยที่ดีที่สุด เราจะใช้ keyless authentication เพื่อยืนยันตัวตนกับ Azure OpenAI ด้วย Microsoft Entra ID
ถัดไป เปิด terminal และรัน az login --use-device-code เพื่อเข้าสู่ระบบบัญชี Azure ของคุณ
เมื่อคุณเข้าสู่ระบบแล้ว ให้เลือก subscription ของคุณใน terminal
สำหรับบทเรียน Agentic RAG - บทเรียนที่ 5 - มีตัวอย่างที่ใช้ Azure Search และ Azure OpenAI
หากคุณต้องการรันตัวอย่างเหล่านี้ คุณจะต้องเพิ่มตัวแปร environment ต่อไปนี้ลงในไฟล์ .env ของคุณ:
AZURE_SUBSCRIPTION_ID - ตรวจสอบ Project details ในหน้า Overview ของโปรเจกต์ของคุณ
AZURE_AI_PROJECT_NAME - ดูที่ด้านบนของหน้า Overview สำหรับโปรเจกต์ของคุณ
AZURE_OPENAI_SERVICE - ค้นหานี้ในแท็บ Included capabilities สำหรับ Azure OpenAI Service ในหน้า Overview
AZURE_OPENAI_RESOURCE_GROUP - ไปที่ Project properties ในหน้า Overview ของ Management Center
GLOBAL_LLM_SERVICE - ภายใต้ Connected resources ค้นหาชื่อการเชื่อมต่อ Azure AI Services หากไม่พบ ให้ตรวจสอบ Azure portal ใน resource group ของคุณสำหรับชื่อ resource AI Services
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME - เลือกรุ่น embedding ของคุณ (เช่น text-embedding-ada-002) และจดชื่อ Deployment name จากรายละเอียดรุ่น
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME - เลือกรุ่น chat ของคุณ (เช่น gpt-4o-mini) และจดชื่อ Deployment name จากรายละเอียดรุ่น
AZURE_OPENAI_ENDPOINT - ค้นหา Azure AI services คลิกที่มัน จากนั้นไปที่ Resource Management, Keys and Endpoint, เลื่อนลงไปที่ “Azure OpenAI endpoints” และคัดลอกอันที่ระบุว่า “Language APIs”
AZURE_OPENAI_API_KEY - จากหน้าจอเดียวกัน คัดลอก KEY 1 หรือ KEY 2
AZURE_SEARCH_SERVICE_ENDPOINT - ค้นหา resource Azure AI Search ของคุณ คลิกที่มัน และดู Overview
AZURE_SEARCH_API_KEY - จากนั้นไปที่ Settings และ Keys เพื่อคัดลอก admin key หลักหรือรอง
AZURE_OPENAI_API_VERSION - เยี่ยมชมหน้า API version lifecycle ภายใต้ Latest GA API releaseแทนที่จะ hardcode credentials ของคุณ เราจะใช้ keyless connection กับ Azure OpenAI ในการทำเช่นนั้น เราจะ import DefaultAzureCredential และเรียกฟังก์ชัน DefaultAzureCredential เพื่อรับ credential
# Python
from azure.identity import DefaultAzureCredential, InteractiveBrowserCredential
หากคุณมีปัญหาในการตั้งค่านี้ สามารถเข้าร่วม Azure AI Community Discord หรือ สร้างปัญหาใหม่ ได้เลย
ตอนนี้คุณพร้อมที่จะรันโค้ดสำหรับคอร์สนี้แล้ว ขอให้สนุกกับการเรียนรู้เพิ่มเติมเกี่ยวกับโลกของ AI Agents!
แนะนำ AI Agents และกรณีการใช้งานของ Agent
ข้อจำกัดความรับผิดชอบ:
เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษา AI Co-op Translator แม้ว่าเราจะพยายามให้การแปลมีความถูกต้อง แต่โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาดั้งเดิมควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลสำคัญ ขอแนะนำให้ใช้บริการแปลภาษามืออาชีพ เราไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดจากการใช้การแปลนี้