MemoDokümantasyon
TR

Orkestra Modu

Orkestra Modu, karmaşık görevleri iş birliği içinde çözmek için birden fazla uzman LLM ajanını koordine eder. Bir Şef ajan, işleri 8 uzman role dağıtır, paralel ve sıralı çıktıları tutarlı bir sonuca sentezler.


Orkestra Modu harici sağlayıcılar gerektirir. Her rol, optimum kalite/maliyet/gecikme dengesi için farklı bir sağlayıcı veya model kullanabilir.

Şef + 8 Uzman Rol

                         ┌───────────────────┐
                         │    ŞEF AJAN        │
                         │  Koordine eder &    │
                         │  sentezler          │
                         └────────┬──────────┘
                                  │
          ┌───────────────────────┼───────────────────────┐
          │                       │                       │
    ┌─────┴─────┐          ┌─────┴─────┐          ┌─────┴─────┐
    │ Araştırmacı│          │ Kodlayıcı │          │  Analist  │
    │ Web + RAG  │          │ Kod üretim│          │ Veri + SQL│
    └───────────┘          └───────────┘          └───────────┘
          │                       │                       │
    ┌─────┴─────┐          ┌─────┴─────┐          ┌─────┴─────┐
    │ Gözden     │          │  Yazar    │          │  Mimar    │
    │ Geçirici   │          │ Döküman + │          │ Tasarım + │
    │ KÇ + lint  │          │ Kullanıcı │           │ yapı      │
    └───────────┘          │ Deneyimi  │          └───────────┘
                           └───────────┘
          ┌───────────────────────┼───────────────────────┐
          │                       │                       │
    ┌─────┴─────┐          ┌─────┴─────┐
    │ Hata       │          │ Planlayıcı│
    │ Ayıklayıcı │          │ Görev      │
    │ Hata avı   │          │ bölümleme  │
    └───────────┘          └───────────┘
Rol Uzmanlık Varsayılan Sağlayıcı
Şef Görev ayrıştırma, sonuç sentezi, kalite kapısı Claude 3.5 Sonnet
Araştırmacı Web arama, belge analizi, doğruluk kontrolü GPT-4o
Kodlayıcı Kod üretimi, yeniden düzenleme, test Claude 3.5 Sonnet
Gözden Geçirici Kod inceleme, lint kontrolü, güvenlik denetimi GPT-4o
Yazar Dokümantasyon, kullanıcı deneyimi metni, rapor üretimi Claude 3.5 Sonnet
Analist Veri analizi, SQL sorguları, istatistik GPT-4o
Mimar Sistem tasarımı, API tasarımı, şema planlama Claude 3.5 Sonnet
Hata Ayıklayıcı Hata araştırma, yığın izi analizi, kök neden GPT-4o
Planlayıcı Görev bölümleme, bağımlılık eşleme, tahminleme Claude 3.5 Sonnet

Üç Aşamalı İş Akışı

Aşama 1: Planla

Şef ajan kullanıcının isteğini analiz eder ve bir yürütme planı üretir:

{
  "phases": [
    {
      "id": "arastirma",
      "role": "arastirmaci",
      "task": "Go SQLite vektör araması için en iyi uygulamaları bul",
      "depends_on": [],
      "parallel_group": "grup_1"
    },
    {
      "id": "kodu_analiz_et",
      "role": "analist",
      "task": "Mevcut arama performansını profil et",
      "depends_on": [],
      "parallel_group": "grup_1"
    },
    {
      "id": "uygula",
      "role": "kodlayici",
      "task": "Araştırmaya dayalı optimize arama uygula",
      "depends_on": ["arastirma", "kodu_analiz_et"],
      "parallel_group": null
    },
    {
      "id": "gozden_gecir",
      "role": "gozden_gecirici",
      "task": "Uygulamayı doğruluk ve performans açısından incele",
      "depends_on": ["uygula"],
      "parallel_group": null
    }
  ]
}

Aşama 2: Yürüt

Görevler bağımlılık grafiğine göre dağıtılır:

  • Paralel yürütme: Aynı parallel_group içindeki bağımsız görevler goroutine'ler ile eşzamanlı çalışır
  • Sıralı yürütme: Bağımlılıkları olan görevler öncüllerinin tamamlanmasını bekler
  • İlerleme akışı: Gerçek zamanlı SSE güncellemeleri hangi rolün ne üzerinde çalıştığını gösterir
[████████░░] Araştırılıyor...      (Araştırmacı)
[██████░░░░] Kod profili çıkarılıyor... (Analist)
[░░░░░░░░░░] Bekliyor: araştırma   (Kodlayıcı)
[░░░░░░░░░░] Bekliyor: uygula      (Gözden Geçirici)

Aşama 3: Sentezle

Şef ajan tüm rol çıktılarını toplar ve birleşik bir yanıt üretir:

  1. Kalite kapısı: Her rol çıktısı görev açıklamasına karşı doğrulanır
  2. Çakışma çözümü: Çelişkili çıktılar yeniden değerlendirme için işaretlenir
  3. Birleştirme: Çıktılar tek bir tutarlı yanıtta birleştirilir
  4. Son inceleme: Şef, kullanıcıya akışa almadan önce son kalite kontrolünü yapar

İlerleme Akışı

Orkestra ilerlemesi SSE ile gerçek zamanlı olarak arayüze aktarılır:

{"type": "plan", "tasks": 4, "parallel_groups": 2}
{"type": "task_start", "role": "arastirmaci", "task_id": "arastirma"}
{"type": "task_start", "role": "analist", "task_id": "kodu_analiz_et"}
{"type": "task_progress", "task_id": "arastirma", "pct": 45}
{"type": "task_complete", "task_id": "kodu_analiz_et"}
{"type": "task_start", "role": "kodlayici", "task_id": "uygula"}
{"type": "task_progress", "task_id": "arastirma", "pct": 100}
{"type": "task_complete", "task_id": "arastirma"}
{"type": "task_complete", "task_id": "uygula"}
{"type": "synthesis_start"}
{"type": "final_response", "content": "Araştırma ve analize dayanarak..."}
{"type": "done"}

Rol Yapılandırması

Her rol bağımsız olarak yapılandırılabilir:

orchestra:
  roles:
    kodlayici:
      provider: anthropic
      model: claude-3.5-sonnet
      temperature: 0.2
    arastirmaci:
      provider: openai
      model: gpt-4o
      temperature: 0.7
    gozden_gecirici:
      provider: openai
      model: gpt-4o-mini
      temperature: 0.1
  chief:
    provider: anthropic
    model: claude-3.5-sonnet
    max_iterations: 3


Rutin roller için daha ucuz modeller kullan (Gözden Geçirici, Planlayıcı) ve kalite açısından kritik roller için pahalı modelleri sakla (Şef, Kodlayıcı, Mimar). Bu, çıktı kalitesinden ödün vermeden API maliyetlerini %40–60 azaltabilir.

Slash Komutu

Herhangi bir sohbetten /orchestra komutuyla Orkestra Modunu başlat:

/orchestra Go ve SQLite ile bir yapılacaklar uygulaması için REST API oluştur.
Girdi doğrulama, hata yönetimi ve testleri dahil et.

Alternatif olarak, görevini açıkla; Memo, Orkestra Modunun ne zaman faydalı olacağını önerecektir.

Performans Özellikleri

Orkestra Boyutu Paralel Görev Tipik Süre
2 rol 2 paralel 8–15s
4 rol 2 grup × 2 12–25s
6 rol 3 grup × 2 18–40s
8 rol 4 grup × 2 25–60s

Süre; model gecikmesine, görev karmaşıklığına ve bağımlılık grafiğinin derinliğine bağlıdır. Paralel görevler, gruptaki en yavaş rolün süresinde tamamlanır.