> ## Documentation Index
> Fetch the complete documentation index at: https://docs.neosantara.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# AutoGen (AG2)

> Bangun sistem percakapan multi-agent dan eksekusi kode otonom menggunakan Neosantara dan AG2.

[AG2](https://ag2.ai/?utm_source=neosantara-docs\&utm_medium=referral) (sebelumnya AutoGen) adalah framework open source untuk membangun aplikasi AI multi-agent. Framework ini memungkinkan agent berbasis LLM berinteraksi satu sama lain, mengeksekusi kode, dan menyelesaikan tugas kompleks secara kolaboratif.

## Pengaturan

Instal paket `autogen`:

```bash theme={"theme":{"light":"ayu-dark","dark":"catppuccin-latte"}}
pip install -U autogen
```

<CodeGroup>
  ```bash Bash / zsh icon="terminal" theme={"theme":{"light":"ayu-dark","dark":"catppuccin-latte"}}
  export NEOSANTARA_API_KEY="nsk_your_api_key_here"
  ```

  ```env .env icon="file-code" theme={"theme":{"light":"ayu-dark","dark":"catppuccin-latte"}}
  NEOSANTARA_API_KEY=nsk_your_api_key_here
  ```

  ```powershell PowerShell icon="terminal" theme={"theme":{"light":"ayu-dark","dark":"catppuccin-latte"}}
  $env:NEOSANTARA_API_KEY="nsk_your_api_key_here"
  ```
</CodeGroup>

## Konfigurasi LLM

AutoGen menggunakan daftar konfigurasi `config_list` untuk menentukan endpoint model. Arahkan `base_url` ke gateway Neosantara dengan `api_type: "openai"`.

```python theme={"theme":{"light":"ayu-dark","dark":"catppuccin-latte"}}
import os

config_list = [
    {
        "model": "deepseek-v4.1-flash",
        "base_url": "https://api.neosantara.xyz/v1",
        "api_key": os.environ["NEOSANTARA_API_KEY"],
        "api_type": "openai"
    }
]
```

## Contoh Kolaborasi Dua Agent

Contoh berikut membuat `AssistantAgent` yang menyarankan solusi Python dan `UserProxyAgent` yang memverifikasi atau menjalankan instruksi:

```python theme={"theme":{"light":"ayu-dark","dark":"catppuccin-latte"}}
import os
from autogen import AssistantAgent, UserProxyAgent

config_list = [
    {
        "model": "deepseek-v4.1-flash",
        "base_url": "https://api.neosantara.xyz/v1",
        "api_key": os.environ["NEOSANTARA_API_KEY"],
        "api_type": "openai"
    }
]

assistant = AssistantAgent(
    name="Architect",
    llm_config={"config_list": config_list},
    system_message="Anda arsitek backend. Berikan saran arsitektur database terdistribusi ringkas dan akhiri dengan kata 'SELESAI' jika rencana sudah lengkap."
)

user_proxy = UserProxyAgent(
    name="Engineer",
    human_input_mode="NEVER",
    max_consecutive_auto_reply=2,
    is_termination_msg=lambda msg: "SELESAI" in msg.get("content", "")
)

user_proxy.initiate_chat(
    assistant,
    message="Bagaimana strategi sharding Postgres untuk tabel transaksi bernilai ratusan juta baris?"
)
```

## Pola Kolaborasi AutoGen

| Pola Workflow      | Komponen Utama                      | Skenario Ideal                                                   |
| :----------------- | :---------------------------------- | :--------------------------------------------------------------- |
| **Two-Agent Chat** | `AssistantAgent` + `UserProxyAgent` | Tanya jawab terpandu, review kode, atau brainstorming            |
| **GroupChat**      | `GroupChat` + `GroupChatManager`    | Alur kerja tim dengan 3+ agent (Planner, Coder, Reviewer)        |
| **Code Execution** | `LocalCommandLineCodeExecutor`      | Pengujian skrip Python otomatis dalam direktori kerja terisolasi |

## Langkah Berikutnya

* [Panduan CrewAI](/id/integrations/crewai)
* [Integrasi Model Context Protocol (MCP)](/id/agents/overview)
* [Pilihan Model dan Harga](/id/gateway/models)


## Related topics

- [CrewAI](/id/integrations/crewai.md)
- [Arsitektur MCP & Agen](/id/agents/overview.md)
- [Katalog Model](/id/gateway/models.md)
- [Ringkasan Integrasi](/id/integrations/overview.md)
