Mengembangkan agen AI di Visual Studio Code

Selesai

Tip

Lihat tab Teks dan gambar untuk detail selengkapnya!

Visual Studio Code menyediakan lingkungan pengembangan yang familier untuk membangun agen yang menggunakan Microsoft Foundry. Anda dapat bekerja secara visual dengan ekstensi Foundry Toolkit, menulis kode agen dengan Foundry SDK atau Microsoft Agent Framework, dan menggunakan GitHub Copilot untuk membantu Anda mengembangkan dan menguji solusi Anda.

Gunakan Foundry Toolkit

Ekstensi Foundry Toolkit terhubung Visual Studio Code ke proyek dan sumber daya Foundry Anda. Ini menyediakan alat untuk membuat, mengelola, menguji, dan menyebarkan agen tanpa mengharuskan Anda meninggalkan editor.

Pembuat agen menyediakan antarmuka visual tempat Anda dapat mengonfigurasi model, instruksi, dan alat agen. Anda kemudian dapat memasukkan prompt di panel obrolan dan meninjau respons selagi Anda menyempurnakan agen.

Cuplikan layar antarmuka penyusun agen Foundry Toolkit di Visual Studio Code.

Untuk agen dan alur kerja berbasis kode, toolkit juga dapat membantu Anda membuat proyek dari templat, menguji dan men-debugnya secara lokal, memeriksa jejak, dan menyebarkannya sebagai agen yang dihosting di Foundry.

Mengembangkan agen dengan kode

Mengembangkan agen dalam kode memberi Anda kontrol langsung atas definisi dan siklus hidupnya. Dua pendekatan umum adalah membuat agen prompt dengan Foundry Agent Service atau untuk membangun agen dengan SDK seperti Microsoft Agent Framework, dan menghostingnya dalam kontainer di Foundry.

Buat agen prompt dengan Foundry Agent Service

Foundry SDK menyediakan AIProjectClient untuk menangani aset dalam proyek Foundry. Anda dapat menggunakan operasi agen milik klien untuk membuat agen prompt bernama dan berversi yang disimpan secara persisten di Foundry Agent Service.

Contoh berikut mengautentikasi dengan Microsoft Entra ID, menyambungkan ke proyek Foundry, dan membuat versi agen. Definisi agen menentukan model, instruksi, dan alat pencarian web yang disebarkan. Kode kemudian mendapatkan klien yang kompatibel dengan OpenAI yang terikat ke agen dan menggunakannya untuk mengirim permintaan.

from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import PromptAgentDefinition, WebSearchTool

# Create client to call Foundry API
project = AIProjectClient(
    endpoint="https://ai-resrce.services.ai.azure.com/api/projects/ai-project", # Project endpoint
    credential=DefaultAzureCredential())

# Create an agent with a web search tool
agent = project.agents.create_version(
    agent_name="computinghistorycode",
    definition=PromptAgentDefinition(
        model="gpt-5-mini",
        instructions="You are a helpful expert on computing history",
        tools=[WebSearchTool()]))

# Test the agent with a prompt
openai_client = project.get_openai_client(agent_name="computinghistorycode")
response = openai_client.responses.create(input="Who was Ada Lovelace?")
print(response.output_text)

Karena agen disimpan sebagai aset versi di Foundry, aplikasi lain dapat merujuk ke agen berdasarkan nama dan menggunakan definisi terkelolanya. Perubahan pada model, instruksi, atau alat dapat dicakup dalam versi-versi berikutnya.

Membuat agen dengan Microsoft Agent Framework

Microsoft Agent Framework adalah kerangka kerja pengembangan sumber terbuka untuk membangun agen dan alur kerja multi-agen di Python atau .NET. Ini memberikan abstraksi yang konsisten untuk menentukan agen, menambahkan alat, mengelola percakapan, dan mengatur perilaku agen yang lebih kompleks.

Contoh berikutnya menggunakan FoundryChatClient untuk menyambungkan ke model yang disebarkan dalam proyek Foundry. Aplikasi menentukan instruksi dan alat bantu agen, dan Agent Framework menangani interaksi dengan endpoint Foundry Responses.

import asyncio
from azure.identity import AzureCliCredential
from agent_framework import Agent
from agent_framework.foundry import FoundryChatClient

# Create client for a FoundryChat agent
foundry_client = FoundryChatClient(
    project_endpoint="https://ai-resrce.services.ai.azure.com/api/projects/ai-project", # Project endpoint
    model="gpt-5-mini",
    credential=AzureCliCredential()
 )

# Create an agent with a web search tool
agent = Agent(
        client=foundry_client,
        instructions="You are a helpful expert on computing history",
        tools=[FoundryChatClient.get_web_search_tool()]

 )

# Test the agent with a prompt
async def main():
    result = await agent.run("Who was Ada Lovelace?")
    print(f"Agent: {result}")

asyncio.run(main())

Dalam pendekatan ini, definisi agen ada dalam aplikasi dan dibuat saat kode berjalan. Pola agen ephemeral ini berguna ketika Anda ingin definisi dan siklus hidupnya tetap dengan kode aplikasi Anda. Untuk membuat agen berbasis kode tersedia melalui titik akhir terkelola yang persisten di Foundry, Anda dapat mengemas dan menyebarkannya sebagai agen yang dihosting. Foundry Toolkit menyediakan dukungan pengembangan dan penyebaran untuk alur kerja ini.

Mengembangkan dengan GitHub Copilot

Visual Studio Code juga terintegrasi dengan GitHub Copilot, yang dapat membantu Anda memahami, membuat, dan memodifikasi kode agen Anda. Dalam Copilot Chat, Anda dapat berkolaborasi dengan agen pengodean yang memeriksa ruang kerja Anda, mengusulkan pendekatan, mengedit file, menjalankan perintah, dan merespons hasil build atau pengujian.

Tangkapan layar GitHub Copilot di Visual Studio Code.

Misalnya, Anda dapat meminta Copilot untuk menambahkan alat ke agen, meningkatkan instruksinya, membuat pengujian, atau menyelidiki respons yang tidak terduga. Copilot menunjukkan perubahan yang dilakukannya sehingga Anda dapat meninjaunya, menjalankan agen, dan menguji responsnya sebelum menerima perubahan ke basis kode Anda. Anda tetap bertanggung jawab untuk memvalidasi bahwa agen yang dihasilkan berperilaku aman dan sebagaimana dimaksud.