Bir özelliği birkaç göreve bölmek her zaman daha hızlı sonuç vermez. Üç görev aynı bileşeni düzenliyorsa kazanılan zaman, birleştirme sırasında kaybedilebilir. Codex alt ajanlarla bağımsız işleri paralel yürütebilir; burada asıl tasarım problemi hangi işlerin gerçekten bağımsız olduğudur. Küçük bir ürün arama özelliği üzerinden, paralelliği dosya ve davranış sınırlarıyla kurmanın yolunu ele alalım.

Önce ortak sözleşmeyi belirleyin

Arama kutusu, sonuç servisi ve testler ayrı işler gibi görünür. Ancak biri yanıt alanını items, diğeri results kabul ederse görevler sonunda uyumsuz hale gelir. Başlamadan önce istek parametrelerini, yanıt yapısını ve boş sonuç davranışını kısa bir notta sabitleyin. Bu not kapsam değiştiğinde de güncellenebilecek kadar küçük olsun.

Örnekte sorgu parametresi q, sonuç başlığı title, bağlantı url olsun. Boş sorguda öneri listesi gösterilip gösterilmeyeceği de kararlaştırılsın. Böylece ajanların her biri aynı ürün sorusunu yeniden çözmeye çalışmaz. Ortak sözleşmeye bağlı bir değişiklik gerektiğinde koordinasyonu yürüten görev bu kararı diğerlerine iletir.

Yazma alanlarını çakıştırmayın

Bir görev yalnızca arama servisi ve onun testleriyle ilgilenebilir. İkinci görev arama kutusunun görünümünü hazırlayabilir. Üçüncü görev ise değişiklik yapmadan erişilebilirlik ve sınır durumlarını inceleyebilir. Okuma ağırlıklı inceleme görevleri, tek bir paylaşılan dosyayı birden fazla kişinin düzenlemesinden daha kolay koordine edilir.

Kullanılabilecek örnek talimat şöyledir:

Arama özelliğini üç bağımsız işe ayır. Bir görev servis katmanı ve ilgili testleri, biri yalnızca arama bileşeni stillerini hazırlasın. Üçüncü görev salt okunur biçimde sınır durumlarını incelesin. Ortak yanıt sözleşmesini değiştirme. Aynı dosyaya iki görev yazmasın; ortak dosyalardaki gerekli düzenlemeleri ana görev toplasın.

Bu paylaşım bir zorunlu ürün davranışı değil, örnekteki çakışmayı azaltmak için önerilen görev tasarımıdır.

Sonuç formatını baştan isteyin

Her görevden bütün terminal çıktısını istemek yerine değişen dosyalar, kabul edilen varsayımlar ve doğrulama sonucu yeterlidir. Eksik kalan bir kontrol varsa gerekçesiyle birlikte raporlansın. Ana görevin amacı alt görevlerin uzun günlüklerini okumak değil, çıkan parçaların aynı beklentiyi karşılayıp karşılamadığını değerlendirmektir.

Bir görev yanıt süresi için önbellek eklemek isterse bu, başlangıçtaki işin sınırını değiştirebilir. Diğer görevlerden bağımsız görünen kararın veri güncelliği üzerinde etkisi olabilir. Böyle durumlarda uygulamadan önce ortak sözleşmenin etkisini değerlendirmek, sonradan sessiz uyumsuzluk aramaktan daha kolaydır.

Birleştirmeyi ayrı bir aşama sayın

Parçaları topladıktan sonra kullanıcı akışını baştan sona çalıştırın. Arama kutusundan gönderilen parametre, servisin beklediği biçimle aynı mı? Özel karakterler doğru taşınıyor mu? Sonuç yokken ekran anlaşılır mı? Klavye odağı sonuçlara ulaşabiliyor mu? Bu sorular tek tek dosya kontrolünden farklıdır.

Paralel çalışma sonunda temel kazanç, birbirinden bağımsız araştırmanın ve uygulamanın eş zamanlı ilerlemesidir. Sonucun sorumluluğu yine birleşmiş özelliktedir. Dosya sahipliği, açık bir veri sözleşmesi ve kısa birleşim kontrolü bu kazancı daha öngörülebilir hale getirir.

Bir görev erken tamamlanırsa onu hemen başka bir dosyayı düzenlemeye yönlendirmek yerine açık kalan inceleme sorularına ayırabilirsiniz. Böylece dosya sahipliği değişmez. Yeni yazma alanı gerekiyorsa mevcut sorumluyu ve son revizyonu kontrol edin. İşin hızını ajan sayısından çok bağımsızlık düzeyi belirlediği için küçük bir koordinasyon notu çoğu zaman daha fazla paralellikten değerlidir.

Resmî kaynak: OpenAI — Subagents.