Ajanlardan önce gelen altyapı
The Pragmatic Engineer’ın bu bölümünde Gergely Orosz, Uber’in en kıdemli mühendislerinden Uday Kiran Medisetty ile konuşuyor. Medisetty şirketin ajan çalışmalarının başında. Bölümün ana fikri şu: Uber ajanlara hazırlıksız yakalanmadı, çünkü yıllar önce kurduğu altyapı zaten işi kolaylaştırıyordu.
Bunun bir örneği Devpod. Uber’in kodu dev monorepo’larda duruyor ve bu kodu dizüstü bilgisayarda derlemek yavaş. Devpod, Kubernetes üzerinde çalışan, depoları önceden klonlanmış ve IDE’si hazır uzak geliştirme ortamı. Bir insan için yazılan bu ortam, bir ajan için de hazır bir çalışma alanı demek. Ayrıca Uber’in on binden fazla iç servisinin arayüzü Protobuf ve Thrift dosyalarıyla tanımlı. Yani her servisin ne alıp ne döndürdüğü makinenin okuyabileceği bir biçimde yazılı.
MCP Gateway: Ajanlar için tek kapı
MCP, ajanlara araç vermenin standart yolu. Uber’de ekipler başta kendi MCP sunucularını ayrı ayrı yazdı. Sonuç dağınıklık oldu: Aynı altyapı tekrar tekrar kuruldu, araçlar bulunamadı, güvenlik her yerde farklıydı. Uber’in 1 Ekim’de yayımladığı yazıya göre çözüm MCP Gateway oldu. Bugün 800’den fazla MCP sunucusunu ve 5.000’den fazla aracı barındırıyor.
Mimari iki parçalı:
- Kayıt defteri (control plane): Hangi sunucu ve araç var, sahibi kim, açık mı kapalı mı. Tek doğru kaynak burası.
- Vekil (data plane): Ajanın isteğini alıp servisin konuştuğu protokole (HTTP, gRPC, TChannel) çeviriyor ve Uber’in servis ağı üzerinden iletiyor.
En ilginç kısım araçların nasıl oluştuğu. Bir iş akışı düzenli olarak servis tanımlarını tarıyor. Yeni bir API bulunca bir dil modeli ondan ajanın anlayacağı bir araç açıklaması yazıyor. Ama bulunan her araç kapalı başlıyor. Servisin sahibi ekip inceleyip açana kadar hiçbir ajan onu göremiyor. Açıklama değişirse sahibin onaylaması gereken bir fark çıkıyor, istenirse eski sürüme dönülüyor.
Güvenlik de kapıda çözülüyor. Yetkiyi Uber’in erişim kontrol sistemi veriyor: Çağıran bir insan da olabilir, bir servis ya da ajan da. Yanıtlardaki kişisel veriler otomatik maskeleniyor. Dışarıdaki sunuculara (Jira, Google gibi) giden isteklerde kullanıcının kendi yetkisi aktarılıyor.
Token’ı boşa harcamamak
Binlerce araç ajanın bağlamına sığmaz. Uber bunun için iki yol kullanıyor. Birincisi, ajanın önce sunucuyu ve aracı aradığı, şemasını sonra istediği dört araçlık tek bir giriş. İkincisi, ajanın yanıttan sadece ihtiyacı olan alanları istemesi; kapı gerisini kırpıyor. Yazıya göre kodlama ajanlarında artık varsayılan yol, araçları aifx adlı iç komut satırı aracıyla çağırmak. Ajan sonucu dosyaya yazıp içinde grep ile arayabiliyor. Ajanın araçları kodla çağırması fikrini OpenCode 2.0 yazımızda Code Mode adıyla anlatmıştık.
Arka plan ajanları ve kod incelemesi
Uber’in kendi arka plan kodlama ajanının adı Minions. Mayıs’taki bir konuşmada verilen rakamlara göre haftada yaklaşık 1.800 kod değişikliği üretiyor ve mühendislerin %95’i kullanıyor. Şirket içinde haftada yaklaşık 60.000 ajan çalıştırması yapılıyor.
Bu kadar kodu insanların tek başına incelemesi zor. uReview burada devreye giriyor. Üç ayrı asistan (hata, iç kodlama kuralları, güvenlik) yorum üretiyor. Sonra yorumlar eleniyor: güven puanı düşük olanlar, birbirini tekrarlayanlar ve geçmişte geliştiricilerin işe yaramaz bulduğu türler atılıyor. Uber’e göre mühendisler yorumların %75’ini faydalı buluyor. Aynı soruna Alibaba’nın yaklaşımını Open Code Review yazımızda anlatmıştık.
Bölümde bunların dışında Uber’in ekiplerin ortak kullandığı ajan becerileri (skills) deposu, mühendislik bilgisini birbirine bağlayan bir “bağlam grafiği” ve token maliyetleriyle verimliliğin nasıl ölçüldüğü de konuşuluyor. Agent skill’in ne olduğunu bu yazıda anlatmıştık.
Düşün
- Ekibinin servisleri bir ajana açılsa, hangi aracın varsayılan olarak kapalı kalmasını isterdin?
- Yapay zekâ kod incelemesinde en çok neyden rahatsız olursun: kaçırdığı hatalardan mı, gereksiz yorumlardan mı?
Videoyu izle
Kaynaklar (6, İngilizce)
- The Pragmatic Engineer: Uber’s AI infra, from the inside (video) (yeni sekmede açılır)
- Uber Engineering: Designing MCP Gateway (yeni sekmede açılır)
- Agentic AI Foundation: How Uber runs 60,000 AI agent tasks per week with MCP (yeni sekmede açılır)
- Uber Engineering: uReview, Scalable, Trustworthy GenAI for Code Review at Uber (yeni sekmede açılır)
- Uber Engineering: Devpod, Improving Developer Productivity at Uber with Remote Development (yeni sekmede açılır)
- The Pragmatic Engineer: How Uber uses AI for development, inside look (yeni sekmede açılır)
Kendi cümlelerimizle yazılmış bir özettir, çeviri değildir. Tüm kaynaklar yukarıda.