Bài học này sẽ hướng dẫn cách chạy các ví dụ mã của khóa học này.
Trước khi bắt đầu sao chép kho lưu trữ của bạn, hãy tham gia kênh AI Agents For Beginners Discord để nhận trợ giúp về thiết lập, đặt câu hỏi về khóa học hoặc kết nối với các người học khác.
Để bắt đầu, vui lòng sao chép hoặc fork kho lưu trữ GitHub. Việc này sẽ tạo phiên bản riêng của bạn cho tài liệu khóa học để bạn có thể chạy, thử nghiệm và tùy chỉnh mã!
Bạn có thể thực hiện bằng cách nhấp vào liên kết fork kho lưu trữ
Bạn sẽ có phiên bản fork của khóa học này tại liên kết sau:

Kho lưu trữ đầy đủ có thể rất lớn (~3 GB) khi bạn tải xuống toàn bộ lịch sử và tất cả các tập tin. Nếu bạn chỉ tham gia workshop hoặc chỉ cần vài thư mục bài học, một bản shallow clone (hoặc sparse clone) sẽ tránh tải xuống phần lớn bằng cách rút ngắn lịch sử và/hoặc bỏ qua các blob.
Thay <your-username> trong các lệnh dưới đây bằng URL fork của bạn (hoặc URL upstream nếu bạn muốn).
Để sao chép chỉ lịch sử commit mới nhất (tải xuống nhỏ):
git clone --depth 1 https://github.com/<your-username>/ai-agents-for-beginners.git
Để sao chép một nhánh cụ thể:
git clone --depth 1 --branch <branch-name> https://github.com/<your-username>/ai-agents-for-beginners.git
Lệnh này sử dụng partial clone và sparse-checkout (yêu cầu Git 2.25+ và khuyến nghị Git hiện đại hỗ trợ partial clone):
git clone --depth 1 --filter=blob:none --sparse https://github.com/<your-username>/ai-agents-for-beginners.git
Đi vào thư mục repo:
cd ai-agents-for-beginners
Sau đó chỉ định các thư mục bạn muốn (ví dụ dưới đây cho thấy hai thư mục):
git sparse-checkout set 00-course-setup 01-intro-to-ai-agents
Sau khi clone và kiểm tra tập tin, nếu bạn chỉ cần các tập tin và muốn giải phóng không gian (không cần lịch sử git), vui lòng xóa dữ liệu metadata repository (💀 không thể khôi phục — bạn sẽ mất toàn bộ chức năng Git: không thể commit, pull, push hoặc truy cập lịch sử).
# zsh/bash
rm -rf .git
# PowerShell
Remove-Item -Recurse -Force .git
Tạo một Codespace mới cho repo này qua GitHub UI.
Khóa học này cung cấp một loạt các Jupyter Notebooks để bạn có thể chạy để có trải nghiệm thực hành xây dựng các AI Agents.
Mã mẫu sử dụng Microsoft Agent Framework (MAF) với AzureAIProjectAgentProvider, kết nối đến Azure AI Agent Service V2 (API Responses) thông qua Microsoft Foundry.
Tất cả các notebook Python được gắn nhãn *-python-agent-framework.ipynb.
LƯU Ý: Nếu bạn chưa cài Python3.12, đảm bảo bạn cài đặt nó. Sau đó tạo môi trường ảo venv sử dụng python3.12 để đảm bảo các phiên bản đúng được cài từ tệp requirements.txt.
Ví dụ
Tạo thư mục Python venv:
python -m venv venv
Sau đó kích hoạt môi trường venv cho:
# zsh/bash
source venv/bin/activate
# Command Prompt for Windows
venv\Scripts\activate
.NET 10+: Đối với mã mẫu sử dụng .NET, hãy cài đặt .NET 10 SDK hoặc phiên bản mới hơn. Sau đó kiểm tra phiên bản SDK .NET bạn đã cài đặt:
dotnet --list-sdks
gpt-4o). Xem Bước 1 bên dưới.Chúng tôi đã bao gồm tệp requirements.txt ở thư mục gốc của repo chứa tất cả các gói Python cần thiết để chạy mã mẫu.
Bạn có thể cài đặt chúng bằng cách chạy lệnh sau trong terminal ở thư mục gốc repo:
pip install -r requirements.txt
Chúng tôi khuyên bạn nên tạo môi trường ảo Python để tránh xung đột và sự cố.
Đảm bảo bạn đang dùng đúng phiên bản Python trong VSCode.
Bạn cần một hub và một dự án Azure AI Foundry có mô hình được triển khai để chạy notebook.
gpt-4o) từ Models + Endpoints → Deploy model.Từ dự án của bạn trong cổng Microsoft Foundry:

gpt-4o).az loginTất cả notebook dùng AzureCliCredential để xác thực — không cần quản lý các khóa API. Điều này yêu cầu bạn đăng nhập qua Azure CLI.
Cài Azure CLI nếu bạn chưa: aka.ms/installazurecli
Đăng nhập bằng lệnh:
az login
Hoặc nếu bạn ở môi trường remote/Codespace không có trình duyệt:
az login --use-device-code
Chọn đăng ký Azure nếu được yêu cầu — chọn đăng ký chứa dự án Foundry của bạn.
Xác minh bạn đã đăng nhập:
az account show
Tại sao lại
az login? Các notebook xác thực thông quaAzureCliCredentialcủa góiazure-identity. Điều này có nghĩa phiên làm việc Azure CLI của bạn cung cấp thông tin xác thực — không cần API key hay bí mật trong tệp.env. Đây là một thực hành bảo mật tốt.
.env của bạnSao chép tệp mẫu:
# zsh/bash
cp .env.example .env
# PowerShell
Copy-Item .env.example .env
Mở .env và điền hai giá trị sau:
AZURE_AI_PROJECT_ENDPOINT=https://<your-project>.services.ai.azure.com/api/projects/<your-project-id>
AZURE_AI_MODEL_DEPLOYMENT_NAME=gpt-4o
| Biến | Nơi tìm thấy |
|---|---|
AZURE_AI_PROJECT_ENDPOINT |
Cổng Foundry → dự án của bạn → trang Overview |
AZURE_AI_MODEL_DEPLOYMENT_NAME |
Cổng Foundry → Models + Endpoints → tên mô hình đã triển khai |
Đó là tất cả cho hầu hết bài học! Các notebook sẽ tự động xác thực qua phiên az login của bạn.
pip install -r requirements.txt
Chúng tôi khuyên bạn nên chạy lệnh này trong môi trường ảo bạn đã tạo trước đó.
Bài 5 dùng Azure AI Search cho retrieval-augmented generation. Nếu bạn dự định chạy bài này, thêm các biến sau vào tệp .env:
| Biến | Nơi tìm thấy |
|---|---|
AZURE_SEARCH_SERVICE_ENDPOINT |
Cổng Azure → tài nguyên Azure AI Search → Overview → URL |
AZURE_SEARCH_API_KEY |
Cổng Azure → tài nguyên Azure AI Search → Settings → Keys → key quản trị chính |
Một số notebook trong bài 6 và 8 dùng GitHub Models thay vì Azure AI Foundry. Nếu bạn muốn chạy các mẫu đó, thêm các biến này vào tệp .env:
| Biến | Nơi tìm thấy |
|---|---|
GITHUB_TOKEN |
GitHub → Settings → Developer settings → Personal access tokens |
GITHUB_ENDPOINT |
Dùng https://models.inference.ai.azure.com (giá trị mặc định) |
GITHUB_MODEL_ID |
Tên mô hình sử dụng (ví dụ gpt-4o-mini) |
MiniMax cung cấp các mô hình có ngữ cảnh lớn (lên đến 204K token) thông qua API tương thích OpenAI. Vì Microsoft Agent Framework OpenAIChatClient hoạt động với bất kỳ đầu cuối tương thích OpenAI nào, bạn có thể dùng MiniMax như một thay thế cho GitHub Models hoặc OpenAI.
Thêm các biến sau vào tệp .env:
| Biến | Nơi tìm thấy |
|---|---|
MINIMAX_API_KEY |
MiniMax Platform → API Keys |
MINIMAX_BASE_URL |
Dùng https://api.minimax.io/v1 (giá trị mặc định) |
MINIMAX_MODEL_ID |
Tên mô hình sử dụng (ví dụ: MiniMax-M2.7) |
Các mô hình có sẵn: MiniMax-M2.7 (khuyến nghị), MiniMax-M2.7-highspeed (phản hồi nhanh hơn)
Các ví dụ mã dùng OpenAIChatClient (ví dụ: bài 14 về quy trình đặt phòng khách sạn) sẽ tự động phát hiện và dùng cấu hình MiniMax của bạn khi MINIMAX_API_KEY được thiết lập.
Notebook quy trình có điều kiện trong bài 8 dùng Bing grounding qua Azure AI Foundry. Nếu bạn định chạy mẫu này, thêm biến sau vào .env:
| Biến | Nơi tìm thấy |
|---|---|
BING_CONNECTION_ID |
Cổng Azure AI Foundry → dự án của bạn → Management → Connected resources → kết nối Bing của bạn → sao chép connection ID |
Nếu bạn dùng macOS gặp lỗi như:
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain
Đây là vấn đề thường gặp với Python trên macOS khi hệ thống không tự động tin cậy chứng chỉ SSL. Thử các giải pháp sau theo thứ tự:
Lựa chọn 1: Chạy script Cài đặt chứng chỉ của Python (khuyến nghị)
# Thay thế 3.XX bằng phiên bản Python bạn đã cài đặt (ví dụ, 3.12 hoặc 3.13):
/Applications/Python\ 3.XX/Install\ Certificates.command
Lựa chọn 2: Dùng connection_verify=False trong notebook (chỉ với notebook GitHub Models)
Trong notebook Bài 6 (06-building-trustworthy-agents/code_samples/06-system-message-framework.ipynb), có sẵn phương án giải quyết đã bị comment. Bỏ comment connection_verify=False khi tạo client:
client = ChatCompletionsClient(
endpoint=endpoint,
credential=AzureKeyCredential(token),
connection_verify=False, # Vô hiệu hóa xác thực SSL nếu bạn gặp lỗi chứng chỉ
)
⚠️ Cảnh báo: Vô hiệu hóa xác thực SSL (
connection_verify=False) làm giảm độ bảo mật vì bỏ qua kiểm tra chứng chỉ. Chỉ dùng như giải pháp tạm thời trong môi trường phát triển, không dùng trong sản xuất.
Lựa chọn 3: Cài và dùng truststore
pip install truststore
Sau đó thêm dòng sau trên đầu notebook hoặc script trước khi gọi network:
import truststore
truststore.inject_into_ssl()
Nếu bạn gặp sự cố khi chạy thiết lập, hãy tham gia vào Azure AI Community Discord hoặc tạo một issue.
Bạn giờ đã sẵn sàng chạy mã cho khóa học này. Chúc bạn học vui và tìm hiểu thêm về thế giới các AI Agents!
Giới thiệu về AI Agents và Các trường hợp sử dụng Agent
Tuyên bố từ chối trách nhiệm:
Tài liệu này đã được dịch bằng dịch vụ dịch thuật AI Co-op Translator. Mặc dù chúng tôi cố gắng đảm bảo độ chính xác, xin lưu ý rằng các bản dịch tự động có thể chứa lỗi hoặc không chính xác. Tài liệu gốc bằng ngôn ngữ bản địa nên được coi là nguồn thông tin chính thức. Đối với các thông tin quan trọng, khuyến nghị sử dụng dịch vụ dịch thuật chuyên nghiệp do con người thực hiện. Chúng tôi không chịu trách nhiệm cho bất kỳ sự hiểu lầm hoặc giải thích sai nào phát sinh từ việc sử dụng bản dịch này.