Lewati ke konten utama

Tutorial AutoGen: Membangun Aplikasi AI Multi-Agen

Pelajari cara membangun aplikasi AI multi-agen dengan Autogen Studio, Autogen AgentChat, Autogen Core, dan Autogen Extensions.
Diperbarui 28 Sep 2026  · 7 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

AI modern dimulai dengan Model Bahasa Besar (LLM), kemudian hadir function calling untuk keluaran terstruktur, dilanjutkan pengembangan agen dan alat, yang mengarah pada terciptanya server MCP. Saat ini, fokusnya adalah pada sistem multi-agen. Perusahaan sedang mencari solusi untuk membangun sistem otomatis cerdas menggunakan berbagai alat, dengan AutoGen sebagai yang paling populer di antaranya.

Dalam tutorial ini, kita akan membahas AutoGen, ekosistemnya, berbagai use case-nya, dan cara menggunakan setiap komponen di dalam ekosistem tersebut. Perlu dicatat bahwa AutoGen bukan sekadar alat orkestrasi model bahasa seperti LangChain; kemampuannya jauh melampaui itu.

Jika Anda baru mengenal AI, mohon ikuti jalur keterampilan AI Fundamentals terlebih dahulu sebelum melanjutkan tutorial ini. Anda juga dapat mempelajari Agentic AI dalam artikel terpisah. 

Apa itu AutoGen?

AutoGen adalah kerangka kerja open-source yang dirancang untuk membuat aplikasi AI multi-agen yang dapat beroperasi secara semi-otomatis maupun sepenuhnya otomatis. Kerangka ini menyediakan alat bagi pengembang untuk membangun sistem di mana banyak agen AI dapat berkomunikasi, bekerja sama, dan menyelesaikan tugas bersama.

AutoGen mendukung beragam use case, termasuk alur kerja otomatis, kolaborasi multi-agen, dan penyelesaian tugas dinamis. Ini memungkinkan pengembang membuat sistem di mana agen dapat berinteraksi melalui bahasa alami, mengeksekusi kode, mengambil informasi, dan beradaptasi dengan alur kerja yang kompleks.

Ekosistem AutoGen dibagi menjadi empat komponen utama:

  1. AutoGen Studio: Antarmuka grafis tanpa kode untuk membangun dan menguji alur kerja multi-agen.
  2. AutoGent AgentChat: API yang disederhanakan untuk membangun aplikasi percakapan satu dan multi-agen.
  3. AutoGen Core: API fondasi untuk membangun sistem AI multi-agen yang dapat diskalakan. 
  4. AutoGen Extension: Pustaka ekstensi pihak pertama dan ketiga yang memperluas kapabilitas kerangka kerja.

AutoGen Ecosystem diagram

Sumber: microsoft/AutoGen

Keunggulan AutoGen terletak pada kemampuannya untuk:

  • Menyederhanakan orkestrasi dan optimasi alur kerja LLM yang kompleks.
  • Meningkatkan kinerja LLM sambil mengatasi keterbatasannya.
  • Memungkinkan pembuatan sistem multi-agen secara mulus yang mengintegrasikan LLM, alat, dan masukan manusia.

Sifatnya yang dapat diperluas dan modular menjadikannya alat yang kuat bagi pengembang lintas industri, dari keuangan dan kesehatan hingga pendidikan dan robotika.

Baca Memahami Agen AI: Masa Depan Sistem Otonom untuk mempelajari cara memanfaatkan agen AI demi inovasi dan efisiensi dalam proyek Anda.

Mulai Menggunakan Ekosistem AutoGen

Di bagian ini, kita akan menelusuri empat komponen utama ekosistem AutoGen dengan memasang dan menjalankannya secara lokal.

1. AutoGen Studio

AutoGen Studio adalah antarmuka low-code yang dirancang untuk membantu Anda membuat prototipe agen AI dengan cepat. Ia menyediakan antarmuka drag-and-drop yang ramah pengguna untuk membuat sistem multi-agen dan mengujinya secara real time.

1. Untuk memasang Studio, gunakan perintah pip.

pip install -U AutoGenstudio

2. Setelah terpasang, Anda dapat meluncurkan UI AutoGen Studio dengan menentukan port dan direktori aplikasi tempat semua agen dan templat akan disimpan. 

AutoGenstudio ui --port 8080 --appdir ./app

Setelah menjalankan perintah, Anda akan melihat keluaran berikut di terminal:

INFO  [alembic.runtime.migration] Context impl SQLiteImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
2025-05-09 15:15:22.825 | INFO     | AutoGenstudio.web.app:lifespan:39 - Application startup complete. Navigate to http://127.0.0.1:8080

3. Buka http://127.0.0.1:8080 di peramban Anda untuk mengakses dasbor AutoGen Studio.

Setelah aplikasi berjalan, Anda akan disambut dengan antarmuka pengguna yang bersih dan intuitif.

AutoGen Studio menyediakan beberapa fitur utama untuk membantu Anda membangun dan mengelola alur kerja multi-agen:

  1. Team Builder: Antarmuka drag-and-drop untuk membuat tim agen.
  2. Playground: Lingkungan interaktif untuk menguji dan menjalankan alur kerja agen.
  3. Gallery: Pusat untuk menemukan dan mengimpor komponen buatan komunitas.
  4. Labs: Fitur eksperimental di AutoGen Studio yang memungkinkan pengguna mengeksplorasi alur kerja lanjutan dan membuat prototipe ide mutakhir.
  5. Deploy: Mengekspor dan menjalankan alur kerja agen sebagai kode Python.

AutogGen Studio

AutoGen Studio adalah aplikasi low-code, artinya Anda dapat membangun alur kerja dengan penulisan kode minimal. Namun, ia juga memberi fleksibilitas untuk menyesuaikan agen dan alur kerja menggunakan kode Python.

Mengedit komponen di AutoGen Studio

2. AutoGen AgentChat

AgentChat adalah kerangka kerja tingkat tinggi untuk membuat alur kerja percakapan multi-agen. Ini menyederhanakan proses membangun aplikasi di mana banyak agen (AI, alat, atau manusia) berkolaborasi untuk menyelesaikan tugas. 

Pertama, pasang paket yang diperlukan:

pip install -U "AutoGen-agentchat" "AutoGen-ext[openai]"

Selanjutnya, kita akan menyiapkan tiga agen—seorang pengguna, seorang coder, dan eksekutor kode—yang berkolaborasi dalam group chat round-robin untuk menghasilkan, mengeksekusi, dan menarasikan kode Python. Sistem ini dirancang untuk memfasilitasi pembuatan dan eksekusi kode dinamis sambil memungkinkan interaksi manusia dan kondisi penghentian.

Untuk contoh ini, kita menggunakan model gpt-4.1-mini untuk pembuatan kode, CodeExecutorAgent untuk eksekusi kode di command line,  dan UserProxyAgent untuk menjaga manusia tetap dalam loop. 

import asyncio
from pathlib import Path

from AutoGen_agentchat.agents import AssistantAgent, CodeExecutorAgent, UserProxyAgent
from AutoGen_agentchat.conditions import TextMentionTermination
from AutoGen_agentchat.teams import RoundRobinGroupChat
from AutoGen_agentchat.ui import Console
from AutoGen_ext.code_executors.local import LocalCommandLineCodeExecutor
from AutoGen_ext.models.openai import OpenAIChatCompletionClient

async def main() -> None:
    model_client = OpenAIChatCompletionClient(model="gpt-4.1-mini")

    coder = AssistantAgent(
        "coder",
        model_client=model_client,
        system_message=(
            "You are a senior engineer. Think step-by-step, then output ONLY runnable "
            "Python inside ```pythonthon``` blocks—no commentary."
        ),
    )

    executor = CodeExecutorAgent(
        "executor",
        model_client=model_client,  # lets it narrate results
        code_executor=LocalCommandLineCodeExecutor(work_dir=Path.cwd() / "runs"),
    )

    user = UserProxyAgent("user")  # human in the loop

    termination = TextMentionTermination("exit", sources=["user"])
    team = RoundRobinGroupChat(
        [user, coder, executor], termination_condition=termination
    )

    try:
        await Console(
            team.run_stream()
        )
    finally:
        await model_client.close()

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

Simpan kode di atas dalam berkas chat_app.py, dan jalankan dengan:

python chat_app.py 

Kita meminta aplikasi Agen untuk menghasilkan kode yang mencetak bintang dalam bentuk segitiga, lalu mengeksekusi kode tersebut. 

Aplikasi berhasil menghasilkan dan mengeksekusi kode, sekaligus menawarkan opsi tambahan. Pengguna dapat mengetik “exit” untuk keluar atau mengajukan pertanyaan lanjutan untuk pengalaman percakapan.

Keluaran: 

Enter your response: Write a Python script that prints stars and run it.
---------- TextMessage (user) ----------
Write a Python script that prints stars and run it.
---------- TextMessage (coder) ----------
# Print a simple star pattern
for i in range(1, 6):
    print('*' * i)
---------- CodeGenerationEvent (executor) ----------
# Print a simple star pattern
for i in range(1, 6):
    print('*' * i)
---------- CodeExecutionEvent (executor) ----------

*

**

***

****

*****

---------- TextMessage (executor) ----------

The star pattern has been printed successfully. If you'd like a different pattern or further modifications, just let me know!

Enter your response:

3. AutoGen Core

AutoGen Core adalah kerangka kerja tingkat rendah yang menyediakan cara kuat untuk membuat dan mengelola sistem multi-agen. 

Dalam contoh ini, kita akan membuat dua agen: Echo Agent yang membalik isi pesan dan Printer Agent yang mencetak isi pesan ke konsol.

pip install "autogen-core"

Komponen yang digunakan dalam aplikasi ini:

  1. Struktur pesan: Kelas Text adalah struktur data sederhana yang menyimpan konten pesan.
  1. Echo Agent: Agen Echo membalik isi pesan apa pun yang diterimanya dan memublikasikan pesan yang sudah dibalik ke topik default menggunakan publish_message.
  1. Printer Agent: Agen Printer mendengarkan pesan dan mencetak isinya ke konsol.
  1. Runtime: SingleThreadedAgentRuntime digunakan untuk mengelola siklus hidup agen dan menangani perutean pesan.
import asyncio
from dataclasses import dataclass

from AutoGen_core import (
    AgentId,
    DefaultTopicId,
    MessageContext,
    RoutedAgent,
    SingleThreadedAgentRuntime,
    default_subscription,
    message_handler,
)

@dataclass
class Text:
    content: str

@default_subscription
class Echo(RoutedAgent):
    def __init__(self) -> None:
        super().__init__("echo")

    @message_handler
    async def handle(self, message: Text, ctx: MessageContext) -> None:  # param must be named 'message'
        await self.publish_message(Text(message.content[::-1]), DefaultTopicId())

@default_subscription
class Printer(RoutedAgent):
    def __init__(self) -> None:
        super().__init__("printer")

    @message_handler
    async def handle(self, message: Text, ctx: MessageContext) -> None:  # param must be named 'message'
        print(message.content)

async def main() -> None:
    rt = SingleThreadedAgentRuntime()
    await Echo.register(rt, "echo", lambda: Echo())
    await Printer.register(rt, "printer", lambda: Printer())
    rt.start()
    await rt.send_message(Text("DataCamp"), AgentId("echo", "default"))
    await rt.stop_when_idle()

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

Simpan kode dalam berkas core_app.py, dan jalankan dengan:

python core_app.py            

Alur Pesan:

  • Sebuah pesan dengan konten "DataCamp" dikirim ke agen Echo.
  • Agen Echo membalik pesan menjadi "pmaCataD" dan memublikasikannya.
  • Agen Printer menerima pesan yang sudah dibalik dan mencetaknya ke konsol.

Keluaran: 

pmaCataD

4. AutoGen Extensions

Kerangka kerja AutoGen Extensions menyediakan ekstensi pihak pertama dan pihak ketiga yang memperluas kapabilitas kerangka kerja. 

Dalam contoh ini, kita akan mendemonstrasikan cara menggunakan agen MultimodalWebSurfer, yang dapat berinteraksi dengan halaman web, melakukan pencarian, dan mengekstrak informasi. 

Sebelum menjalankan contoh, pastikan Anda memasang Playwright:

playwright install 

Cara kerja kodenya: 

  1. Inisialisasi agen: Sebuah agen MultimodalWebSurfer dibuat, yang menggunakan model gpt-4.1-mini dari OpenAI untuk pengambilan keputusan dan sebuah peramban (melalui Playwright) untuk interaksi web.
  2. Penyiapan tim: Agen ditambahkan ke tim RoundRobinGroupChat, yang mengelola alur kerja agen dan membatasi tugas hingga 3 giliran.
  3. Eksekusi tugas: Tim diinstruksikan untuk melakukan tugas: "Buka Google dan cari tentang Abid Ali Awan." Agen membuka peramban, menavigasi ke Google, melakukan pencarian, dan mengekstrak informasi yang relevan.
  4. Streaming keluaran: Aksi agen (misalnya menavigasi ke halaman, mengeklik tautan, mengekstrak metadata) dialirkan ke konsol secara real time.
  5. Pembersihan: Setelah tugas selesai, peramban ditutup untuk melepaskan sumber daya.
import asyncio
from AutoGen_agentchat.ui import Console
from AutoGen_agentchat.teams import RoundRobinGroupChat
from AutoGen_ext.models.openai import OpenAIChatCompletionClient
from AutoGen_ext.agents.web_surfer import MultimodalWebSurfer

async def main() -> None:
    # Define an agent
    web_surfer_agent = MultimodalWebSurfer(
        name="MultimodalWebSurfer",
        model_client=OpenAIChatCompletionClient(model="gpt-4.1-mini"),
    )

    # Define a team
    agent_team = RoundRobinGroupChat([web_surfer_agent], max_turns=3)

    # Run the team and stream messages to the console
    stream = agent_team.run_stream(task="Navigate to Google and search about Abid Ali Awan.")
    await Console(stream)
    # Close the browser controlled by the agent
    await web_surfer_agent.close()

asyncio.run(main())

Simpan kode dalam berkas, web_ext_app.py, dan jalankan dengan:

python web_ext_app.py          

Saat Anda menjalankan aplikasi, interaksi berikut akan terjadi:

                                                           
---------- TextMessage (user) ----------
Navigate to Google and search about Abid Ali Awan.
---------- MultiModalMessage (MultimodalWebSurfer) ----------
I typed 'https://www.google.com' into the browser address bar.

The web browser is open to the page [Google](https://www.google.com/).
The viewport shows 100% of the webpage, and is positioned at the top of the page
The following text is visible in the viewport:

Gmail
Images
Sign in
Google offered in:
اردو
پښتو
سنڌيPakistan
About
Advertising
Business
 How Search works
Privacy
Terms
Settings
Google recommends using Chrome
Try a fast, secure browser with updates built in
Don't switch
Yes

The following metadata was extracted from the webpage:

{
    "microdata": [
        {
            "itemType": "http://schema.org/WebPage",
            "image": "/images/branding/googleg/1x/googleg_standard_color_128dp.png"
        }
    ],
    "meta_tags": {
        "referrer": "origin"
    }
}

Here is a screenshot of the page.
<image>
---------- MultiModalMessage (MultimodalWebSurfer) ----------
I clicked 'Sign in'.

The web browser is open to the page [Sign in - Google Accounts](https://accounts.google.com/v3/signin/identifier?continue=https%3A%2F%2Fwww.google.com%2F&ec=futura_exp_og_so_72776762_e&hl=en&ifkv=ASKV5MhAzFZnwDH-Aw10tuqQN1ppsY8OZ2-OJ3YavFHXMDlX9iTddg1d_k78ZZ0SogFUivcY7Td0Hg&passive=true&flowName=GlifWebSignIn&flowEntry=ServiceLogin&dsh=S1980923188%3A1746809726624486).
The viewport shows 100% of the webpage, and is positioned at the top of the page
The following text is visible in the viewport:

Sign inUse your Google AccountEmail or phone
Forgot email?
Not your computer? Use a private browsing window to sign in.
Learn more about using Guest modeNext
Create account
English (United States)
Help
Privacy
Terms
Sign in Use your Google Account

The following metadata was extracted from the webpage:

{
    "meta_tags": {
        "referrer": "origin",
        "chrome": "nointentdetection",
        "viewport": "width=device-width, initial-scale=1",
        "description": ""
    }
}

Here is a screenshot of the page.
<image>
---------- TextMessage (MultimodalWebSurfer) ----------
Please provide the email or phone number you want to use to sign in, or let me know if you want to create a new account or need help with something else on this page.

Mirip dengan AutoGen, CrewAI juga merupakan kerangka kerja favorit untuk membangun alur kerja agentic. Ikuti tutorial CrewAI: Panduan dengan Contoh Sistem Multi Agen AI untuk mempelajari lebih lanjut.

Use Case AutoGen

AutoGen membuka banyak kemungkinan untuk menciptakan sistem cerdas multi-agen. Berikut beberapa use case paling menonjol dari ekosistem AutoGen:

  1. Pembuatan, eksekusi, dan debugging kode: Mengotomatiskan tugas pengodean, mengurangi kesalahan, dan meningkatkan efisiensi.
  2. Kolaborasi multi-agen: Memungkinkan kerja tim antaragen untuk menyelesaikan tugas kompleks.
  3. Percakapan multi-agen berurutan: Mengelola urutan tugas terstruktur agar tuntas secara efisien.
  4. Percakapan bersarang: Menangani tugas rumit melalui percakapan berlapis yang terperinci.
  5. Penggunaan alat: Memperluas fungsionalitas agen dengan mengintegrasikan alat seperti penelusuran web dan kueri SQL.
  6. Keterlibatan manusia: Mengikutsertakan umpan balik manusia untuk meningkatkan alur kerja.
  7. Pengajaran dan pembelajaran agen: Meningkatkan keterampilan dan pengetahuan agen.
  8. Percakapan multi-agen dengan OpenAI Assistants: Menggabungkan kapabilitas OpenAI dengan AutoGen untuk tugas tingkat lanjut.
  9. Agen multimodal: Menangani teks, gambar, dan media lain untuk interaksi yang lebih kaya.
  10. Penanganan konteks panjang: Menjaga koherensi dalam percakapan yang panjang.

Kesimpulan

Ada alasan mengapa AutoGen mendapat begitu banyak perhatian dan pengakuan, menjadikannya salah satu kerangka Agentic dengan bintang terbanyak di GitHub. 

Ini adalah kerangka kerja komprehensif yang cocok untuk semua kalangan, mulai dari pengembang profesional hingga pemrogram kasual, bahkan individu tanpa pengalaman coding sebelumnya. 

Dengan AutoGen, Anda dapat dengan cepat membuat prototipe alur kerja menggunakan AutoGen Studio, membangun aplikasi andal dengan kerangka Core dan Extensions, serta menerapkannya ke cloud secara mulus. Ini benar-benar solusi serba ada untuk membuat dan mengelola sistem multi-agen yang cerdas.

Ikuti kursus Build Dynamic LangChain Agents dan pelajari cara membangun aplikasi agen AI pertama Anda menggunakan kerangka LLM populer.


Abid Ali Awan's photo
Author
Abid Ali Awan
LinkedIn
Twitter

Sebagai data scientist tersertifikasi, saya bersemangat memanfaatkan teknologi mutakhir untuk menciptakan aplikasi machine learning yang inovatif. Dengan latar belakang kuat di pengenalan ucapan, analisis dan pelaporan data, MLOps, conversational AI, dan NLP, saya mengasah keterampilan dalam mengembangkan sistem cerdas yang berdampak nyata. Selain keahlian teknis, saya juga komunikator andal yang mampu menyederhanakan konsep kompleks menjadi bahasa yang jelas dan ringkas. Karena itu, saya menjadi blogger yang dicari di bidang data science, membagikan wawasan dan pengalaman kepada komunitas profesional data yang terus berkembang. Saat ini, saya berfokus pada pembuatan dan penyuntingan konten, bekerja dengan large language model untuk mengembangkan konten yang kuat dan menarik agar membantu bisnis dan individu memaksimalkan data mereka.

Topik
Agen AI
Kecerdasan Buatan

Kursus Teratas DataCamp

Kursus

Merancang Sistem Agentic dengan LangChain

3 jam
14.9K
Pahami komponen dasar dari agen LangChain dan bangun agen chat kustom.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

Lihat SelengkapnyaLihat Selengkapnya