ai-agents-for-beginners

Menjelajahi Kerangka Agen AI

(Klik gambar di atas untuk menonton video pelajaran ini)

Jelajahi Kerangka Agen AI

Kerangka kerja agen AI adalah platform perangkat lunak yang dirancang untuk menyederhanakan pembuatan, penyebaran, dan pengelolaan agen AI. Kerangka kerja ini menyediakan komponen pra-bangun, abstraksi, dan alat yang memudahkan pengembangan sistem AI yang kompleks.

Kerangka kerja ini membantu pengembang memusatkan perhatian 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.

Pengenalan

Pelajaran ini akan membahas:

Tujuan pembelajaran

Tujuan pelajaran ini adalah untuk membantu Anda memahami:

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

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

Kedengarannya hebat, jadi mengapa kita membutuhkan Kerangka Agen AI?

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

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

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

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

Gunakan Komponen Modular

SDK seperti Kerangka Agen Microsoft menawarkan komponen pra-bangun 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 pra-bangun untuk mengekstrak informasi dari input 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 Kerangka Agen Microsoft dengan AzureAIProjectAgentProvider agar model merespons input pengguna dengan pemanggilan alat:

# Contoh Python Microsoft Agent Framework

import asyncio
import os
from typing import Annotated

from agent_framework.azure import AzureAIProjectAgentProvider
from azure.identity import AzureCliCredential


# Definisikan fungsi alat contoh untuk memesan perjalanan
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 = AzureAIProjectAgentProvider(credential=AzureCliCredential())
    agent = await provider.create_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 keluaran: Penerbangan Anda ke New York pada 1 Januari 2025 telah berhasil dipesan. Selamat jalan! ✈️🗽


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

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

Manfaatkan Alat Kolaboratif

Kerangka seperti Kerangka Agen Microsoft memfasilitasi pembuatan beberapa agen yang dapat bekerja bersama.

Bagaimana tim dapat menggunakan ini: Tim dapat merancang agen dengan peran dan tugas khusus, memungkinkan mereka menguji dan menyempurnakan alur kerja kolaboratif dan 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 kueri pengguna atau menyelesaikan tugas.

Contoh kode (Kerangka Agen Microsoft):

# Membuat beberapa agen yang bekerja sama menggunakan Microsoft Agent Framework

import os
from agent_framework.azure import AzureAIProjectAgentProvider
from azure.identity import AzureCliCredential

provider = AzureAIProjectAgentProvider(credential=AzureCliCredential())

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

# Agen Analisis Data
agent_analyze = await provider.create_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 dalam kode sebelumnya adalah bagaimana Anda dapat membuat tugas yang melibatkan beberapa agen yang bekerja sama untuk menganalisis data. Setiap agen melakukan fungsi tertentu, dan tugas dieksekusi dengan mengoordinasikan agen untuk mencapai hasil yang diinginkan. Dengan membuat agen khusus dengan peran yang terfokus, Anda dapat meningkatkan efisiensi dan kinerja tugas.

Belajar secara Waktu Nyata

Kerangka lanjutan menyediakan kemampuan untuk pemahaman konteks waktu nyata dan adaptasi.

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 berkelanjutan.

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

Apa perbedaan antara Kerangka Agen Microsoft dan Layanan Agen AI Azure?

Ada banyak cara untuk membandingkan pendekatan ini, tetapi mari kita lihat beberapa perbedaan kunci dalam hal desain, kemampuan, dan kasus penggunaan yang ditargetkan:

Kerangka Agen Microsoft (MAF)

Kerangka Agen Microsoft menyediakan SDK yang disederhanakan untuk membangun agen AI menggunakan AzureAIProjectAgentProvider. 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 Kerangka Agen Microsoft:

Layanan Agen AI Azure

Layanan Agen AI Azure adalah tambahan yang lebih baru, diperkenalkan di Microsoft Ignite 2024. Layanan ini memungkinkan pengembangan dan penyebaran agen AI dengan model yang lebih fleksibel, seperti memanggil langsung LLM open-source seperti Llama 3, Mistral, dan Cohere.

Layanan Agen AI Azure menyediakan mekanisme keamanan perusahaan yang lebih kuat dan metode penyimpanan data, menjadikannya cocok untuk aplikasi perusahaan.

Ini bekerja langsung bersama Kerangka Agen Microsoft untuk membangun dan menyebarkan agen.

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

Dengan menggunakan SDK Python Layanan Agen AI Azure, kita dapat membuat agen dengan alat yang didefinisikan pengguna:

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

# Mendefinisikan 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-4o-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

Layanan Agen AI Azure memiliki konsep inti berikut:

Kasus Penggunaan: Layanan Agen AI Azure dirancang untuk aplikasi perusahaan yang membutuhkan penyebaran agen AI yang aman, skalabel, dan fleksibel.

Apa perbedaan antara pendekatan ini?

Memang terdengar ada tumpang tindih, tetapi ada beberapa perbedaan kunci dalam hal desain, kemampuan, dan kasus penggunaan yang ditargetkan:

Masih ragu mana yang harus dipilih?

Kasus Penggunaan

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

Q: Saya membangun aplikasi agen AI produksi dan ingin mulai dengan cepat

A: Kerangka Agen Microsoft adalah pilihan yang bagus. Ini menyediakan API Python yang sederhana melalui AzureAIProjectAgentProvider yang memungkinkan Anda mendefinisikan agen dengan alat dan instruksi hanya dalam beberapa baris kode.

Q: Saya membutuhkan penyebaran kelas-perusahaan dengan integrasi Azure seperti Search dan eksekusi kode

A: Layanan Agen AI Azure adalah yang paling cocok. Ini adalah layanan platform yang menyediakan kapabilitas bawaan untuk berbagai model, Azure AI Search, Bing Search dan Azure Functions. Ini memudahkan membangun agen Anda di Portal Foundry dan menyebarkannya dalam skala besar.

Q: Saya masih bingung, beri saya satu opsi saja

A: Mulailah dengan Kerangka Agen Microsoft untuk membangun agen Anda, lalu gunakan Layanan Agen AI Azure ketika Anda perlu menyebarkan dan menskalakan mereka di produksi. Pendekatan ini memungkinkan Anda beriterasi dengan cepat pada logika agen sambil memiliki jalur yang jelas menuju penyebaran perusahaan.

Mari kita rangkum perbedaan kunci dalam sebuah tabel:

Framework Fokus Konsep Inti Kasus Penggunaan
Microsoft Agent Framework SDK agen yang disederhanakan dengan pemanggilan alat Agen, Alat, Identitas Azure Membangun agen AI, penggunaan alat, alur kerja multi-langkah
Azure AI Agent Service Model yang fleksibel, keamanan perusahaan, Pembuatan 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 secara langsung, atau apakah saya memerlukan solusi mandiri?

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

The Microsoft Agent Framework also integrates with Azure services through AzureAIProjectAgentProvider and Azure identity, letting you call Azure services directly from your agent tools.

Contoh Kode

Punya Pertanyaan Lebih Lanjut tentang AI Agent Frameworks?

Bergabunglah dengan Microsoft Foundry Discord untuk bertemu pembelajar lain, menghadiri jam konsultasi dan mendapatkan jawaban atas pertanyaan AI Agents Anda.

Referensi

Pelajaran Sebelumnya

Pengantar Agen AI dan Kasus Penggunaan Agen

Pelajaran Berikutnya

Memahami Pola Desain Agen


Penafian: Dokumen ini telah diterjemahkan menggunakan layanan terjemahan AI Co-op Translator. Meskipun kami berupaya untuk memberikan terjemahan yang akurat, harap diingat bahwa terjemahan otomatis dapat mengandung kesalahan atau ketidaktepatan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang berwenang. Untuk informasi yang bersifat kritis, disarankan menggunakan terjemahan profesional oleh penerjemah manusia. Kami tidak bertanggung jawab atas kesalahpahaman atau salah tafsir yang timbul akibat penggunaan terjemahan ini.