Mixture-of-Agents (MOA) ialah teknik inference di mana beberapa LLM (“reference models”) menjana jawapan bagi turn yang sama secara selari. Kemudian satu model aggregator membaca semua jawapan itu dan menggabungkan serta memperhalusinya menjadi satu jawapan akhir.
Idea ini datang daripada kertas penyelidikan “Mixture-of-Agents Enhances Large Language Model Capabilities” (arXiv:2406.04692, Jun 2024). Dapatan utamanya, mengikut nota saya, ialah jawapan gabungan daripada pelbagai model secara konsisten mengatasi mana-mana model tunggal, termasuk aggregator itu sendiri. Baca kertas asal untuk butiran dan angka sebenar; saya hanya merumuskan ideanya di sini.
Cara ia berfungsi
Pengguna: "Kenapa VM ini slow?"
Reference model A ──┐
Reference model B ──┼──► AGGREGATOR ──► Jawapan akhir
Reference model C ──┘ (baca semua, pilih
dan perhalusi)
Dalam kertas asal, lapisan ini boleh berulang: output agregat satu lapisan menjadi input reference model pada lapisan seterusnya. Kualiti meningkat lagi, tetapi kos juga.
Kenapa ia berkesan:
- Model berbeza mempunyai kekuatan yang saling melengkapi (logik, ringkasan, coding, bahasa).
- Aggregator boleh memilih dan menggabungkan idea terbaik, bukan sekadar mengambil purata.
- Kesannya seperti panel pakar: banyak perspektif mengatasi satu perspektif.
Kos dan pertukaran
| Perkara | Kesan |
|---|---|
| Kos | Setiap turn = N + 1 panggilan API (N reference model dan 1 aggregator) |
| Latensi | Lebih perlahan, kerana semua reference model perlu siap dahulu |
| Syarat | Perlukan API key daripada beberapa provider |
| Kualiti | Lebih tinggi, sesuai untuk soalan kompleks dan keputusan kritikal |
Bila guna, bila tidak
| Situasi | MOA? |
|---|---|
| Soalan kompleks, kualiti kritikal | Ya |
| Analisis dan keputusan penting | Ya |
| Sembang harian, tugas ringkas | Tidak, membazir kos |
| Tugas deterministik yang banyak guna tool | Tidak, model biasa sudah cukup |
| Setup satu provider sahaja | Tidak boleh berjalan |
Perbandingan ini selari dengan pelajaran saya tentang skrip untuk eksekusi, LLM untuk penaakulan: bayar kos tambahan hanya bila masalahnya benar-benar memerlukan penaakulan.
MOA dalam agent saya (Hermes)
Agent saya, Hermes, menyokong MOA melalui seksyen moa dalam config.yaml. Konfigurasi saya masih tersimpan, tetapi dimatikan:
moa:
enabled: false
reference_models:
- provider: <provider-a>
model: <fast-model>
- provider: <provider-b>
model: <strong-model>
- provider: <provider-c>
model: <free-open-model>
aggregator:
provider: <provider-a>
model: <fast-model>
fanout: user_turn # setiap turn pengguna diagihkan kepada semua reference
degraded_reference_policy: loud
max_tokens: 4096
(Nama model sengaja digantikan dengan pemegang tempat kerana ia berubah dengan cepat.)
Sebab ia dimatikan: saya membersihkan API key dan hanya menyimpan satu provider. Tanpa kunci untuk provider lain, MOA tidak boleh berjalan.
Cara hidupkan semula
# 1. Tambah kunci provider lain dalam ~/.hermes/.env
# 2. Aktifkan
hermes config set moa.enabled true
# 3. Restart gateway dari shell yang berasingan
hermes gateway restart
Rujukan
- Kertas asal: arXiv:2406.04692, Mixture-of-Agents Enhances Large Language Model Capabilities
- Implementasi rujukan: github.com/togethercomputer/moa
Leave a Comment / Ask a Question
Have thoughts or questions on this article? Drop a message below and Faiez will receive an instant notification.