ai-agents-for-beginners

Menjelajahi Kerangka Kerja Agen AI

(Klik gambar di atas untuk melihat video pelajaran ini)

Jelajahi Kerangka Kerja Agen AI

Kerangka kerja agen AI adalah platform perangkat lunak yang dirancang untuk menyederhanakan pembuatan, penyebaran, dan pengelolaan agen AI. Kerangka kerja ini menyediakan pengembang dengan komponen yang sudah dibuat sebelumnya, abstraksi, dan alat yang mempermudah pengembangan sistem AI yang kompleks.

Kerangka kerja ini membantu pengembang fokus pada aspek unik dari aplikasi mereka dengan menyediakan pendekatan standar untuk tantangan umum dalam pengembangan agen AI. Mereka meningkatkan skalabilitas, aksesibilitas, dan efisiensi dalam membangun sistem AI.

Pendahuluan

Pelajaran ini akan membahas:

Tujuan Pembelajaran

Tujuan dari pelajaran ini adalah membantu Anda memahami:

Apa itu Kerangka Kerja Agen AI dan apa yang memungkinkan pengembang lakukan?

Kerangka kerja AI tradisional dapat membantu Anda mengintegrasikan AI ke dalam aplikasi Anda dan membuat aplikasi tersebut lebih baik dengan cara berikut:

Semua itu terdengar hebat, jadi mengapa kita perlu Kerangka Kerja Agen AI?

Kerangka kerja Agen AI mewakili sesuatu yang lebih dari sekadar kerangka kerja AI. Mereka dirancang untuk memungkinkan pembuatan agen cerdas yang dapat berinteraksi dengan pengguna, agen lain, dan lingkungan untuk mencapai tujuan tertentu. Agen ini dapat menunjukkan perilaku otonom, mengambil keputusan, dan beradaptasi dengan kondisi yang berubah. Mari kita lihat beberapa kemampuan utama yang diaktifkan oleh Kerangka Kerja Agen AI:

Jadi, singkatnya, agen memungkinkan Anda melakukan lebih banyak, membawa otomasi ke tingkat berikutnya, untuk menciptakan sistem yang lebih cerdas yang dapat beradaptasi dan belajar dari lingkungan mereka.

Bagaimana cara cepat membuat prototipe, iterasi, dan meningkatkan kemampuan agen?

Ini adalah lanskap yang bergerak cepat, tetapi ada beberapa hal yang umum di sebagian besar Kerangka Kerja Agen AI yang dapat membantu Anda membuat prototipe dan iterasi dengan cepat, yaitu komponen modul, alat kolaboratif, dan pembelajaran waktu nyata. Mari kita selami ini:

Gunakan Komponen Modular

SDK seperti Microsoft Agent Framework menawarkan komponen yang sudah dibuat seperti konektor AI, definisi alat, dan manajemen agen.

Bagaimana tim dapat menggunakan ini: Tim dapat dengan cepat merakit komponen ini untuk membuat prototipe fungsional tanpa memulai dari nol, memungkinkan eksperimen dan iterasi yang cepat.

Bagaimana cara kerjanya dalam praktik: Anda dapat menggunakan parser yang sudah dibuat untuk mengekstrak informasi dari masukan pengguna, modul memori untuk menyimpan dan mengambil data, dan generator prompt untuk berinteraksi dengan pengguna, semuanya tanpa harus membangun komponen ini dari awal.

Contoh kode. Mari kita lihat contoh bagaimana Anda dapat menggunakan Microsoft Agent Framework dengan FoundryChatClient untuk membuat model merespons masukan pengguna dengan pemanggilan alat:

# Contoh Microsoft Agent Framework Python

import asyncio
import os

from agent_framework import tool
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential


# Definisikan fungsi alat contoh untuk memesan perjalanan
@tool(approval_mode="never_require")
def book_flight(date: str, location: str) -> str:
    """Book travel given location and date."""
    return f"Travel was booked to {location} on {date}"


async def main():
    provider = FoundryChatClient(
        project_endpoint=os.environ["AZURE_AI_PROJECT_ENDPOINT"],
        model=os.environ["AZURE_AI_MODEL_DEPLOYMENT_NAME"],
        credential=AzureCliCredential(),
    )
    agent = provider.as_agent(
        name="travel_agent",
        instructions="Help the user book travel. Use the book_flight tool when ready.",
        tools=[book_flight],
    )

    response = await agent.run("I'd like to go to New York on January 1, 2025")
    print(response)
    # Contoh output: Penerbangan Anda ke New York pada 1 Januari 2025 telah berhasil dipesan. Selamat jalan! ✈️🗽


if __name__ == "__main__":
    asyncio.run(main())

Apa yang Anda lihat dari contoh ini adalah bagaimana Anda dapat memanfaatkan parser yang sudah dibuat untuk mengekstrak informasi kunci dari masukan pengguna, seperti asal, tujuan, dan tanggal permintaan pemesanan penerbangan. Pendekatan modular ini memungkinkan Anda fokus pada logika tingkat tinggi.

Manfaatkan Alat Kolaboratif

Kerangka kerja seperti Microsoft Agent Framework memfasilitasi pembuatan banyak agen yang dapat bekerja sama.

Bagaimana tim dapat menggunakan ini: Tim dapat merancang agen dengan peran dan tugas spesifik, memungkinkan mereka menguji dan menyempurnakan alur kerja kolaboratif serta meningkatkan efisiensi sistem secara keseluruhan.

Bagaimana cara kerjanya dalam praktik: Anda dapat membuat tim agen di mana setiap agen memiliki fungsi khusus, seperti pengambilan data, analisis, atau pengambilan keputusan. Agen-agen ini dapat berkomunikasi dan berbagi informasi untuk mencapai tujuan bersama, seperti menjawab pertanyaan pengguna atau menyelesaikan tugas.

Contoh kode (Microsoft Agent Framework):

# Membuat beberapa agen yang bekerja bersama menggunakan Microsoft Agent Framework

import os
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential

provider = FoundryChatClient(
    project_endpoint=os.environ["AZURE_AI_PROJECT_ENDPOINT"],
    model=os.environ["AZURE_AI_MODEL_DEPLOYMENT_NAME"],
    credential=AzureCliCredential(),
)

# Agen Pengambilan Data
agent_retrieve = provider.as_agent(
    name="dataretrieval",
    instructions="Retrieve relevant data using available tools.",
    tools=[retrieve_tool],
)

# Agen Analisis Data
agent_analyze = provider.as_agent(
    name="dataanalysis",
    instructions="Analyze the retrieved data and provide insights.",
    tools=[analyze_tool],
)

# Menjalankan agen secara berurutan pada sebuah tugas
retrieval_result = await agent_retrieve.run("Retrieve sales data for Q4")
analysis_result = await agent_analyze.run(f"Analyze this data: {retrieval_result}")
print(analysis_result)

Apa yang Anda lihat pada kode sebelumnya adalah bagaimana Anda dapat membuat tugas yang melibatkan beberapa agen bekerja sama untuk menganalisis data. Setiap agen melakukan fungsi khusus, dan tugas dieksekusi dengan mengoordinasikan agen untuk mencapai hasil yang diinginkan. Dengan membuat agen khusus dengan peran khusus, Anda dapat meningkatkan efisiensi dan kinerja tugas.

Belajar secara Real-Time

Kerangka kerja canggih menyediakan kemampuan untuk pemahaman dan adaptasi konteks secara real-time.

Bagaimana tim dapat menggunakan ini: Tim dapat menerapkan loop umpan balik di mana agen belajar dari interaksi dan menyesuaikan perilaku mereka secara dinamis, menghasilkan peningkatan dan penyempurnaan kemampuan secara terus-menerus.

Bagaimana cara kerjanya dalam praktik: Agen dapat menganalisis umpan balik pengguna, data lingkungan, dan hasil tugas untuk memperbarui basis pengetahuan mereka, menyesuaikan algoritme pengambilan keputusan, dan meningkatkan kinerja seiring waktu. Proses pembelajaran iteratif ini memungkinkan agen beradaptasi dengan kondisi yang berubah dan preferensi pengguna, meningkatkan efektivitas sistem secara keseluruhan.

Apa perbedaan antara Microsoft Agent Framework dan Microsoft Foundry Agent Service?

Ada banyak cara untuk membandingkan pendekatan ini, tetapi mari kita lihat beberapa perbedaan utama dari segi desain, kemampuan, dan kasus penggunaan yang ditargetkan:

Microsoft Agent Framework (MAF)

Microsoft Agent Framework menyediakan SDK yang ringkas untuk membangun agen AI menggunakan FoundryChatClient. Ini memungkinkan pengembang membuat agen yang memanfaatkan model Azure OpenAI dengan pemanggilan alat bawaan, manajemen percakapan, dan keamanan tingkat perusahaan melalui identitas Azure.

Kasus Penggunaan: Membangun agen AI siap produksi dengan penggunaan alat, alur kerja multi-langkah, dan skenario integrasi perusahaan.

Berikut adalah beberapa konsep inti penting dari Microsoft Agent Framework:

Microsoft Foundry Agent Service

Microsoft Foundry Agent Service adalah tambahan yang lebih baru, diperkenalkan pada Microsoft Ignite 2024. Ini memungkinkan pengembangan dan penyebaran agen AI dengan model yang lebih fleksibel, seperti memanggil langsung LLM open-source seperti Llama 3, Mistral, dan Cohere.

Microsoft Foundry Agent Service menyediakan mekanisme keamanan perusahaan yang lebih kuat dan metode penyimpanan data, menjadikannya cocok untuk aplikasi perusahaan.

Ini bekerja langsung dengan Microsoft Agent Framework untuk membangun dan menyebarkan agen.

Layanan ini saat ini dalam Pratinjau Publik dan mendukung Python dan C# untuk membangun agen.

Dengan menggunakan Microsoft Foundry Agent Service Python SDK, kita dapat membuat agen dengan alat yang ditentukan pengguna:

import asyncio
from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient

# Definisikan fungsi alat
def get_specials() -> str:
    """Provides a list of specials from the menu."""
    return """
    Special Soup: Clam Chowder
    Special Salad: Cobb Salad
    Special Drink: Chai Tea
    """

def get_item_price(menu_item: str) -> str:
    """Provides the price of the requested menu item."""
    return "$9.99"


async def main() -> None:
    credential = DefaultAzureCredential()
    project_client = AIProjectClient.from_connection_string(
        credential=credential,
        conn_str="your-connection-string",
    )

    agent = project_client.agents.create_agent(
        model="gpt-5-mini",
        name="Host",
        instructions="Answer questions about the menu.",
        tools=[get_specials, get_item_price],
    )

    thread = project_client.agents.create_thread()

    user_inputs = [
        "Hello",
        "What is the special soup?",
        "How much does that cost?",
        "Thank you",
    ]

    for user_input in user_inputs:
        print(f"# User: '{user_input}'")
        message = project_client.agents.create_message(
            thread_id=thread.id,
            role="user",
            content=user_input,
        )
        run = project_client.agents.create_and_process_run(
            thread_id=thread.id, agent_id=agent.id
        )
        messages = project_client.agents.list_messages(thread_id=thread.id)
        print(f"# Agent: {messages.data[0].content[0].text.value}")


if __name__ == "__main__":
    asyncio.run(main())

Konsep inti

Microsoft Foundry Agent Service memiliki konsep inti berikut:

Kasus Penggunaan: Microsoft Foundry Agent Service dirancang untuk aplikasi perusahaan yang memerlukan penyebaran agen AI yang aman, skalabel, dan fleksibel.

Apa perbedaan antara pendekatan ini?

Memang terdengar ada tumpang tindih, tetapi ada beberapa perbedaan utama dari segi desain, kemampuan, dan kasus penggunaan yang ditargetkan:

Masih bingung memilih yang mana?

Kasus Penggunaan

Mari kita lihat apakah kami bisa membantu Anda dengan membahas beberapa kasus penggunaan umum:

T: Saya membangun aplikasi agen AI produksi dan ingin memulai dengan cepat

J: Microsoft Agent Framework adalah pilihan tepat. Menyediakan API Python yang sederhana melalui FoundryChatClient yang memungkinkan Anda mendefinisikan agen dengan alat dan instruksi hanya dengan beberapa baris kode.

T: Saya memerlukan penyebaran tingkat perusahaan dengan integrasi Azure seperti Search dan eksekusi kode

J: Microsoft Foundry Agent Service adalah yang paling cocok. Ini adalah layanan platform yang menyediakan kemampuan bawaan untuk beberapa model, Azure AI Search, Bing Search, dan Azure Functions. Memudahkan membangun agen Anda di Foundry Portal dan menyebarkannya secara skala.

T: Saya masih bingung, beri saya satu opsi saja

J: Mulailah dengan Microsoft Agent Framework untuk membangun agen Anda, lalu gunakan Microsoft Foundry Agent Service saat Anda perlu menyebarkan dan menskalakan mereka di produksi. Pendekatan ini memungkinkan Anda iterasi cepat pada logika agen sambil memiliki jalur jelas ke penyebaran perusahaan.

Mari kita rangkum perbedaan kunci dalam sebuah tabel:

Kerangka Kerja Fokus Konsep Inti Kasus Penggunaan
Microsoft Agent Framework SDK agen yang ringkas dengan pemanggilan alat Agen, Alat, Identitas Azure Membangun agen AI, penggunaan alat, alur kerja multi-langkah
Microsoft Foundry Agent Service Model fleksibel, keamanan perusahaan, Generasi kode, Pemanggilan alat Modularitas, Kolaborasi, Orkestrasi Proses Penyebaran agen AI yang aman, skalabel, dan fleksibel

Bisakah saya mengintegrasikan alat ekosistem Azure saya yang sudah ada langsung, atau saya perlu solusi mandiri?

Jawabannya adalah ya, Anda dapat mengintegrasikan alat ekosistem Azure yang sudah ada langsung dengan Microsoft Foundry Agent Service terutama, karena layanan ini dibangun untuk bekerja mulus dengan layanan Azure lainnya. Anda bisa misalnya mengintegrasikan Bing, Azure AI Search, dan Azure Functions. Ada juga integrasi mendalam dengan Microsoft Foundry.

Microsoft Agent Framework juga terintegrasi dengan layanan Azure melalui FoundryChatClient dan identitas Azure, memungkinkan Anda memanggil layanan Azure langsung dari alat agen Anda.

Contoh Kode

Punya Pertanyaan Lebih Lanjut tentang AI Agent Frameworks?

Bergabunglah dengan Microsoft Foundry Discord untuk bertemu dengan pembelajar lain, mengikuti jam kantor, dan mendapatkan jawaban untuk pertanyaan AI Agents Anda.

Referensi

Pelajaran Sebelumnya

Pengenalan AI Agents dan Kasus Penggunaan Agen

Pelajaran Selanjutnya

Memahami Pola Desain Agentik


Penafian: Dokumen ini telah diterjemahkan menggunakan layanan terjemahan AI Co-op Translator. Meskipun kami berupaya untuk mencapai akurasi, harap diketahui bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang sah. Untuk informasi penting, disarankan menggunakan terjemahan profesional oleh manusia. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.