Skip to content

Latest commit

 

History

History
311 lines (241 loc) · 25.6 KB

File metadata and controls

311 lines (241 loc) · 25.6 KB

ชุดเครื่องมือ Foundry + เวิร์กช็อปตัวแทนโฮสต์ Foundry

Python Microsoft Agent Framework Hosted Agents Microsoft Foundry Azure OpenAI Azure CLI Azure Developer CLI Docker Foundry Toolkit License

สร้าง ทดสอบ และปรับใช้เอเย่นต์ AI ไปยัง บริการเอเย่นต์ Microsoft Foundry ในฐานะ เอเย่นต์โฮสต์ - ทั้งหมดทำได้จาก VS Code โดยใช้ ส่วนขยาย Microsoft Foundry และ ชุดเครื่องมือ Foundry.

เอเย่นต์โฮสต์ ตอนนี้อยู่ในสถานะพรีวิว เขตที่สนับสนุมนั้นจำกัด - ดูเพิ่มเติมได้ที่ ความพร้อมใช้งานตามภูมิภาค.

โฟลเดอร์ agent/ ภายในแต่ละห้องปฏิบัติการจะถูก สร้างขึ้นอัตโนมัติ โดยส่วนขยาย Foundry - จากนั้นคุณสามารถปรับแต่งโค้ด ทดสอบในเครื่อง และปรับใช้ได้.

🌐 รองรับหลายภาษา

รองรับผ่าน GitHub Action (อัตโนมัติ & อัปเดตเสมอ)

ภาษาอาหรับ | ภาษาเบงกาลี | ภาษาบัลแกเรีย | ภาษาพม่า (เมียนมา) | ภาษาจีน (ตัวย่อ) | ภาษาจีนดั้งเดิม (ฮ่องกง) | ภาษาจีนดั้งเดิม (มาเก๊า) | ภาษาจีนดั้งเดิม (ไต้หวัน) | ภาษาโครเอเชีย | ภาษาเช็ก | ภาษาเดนมาร์ก | ภาษาดัตช์ | ภาษาเอสโตเนีย | ภาษาฟินแลนด์ | ภาษาฝรั่งเศส | ภาษาเยอรมัน | ภาษากรีก | ภาษาฮิบรู | ภาษาฮินดี | ภาษาฮังการี | ภาษาอินโดนีเซีย | ภาษาอิตาเลียน | ภาษาญี่ปุ่น | ภาษาคันนาดา | ภาษาเขมร | ภาษาเกาหลี | ภาษาลิทัวเนีย | ภาษามาเลย์ | ภาษามาลายาลัม | ภาษามราธี | ภาษาเนปาลี | ภาษาไนจีเรีย pidgin | ภาษานอร์เวย์ | ภาษาเปอร์เซีย (ฟาร์ซี) | ภาษาโปแลนด์ | ภาษาโปรตุเกส (บราซิล) | ภาษาโปรตุเกส (โปรตุเกส) | ภาษาปัญจาบ (กูรมุขิ) | ภาษาโรมาเนีย | ภาษารัสเซีย | ภาษาเซอร์เบียน (ขีริลลิก) | ภาษาสโลวัก | ภาษาสโลวีเนีย | ภาษาสเปน | ภาษาสวาฮิลี | ภาษาสวีเดน | ภาษาตากาล็อก (ฟิลิปปินส์) | ภาษาทมิฬ | ภาษาเทลูกู | ภาษาไทย | ภาษาเตอร์กิช | ภาษายูเครน | ภาษาอูรดู | ภาษาเวียดนาม

ต้องการโคลนไว้ในเครื่อง?

ที่เก็บนี้รวมการแปลมากกว่า 50 ภาษา ซึ่งเพิ่มขนาดดาวน์โหลดอย่างมีนัยสำคัญ หากต้องการโคลนโดยไม่รวมการแปล ให้ใช้ sparse checkout:

Bash / macOS / Linux:

git clone --filter=blob:none --sparse https://github.com/microsoft-foundry/Foundry_Toolkit_for_VSCode_Lab.git
cd Foundry_Toolkit_for_VSCode_Lab
git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'

CMD (Windows):

git clone --filter=blob:none --sparse https://github.com/microsoft-foundry/Foundry_Toolkit_for_VSCode_Lab.git
cd Foundry_Toolkit_for_VSCode_Lab
git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"

วิธีนี้จะให้ทุกอย่างที่คุณต้องการเพื่อทำคอร์สนี้ให้เสร็จรวดเร็วขึ้นมาก


สถาปัตยกรรม

flowchart TB
    subgraph Local["การพัฒนาในเครื่อง (VS Code)"]
        direction TB
        FE["ส่วนขยาย Microsoft Foundry"]
        FoundryToolkit["ส่วนขยาย Foundry Toolkit"]
        Scaffold["รหัสตัวแทนแบบ Scaffolded
        (main.py · agent.yaml · Dockerfile)"]
        Inspector["ตัวตรวจสอบตัวแทน
        (ทดสอบในเครื่อง)"]
        FE -- "สร้างตัวแทนโฮสต์ใหม่" --> Scaffold
        Scaffold -- "ดีบัก F5" --> Inspector
        FoundryToolkit -.- Inspector
    end

    subgraph Cloud["Microsoft Foundry"]
        direction TB
        ACR["Azure Container
        Registry"]
        AgentService["บริการตัวแทน Foundry
        (เวลารันตัวแทนโฮสต์)"]
        Model["Azure OpenAI
        (gpt-4.1 / gpt-4.1-mini)"]
        Playground["สนามเล่น Foundry
        & สนามเล่น VS Code"]
        ACR --> AgentService
        AgentService -- "/responses API" --> Model
        AgentService --> Playground
    end

    Scaffold -- "ปรับใช้
    (สร้าง + ดัน Docker)" --> ACR
    Inspector -- "POST /responses
    (localhost:8088)" --> Scaffold
    Playground -- "ทดสอบพร้อมท์" --> AgentService

    style Local fill:#f0f4ff,stroke:#4a6cf7,stroke-width:2px
    style Cloud fill:#fff4e6,stroke:#f59e0b,stroke-width:2px
Loading

โฟลว์: ส่วนขยาย Foundry สร้างโครงร่างเอเย่นต์ → คุณปรับแต่งโค้ดและคำสั่ง → ทดสอบในเครื่องด้วย Agent Inspector → ปรับใช้ไปยัง Foundry (ภาพ Docker ถูกส่งขึ้น ACR) → ตรวจสอบใน Playground.


สิ่งที่คุณจะสร้าง

ห้องปฏิบัติการ คำอธิบาย สถานะ
ห้องปฏิบัติการ 01 - เอเย่นต์เดี่ยว สร้าง "เอเย่นต์อธิบายเหมือนเป็นผู้บริหาร" ทดสอบในเครื่อง และปรับใช้ไปยัง Foundry ✅ มีให้ใช้งาน
ห้องปฏิบัติการ 02 - เวิร์กโฟลว์หลายเอเย่นต์ สร้าง "ผู้ประเมินความเหมาะสมกับงานจากประวัติย่อ" - เอเย่นต์ 4 ตัวร่วมกันให้คะแนนความเหมาะสมของประวัติย่อและสร้างแผนการเรียนรู้ ✅ มีให้ใช้งาน

พบกับ Executive Agent

ในเวิร์กช็อปนี้คุณจะสร้าง "เอเย่นต์อธิบายเหมือนเป็นผู้บริหาร" - เอเย่นต์ AI ที่นำเทคนิคภาษาที่ยุ่งยากซับซ้อนและแปลงเป็นสรุปที่สงบเรียบร้อยพร้อมสำหรับห้องประชุมคณะกรรมการ เพราะต้องยอมรับว่าคนในซี-suite ไม่มีใครอยากฟังเรื่อง "thread pool exhaustion caused by synchronous calls introduced in v3.2."

ผมสร้างเอเย่นต์นี้หลังเหตุการณ์ที่โพสต์มอร์เท็มที่เตรียมไว้อย่างดีหลายครั้งได้รับคำตอบว่า: "งั้น... เว็บไซต์ล่มหรือเปล่า?"

วิธีทำงาน

คุณป้อนการอัปเดตทางเทคนิคเข้าไป มันจะตอบกลับสรุปสำหรับผู้บริหาร - ประเด็นสำคัญสามข้อ ไม่มีศัพท์แสงเทคนิค ไม่มี stack traces ไม่มีความวิตกกังวลแต่อย่างใด แค่ เกิดอะไรขึ้น, ผลกระทบทางธุรกิจ, และ ขั้นตอนถัดไป.

ดูตัวอย่างการใช้งาน

คุณพูดว่า:

"ความหน่วงของ API เพิ่มขึ้นเนื่องจาก thread pool exhaustion caused by synchronous calls introduced in v3.2."

เอเย่นต์ตอบกลับ:

สรุปสำหรับผู้บริหาร:

  • เกิดอะไรขึ้น: หลังจากปล่อยเวอร์ชันล่าสุด ระบบทำงานช้าลง
  • ผลกระทบทางธุรกิจ: ผู้ใช้บางรายประสบกับความล่าช้าในการใช้งานบริการ
  • ขั้นตอนถัดไป: เปลี่ยนแปลงถูกย้อนกลับ และกำลังเตรียมการแก้ไขก่อนนำไปปรับใช้ใหม่

ทำไมถึงต้องเอเย่นต์นี้?

มันเป็นเอเย่นต์ที่ง่ายมาก ทำงานเฉพาะจุดเดียว — เหมาะสำหรับเรียนรู้เวิร์กโฟลว์เอเย่นต์โฮสต์แบบครบวงจรโดยไม่ต้องยุ่งกับสายเครื่องมือที่ซับซ้อน และอย่างซื่อสัตย์? ทุกทีมวิศวกรรมควรมีเอเย่นต์แบบนี้สักตัวหนึ่ง.


โครงสร้างเวิร์กช็อป

📂 Foundry_Toolkit_for_VSCode_Lab/
├── 📄 README.md                      ← You are here
├── 📂 ExecutiveAgent/                ← Standalone hosted agent project
│   ├── agent.yaml
│   ├── Dockerfile
│   ├── main.py
│   └── requirements.txt
└── 📂 workshop/
    ├── 📂 lab01-single-agent/        ← Full lab: docs + agent code
    │   ├── README.md                 ← Hands-on lab instructions
    │   ├── 📂 docs/                  ← Step-by-step tutorial modules
    │   │   ├── 00-prerequisites.md
    │   │   ├── 01-install-foundry-toolkit.md
    │   │   ├── 02-create-foundry-project.md
    │   │   ├── 03-create-hosted-agent.md
    │   │   ├── 04-configure-and-code.md
    │   │   ├── 05-test-locally.md
    │   │   ├── 06-deploy-to-foundry.md
    │   │   ├── 07-verify-in-playground.md
    │   │   └── 08-troubleshooting.md
    │   └── 📂 agent/                 ← Reference solution (auto-scaffolded by Foundry extension)
    │       ├── agent.yaml
    │       ├── Dockerfile
    │       ├── main.py
    │       └── requirements.txt
    └── 📂 lab02-multi-agent/         ← Resume → Job Fit Evaluator
        ├── README.md                 ← Hands-on lab instructions (end-to-end)
        ├── 📂 docs/                  ← Step-by-step tutorial modules
        │   ├── 00-prerequisites.md
        │   ├── 01-understand-multi-agent.md
        │   ├── 02-scaffold-multi-agent.md
        │   ├── 03-configure-agents.md
        │   ├── 04-orchestration-patterns.md
        │   ├── 05-test-locally.md
        │   ├── 06-deploy-to-foundry.md
        │   ├── 07-verify-in-playground.md
        │   └── 08-troubleshooting.md
        └── 📂 PersonalCareerCopilot/ ← Reference solution (multi-agent workflow)
            ├── agent.yaml
            ├── Dockerfile
            ├── main.py
            └── requirements.txt

หมายเหตุ: โฟลเดอร์ agent/ ภายในแต่ละห้องปฏิบัติการคือสิ่งที่ ส่วนขยาย Microsoft Foundry สร้างขึ้นเมื่อคุณรันคำสั่ง Microsoft Foundry: Create a New Hosted Agent จาก Command Palette จากนั้นไฟล์ต่างๆ จะถูกปรับแต่งด้วยคำสั่งและเครื่องมือของเอเย่นต์คุณ ห้องปฏิบัติการ 01 จะเดินคุณผ่านขั้นตอนการสร้างนี้ตั้งแต่ต้น.


เริ่มต้นใช้งาน

1. โคลนที่เก็บข้อมูล

git clone https://github.com/microsoft-foundry/Foundry_Toolkit_for_VSCode_Lab.git
cd Foundry_Toolkit_for_VSCode_Lab

2. ตั้งค่าสภาพแวดล้อมเสมือน Python

python -m venv venv

เปิดใช้งาน:

  • Windows (PowerShell):
    .\venv\Scripts\Activate.ps1
  • macOS / Linux:
    source venv/bin/activate

3. ติดตั้ง dependencies

pip install -r workshop/lab01-single-agent/agent/requirements.txt

4. กำหนดค่าตัวแปรสภาพแวดล้อม

คัดลอกไฟล์ตัวอย่าง .env ภายในโฟลเดอร์ agent แล้วกรอกค่าของคุณ:

cp workshop/lab01-single-agent/agent/.env.example workshop/lab01-single-agent/agent/.env

แก้ไข workshop/lab01-single-agent/agent/.env:

AZURE_AI_PROJECT_ENDPOINT=https://<your-account>.services.ai.azure.com/api/projects/<your-project>
MODEL_DEPLOYMENT_NAME=<your-model-deployment-name>

5. ทำตามห้องปฏิบัติการเวิร์กช็อป

แต่ละห้องปฏิบัติการแยกตัวออกมาเป็นโมดูลของตัวเอง เริ่มที่ ห้องปฏิบัติการ 01 เพื่อเรียนรู้พื้นฐาน จากนั้นไปต่อยัง ห้องปฏิบัติการ 02 สำหรับเวิร์กโฟลว์หลายเอเย่นต์

ห้องปฏิบัติการ 01 - เอเย่นต์เดียว (คำแนะนำเต็มรูปแบบ)

# โมดูล ลิงก์
1 อ่านข้อกำหนดเบื้องต้น 00-prerequisites.md
2 ติดตั้ง Foundry Toolkit & ส่วนขยาย Foundry 01-install-foundry-toolkit.md
3 สร้างโปรเจกต์ Foundry 02-create-foundry-project.md
4 สร้างเอเย่นต์โฮสต์ 03-create-hosted-agent.md
5 กำหนดคำสั่งและสภาพแวดล้อม 04-configure-and-code.md
6 ทดสอบในเครื่อง 05-test-locally.md
7 ปรับใช้ไปยัง Foundry 06-deploy-to-foundry.md
8 ตรวจสอบใน playground 07-verify-in-playground.md
9 แก้ไขปัญหา 08-troubleshooting.md

ห้องปฏิบัติการ 02 - เวิร์กโฟลว์หลายเอเย่นต์ (คำแนะนำเต็มรูปแบบ)

# โมดูล ลิงก์
1 ข้อกำหนดเบื้องต้น (ห้องปฏิบัติการ 02) 00-prerequisites.md
2 เข้าใจสถาปัตยกรรมหลายเอเย่นต์ 01-understand-multi-agent.md
3 สร้างโครงโปรเจกต์หลายเอเย่นต์ 02-scaffold-multi-agent.md
4 กำหนดค่าเอเย่นต์และสภาพแวดล้อม 03-configure-agents.md
5 รูปแบบการประสานงาน 04-orchestration-patterns.md
6 ทดสอบในเครื่อง (หลายเอเย่นต์) 05-test-locally.md
7 ดีพลอยไปยัง Foundry 06-deploy-to-foundry.md
8 ยืนยันใน playground 07-verify-in-playground.md
9 แก้ไขปัญหา (หลายเอเจนต์) 08-troubleshooting.md

ผู้ดูแล

Shivam Goyal
Shivam Goyal


สิทธิ์ที่จำเป็น (อ้างอิงด่วน)

สถานการณ์ บทบาทที่จำเป็น
สร้างโปรเจกต์ Foundry ใหม่ Azure AI Owner บนทรัพยากร Foundry
ดีพลอยไปยังโปรเจกต์ที่มีอยู่ (ทรัพยากรใหม่) Azure AI Owner + Contributor บน subscription
ดีพลอยไปยังโปรเจกต์ที่ตั้งค่าเสร็จสมบูรณ์ Reader บนบัญชี + Azure AI User บนโปรเจกต์

สำคัญ: บทบาท Azure Owner และ Contributor มีสิทธิ์แค่ การจัดการ ไม่รวมสิทธิ์ การพัฒนา (การกระทำข้อมูล) คุณจะต้องใช้ Azure AI User หรือ Azure AI Owner สำหรับการสร้างและดีพลอยเอเจนต์


เอกสารอ้างอิง


ใบอนุญาต

MIT


ข้อจำกัดความรับผิดชอบ:
เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษาด้วย AI Co-op Translator แม้เราจะพยายามให้ความถูกต้องสูงสุด โปรดทราบว่าการแปลอัตโนมัติอาจประกอบด้วยข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาต้นฉบับเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ ขอแนะนำให้ใช้บริการแปลโดยมนุษย์มืออาชีพ เราจะไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดขึ้นจากการใช้การแปลฉบับนี้