Ne çıktı?
DeepSeek, Ağustos ortasında DeepSeek Harness adlı açık kaynak (MIT) bir ajan altyapısını yayınladı. Kısa adı dsh. Harness, bir dil modelini iş yapan bir ajana çeviren kod katmanı demek: araçlar, dosya erişimi, komut çalıştırma, konuşma geçmişi. Kavramı Flue yazısında anlatmıştık.
Ürün olarak tanıdık bir şey: Masaüstü uygulaması (macOS ve Windows) ya da tarayıcıda açılan bir arayüz. Dosya ve belge işleri, kod yazma ve test çalıştırma, kaynak gösteren araştırma, zamanlanmış görevler. Two Minute Papers videosu sistemi tanıtıyor. Biz ayrıntıları projenin kendi belgelerinden ve arkasındaki makaleden kontrol ettik.
“Her şey bir eklenti” ne demek?
Çoğu ajan aracında sabit bir çekirdek var, eklentiler onun etrafına takılıyor. dsh’te ayrıcalıklı bir çekirdek yok. Mimari belgesine göre model bağlantısı, araç kayıt sistemi, oturum kaydı ve ajan döngüsünün kendisi de birer eklenti. Hepsi ayar dosyasından değiştirilebiliyor.
Somut bir örnek: Komut çalıştırma ve dosya erişimi aynı “sağlayıcı” arayüzünü paylaşıyor. Bu sağlayıcıyı uzak bir kum havuzuna (sandbox) yönlendirdiğinde terminal, Bash ve dil sunucusu hep birlikte oraya taşınıyor. Başka bir parçaya dokunmana gerek kalmıyor.
Bir ilke daha dikkat çekiyor: “Modelin gördüğü her şey kayıtlı.” Modele giden her istek, oturum kaydından yeniden kurulabilmeli. Yani bir eklenti modelin bağlamına bir şey ekliyorsa, bu kayda da geçmek zorunda. Hata ayıklarken “model o an neyi gördü?” sorusunun cevabı her zaman elinde oluyor.
Altındaki fikir: Cordis
dsh, 2022’den beri geliştirilen Cordis adlı bir TypeScript çatısının üstünde duruyor. Cordis’in tasarımı Ağustos’ta bir makaleyle anlatıldı. Makale, çalışan bir sisteme parça ekleyip çıkarmanın iki ayrı sorunu olduğunu söylüyor:
- Zaman boyutu: Bir parçayı kaldırdığında, onun yaptığı her şeyin de tamamen geri alınabilmesi. Cordis’te her kayıt (bir araç, bir olay dinleyicisi, bir prompt bölümü) kendi geri alma işlemiyle birlikte yapılıyor ve çatı bu işlemi saklıyor. Eklenti kalkınca bu kayıtları çatı kendisi söküyor.
- Mekân boyutu: Bir parçanın neye ihtiyaç duyduğunu ilan etmesi ve gerisini çatının yönetmesi. Bir eklenti “bana araç kaydı servisi lazım” diyorsa, o servis ortaya çıkınca kendiliğinden çalışıyor, kaybolunca kendiliğinden duruyor.
Web geliştiriciysen bunu React’teki useEffect ve onun döndürdüğü temizlik fonksiyonuna benzetebilirsin. Fark, Cordis’in bunu bütün sistemin kuralı yapması ve makalenin, çok sayıda parça iç içe çalışırken birbirini bozmayacağını biçimsel olarak göstermeye çalışması.
Ajanlar için neden önemli?
Proje sayfasına göre “Creator mode” ile sohbet ederek yeni eklenti yazdırabiliyorsun. Sistem eklentileri yeniden başlatmadan yükleyebiliyor (hot reload). Kâğıt üstünde bu, ajanın kendine yeni bir araç yazıp hemen kullanabilmesi demek. Bu gücün riski de belli: Kötü yazılmış bir eklenti geride çöp bırakırsa sistem zamanla bozulur. Geri alınabilir kayıtlar, bu kapıyı açarken temizliği garanti etmenin bir yolu.
Kullanmadan önce
- Denemek için Node.js yeterli:
npx @deepseek-ai/dsh webarayüzü yerelde açıyor. - Proje hâlâ geliştirici önizlemesi. Ekim ortasında çıkan son sürüm bile 0.2.1 sürüm adayı. README, uyumluluğu bozan değişikliklerin geleceğini açıkça yazıyor.
- Güvenlik notu daha da açık: Yazılım güvenlik denetiminden geçmedi. Model ürettiği komutları çalıştırabiliyor, dosyalarına ve anahtarlarına erişebiliyor. Atılabilir bir sanal makine ya da konteyner öneriliyor. Seçenekleri kod izolasyonu yazımızda anlattık.
Düşün
- Senin kullandığın bir eklenti sisteminde, bir eklentiyi kaldırınca geride ne kalıyor?
- Bir ajanın kendine eklenti yazmasına izin verirsen, o eklentiyi kim inceleyecek?
Videoyu izle
Kaynaklar (8, İngilizce)
- Two Minute Papers: DeepSeek's New AI System Shouldn't Be Possible (video) (yeni sekmede açılır)
- DeepSeek Harness (proje sayfası) (yeni sekmede açılır)
- GitHub: deepseek-ai/deepseek-harness (yeni sekmede açılır)
- DeepSeek Harness: Architecture (yeni sekmede açılır)
- DeepSeek Harness: Safety notice (yeni sekmede açılır)
- GitHub: cordiverse/paper (A Programming Paradigm for Spatiotemporal Composability) (yeni sekmede açılır)
- arXiv: A Programming Paradigm for Spatiotemporal Composability (yeni sekmede açılır)
- GitHub: cordiverse/cordis (yeni sekmede açılır)
Kendi cümlelerimizle yazılmış bir özettir, çeviri değildir. Tüm kaynaklar yukarıda.