Bir demo için tek pencerede tek Agent yeterlidir. Üretimde ise onlarca eşzamanlı görev ayrı ortamlara ihtiyaç duyar; aksi halde oturumlar birbirini kirletir, sekmeler kontrol için yarışır ve hataların kaynağını bulmak zorlaşır.
Bir AI Agent'ın neler yapabildiğini göstermek için tek bir tarayıcı penceresi yeterlidir. Gerçek bir iş akışına girdiğinde ise ihtiyaç hızla onlarca pencereye çıkar ve bu pencerelerin birbirini etkilememesi gerekir. Bunun nedeni Agent'ın kendisi değil, üzerinde çalıştığı tarayıcı ortamıdır.
Tek bir ortam paylaşıldığında hangi sorunlar ortaya çıkar?
En belirgin sorun, çerezlerin ve oturum açma durumlarının birbirini kirletmesidir. Aynı tarayıcı veri dizininde iki görev sırayla farklı hesaplara giriş yaparsa, son giriş önceki görevin oturumunu geçersiz kılabilir. Bir görev önbelleği temizlediğinde başka bir görevin sayfa durumu da kaybolabilir.
Ardından kaynak çekişmesi gelir. Tek bir tarayıcı örneğinde sekmeler, odak, indirme dizini ve açılır pencereler ortak kaynaklardır. İki görev aynı anda yeni sekmeler açarsa hangi görevin hangi sayfayı yönettiği belirsizleşir. Bir görevin açtığı iletişim kutusu diğer görevin betiğini kilitleyebilir. Oturum çatışmaları, veri üzerine yazılması ve işlemlerin birbirini etkilemesi eşzamanlı çalışmada neredeyse kaçınılmazdır.
Üçüncü sorun bir hata sonrasında ortaya çıkar. Hatanın betik mantığından mı kaynaklandığını yoksa ortamın belirli bir adımda başka bir görev tarafından mı bozulduğunu anlamak zorlaşır. Birden fazla görev aynı süreci ve aynı günlüğü paylaştığında hata belirtileri de tutarsız olabilir ve sorun giderme maliyeti katlanır.
Daha az görünür bir risk de vardır: birden fazla kimlik uzun süre aynı ortamda çalıştığında ilişkilendirme sinyalleri bırakır. Cihaz parametreleri, depolama durumu ve ağ çıkışı aynı olduğundan platform bunları kolayca aynı cihazdan yapılan toplu işlemler olarak görebilir. Bir hesap anormal olarak değerlendirilirse diğer hesaplar da etkilenebilir.
Birden fazla pencere açmak izolasyon anlamına gelmez
İlk refleks çoğu zaman elle birkaç pencere açmaktır. Ayrı görünseler de gerçekte aynı tarayıcı profilini paylaşırlar: aynı çerezler, aynı yerel depolama ve aynı cihaz bilgileri. Pencereler birbirlerinin oturum durumunu görebilir ve bir penceredeki işlem diğerini etkileyebilir.
Gerçek izolasyon veri dizinine ve ortam parametrelerine kadar uzanmalıdır. Her ortamın kendi depolama dizini, kendi cihaz parametreleri — çözünürlük, dil, saat dilimi, yazı tipleri, Canvas, WebGL ve benzeri — ve kendi ağ çıkışı olmalıdır. Bu üç unsurdan biri eksikse izolasyon tamamlanmış sayılmaz. Ortamlar ayrı olsa bile ortak bir ağ çıkışı ilişkilendirme kontrollerini tetiklemeye devam edebilir.

İzolasyonun maliyeti ve karşılığında sağladıkları
İzolasyon ücretsiz değildir. Her ortamın arkasında bağımsız bir tarayıcı süreci ve ayrı bir veri dizini vardır. Ortam sayısı arttıkça önce bellek ve CPU baskısı hissedilir. Onlarca ortam tek bir makinede çalışacaksa, çökme yaşandıktan sonra önlem almak yerine kalan kapasiteyi önceden hesaplamak daha uygundur.
Birkaç denge noktası vardır: seyrek kullanılan ortamları geri dönüştürüp gerektiğinde yeniden başlatmak; görevleri ağırlıklarına göre birkaç makineye dağıtmak ve her şeyi tek bir makineye yığmamak; ortamlar için açık bir yaşam döngüsü tanımlayıp yüzlercesini sürekli açık bırakmamak. Görev yapısı da önemlidir. Aynı hesap altındaki sıralı görevlerin farklı ortamlara ayrılmasına gerek yoktur; bunu yapmak yalnızca kaynak israfıdır.
Diğer tarafta fayda bulunur. İzolasyon doğru yapıldığında hata davranışları kararlı hale gelir: sorun belirli bir ortama aittir ve açıklanamayan bir durum gibi görünmez. Ölçek büyüdüğünde bu öngörülebilirlik, ortak kullanım sayesinde kazanılan küçük kaynak tasarrufundan çok daha değerlidir.
Ölçek büyüdüğünde ortam katmanında olması gereken üç şey
Birincisi toplu zamanlamadır. Ortamlar, hesaplama kaynakları gibi talep edilip serbest bırakılabilmeli; isteğe bağlı oluşturma, toplu başlatma, eşzamanlılık kontrolü, hata sonrası yeniden deneme ve otomatik geri dönüşüm desteklenmelidir. Bunları betiklerde tek tek oluşturup kapatmak yerine kaynak olarak yönetmek gerekir.
İkincisi bağımsız ağ çıkışıdır. Her ortam kendi çıkışına bağlanmalı ve çıkışın bölgesi ortamın coğrafi parametreleriyle uyumlu olmalıdır. Bu madde kolayca gözden kaçabilir, ancak bütünsel izolasyonun ön koşullarından biridir.
Üçüncüsü sorgulanabilir durumdur. Hangi ortamların çalıştığı, hangilerinin boşta olduğu ve hangilerinde anormallik bulunduğu her an görülebilmelidir. Agents gözetimsiz çalışır; ortam durumu sorgulanamıyorsa sorun giderme tahmine dönüşür.
Bu üç kabiliyeti betiklerin içine yerleştirmek zahmetlidir. Ortam düzeyinde depolama, yapılandırma ve zamanlama gerekir. Bazı çoklu ortam yönetim araçları tam olarak bu katmanda çalışır. PurpleMark bunlardan biridir ve tarayıcı ortamlarını izole edilebilen, toplu zamanlanabilen ve arayüzler üzerinden çağrılabilen kaynaklara dönüştürür.
Birden fazla ortam ne zaman gerekli değildir?
Bir Agent yalnızca tek bir hesapla çalışıyor ve seyrek kullanılıyorsa normal bir tarayıcı gerçekten yeterlidir; ek izolasyon yalnızca bakım yükü getirir. Ancak şu durumlardan biri ortaya çıktığında ortam katmanının ayrılması gerekir: görevler paralel çalışmalıdır, birden fazla kimlik aynı platforma erişmelidir, oturum durumu uzun süre korunmalıdır veya eşzamanlılık daha da artacaktır.
Bu durumların ortak noktası şudur: mesele Agent'ın yeterince akıllı olup olmaması değil, altında çalışan ortamın yeterince temiz ve ayrılmış olup olmamasıdır.
Sınırlar
Hangi çözüm seçilirse seçilsin, kural düzeyindeki sınırlar değişmez: her platformun hizmet şartlarına ve robots kurallarına uyun, sahte kimlik bilgileri kullanmayın, teknik koruma önlemlerini aşmayın, istek sıklığını kontrol edin ve karşı tarafın hizmetlerinin normal çalışmasını bozmayın.


