Yapay Zeka Ajanlarını Tespit Etmek: Claude, ChatGPT ve Perplexity Tarayıcıları İnsanlardan Nasıl Ayrılır
Yapay zeka ajanları tarayıcı gibi görünür ama insan gibi davranmaz — kısa, hedefe yönelik oturumlar, piksel hassasiyetinde tıklamalar, sıfır yazım hatası. Computer Use, Operator ve Perplexity trafiğini ziyaretçilerden ayıran 11 sinyal.
2024'te yapay zeka ajanları deneysel demolardan üretim trafiğine geçiş yaptı. Claude'un Computer Use API'si bir tarayıcıyı sürebiliyor. ChatGPT'nin tarama araçları sorguları yanıtlamak için web sitelerinde gezinebiliyor. Perplexity'nin yanıt motoru gerçek zamanlı olarak tarama yapıyor. Ve giderek büyüyen bir yapay zeka destekli asistan kategorisi — Browserbase, Anthropic'in Computer Use'u, OpenAI Operator — kullanıcılar adına uçtan uca web görevleri gerçekleştiriyor.
Bir web sitesi için bu, geleneksel bot tespitindeki iki kovanın hiçbirine oturmayan yeni bir ziyaretçi kategorisi yaratır. Yapay zeka ajanları büyük ölçekte veri çıkaran scraper'lar değildir. Bir arayüzde tıklayan insanlar da değildir. İkisinin arasında bir şeydir — oturum başına tek ziyaretçi, ziyaret başına tek hedef, ancak makine hızında ve mekanik hassasiyetle yürütülür.
Onları tespit etmek, botları tespit etmekten farklı bir öneme sahiptir. Bazen onlara hizmet vermek istersiniz (bir müşteri için alışveriş yapan yardımcı bir ajan). Bazen onları engellemek istersiniz (bir yapay zeka sarmalayıcısı üzerinden yetkisiz scraping). Her iki durumda da önce orada olduklarını bilmeniz gerekir.
Yapay zeka ajanları mimari olarak nasıl farklıdır
Web'de yapay zeka ajanı trafiği üreten üç ana mimari vardır:
Tarayıcı süren ajanlar bir LLM tarafından kontrol edilen headless veya headful bir tarayıcı çalıştırır. Anthropic'in Computer Use'u, OpenAI Operator, Browserbase ve Skyvern hepsi buraya girer. Tarayıcı gerçek Chrome veya Chromium'dur. Ajan onu DOM manipülasyonu yoluyla ya da ekran görüntüsü analizi ve koordinat tıklamaları yoluyla yönlendirir.
Yalnızca API kullanan ajanlar sayfaları HTTP kütüphaneleri (Node.js, Python, Go) aracılığıyla çeker ve HTML'i işlenmek üzere bir LLM'e geçirir. Çoğu Perplexity ve arama tabanlı ajan bu şekilde çalışır. Tarayıcı yoktur — sadece bir modele metin besleyen bir çekme katmanı vardır.
Hibrit ajanlar JavaScript ağırlıklı siteler için bir tarayıcı, statik içerik için API çekmesi kullanır. Birçok üretim ajanı bu kategoriye girer ve hedefe bağlı olarak dinamik seçim yapar.
Her mimari farklı parmak izleri bırakır.
Sinyal 1. Tarayıcı oturum ömrü
Gerçek kullanıcıların uzun, odaksız oturumları vardır. Sekmeler açarlar, dikkatleri dağılır, geri dönerler. Karar verme gerektiren bir görevde medyan insan oturum süresi 8-20 dakikadır.
Yapay zeka ajanlarının kısa, odaklı oturumları vardır. Tipik bir Computer Use görevi — uçuş rezervasyonu, market siparişi, ürün verisi çıkarma — uçtan uca 30 saniye ile 3 dakika sürer. Oturum sayfa yüklemesiyle başlar, sırayla 5-30 eylem yürütür ve biter.
5 dakikadan kısa oturum süresi, 10'dan fazla ayrık eylem ve tarayıcı sekmesi değiştirme olmaması atipik insan davranışı ve tipik ajan davranışıdır.
Sinyal 2. Koordinat tıklama hassasiyeti
Anthropic ve OpenAI'nin tarayıcı süren ajanları, arayüz öğelerini tanımlamak için ekran görüntüsü analizi kullanır, ardından koordinatlara tıklar. Koordinat hesaplaması piksel hassasiyetindedir.
Gerçek kullanıcılar bölgelere tıklar. 200x40 piksel boyutundaki bir düğme, tüm alana dağılmış — merkeze doğru ağırlıklı ama insan varyansıyla — tıklamalar alır. Yapay zeka ajanları dar bir bant içinde tıklar — genellikle öğenin geometrik merkezinin 2-3 piksel yakınında. Ortalama sapması 3 pikselin altında olan yüz tıklama insan dağılımı değildir.
Tespit, tıklama koordinatlarının toplanmasını ve bunların öğe sınırlarına göre analiz edilmesini gerektirir. Bu, oturum uzunluğundaki verilerde iyi çalışır.
Sinyal 3. Keşif amaçlı kaydırmanın yokluğu
İnsanlar bir sayfada ne olduğunu görmek için kaydırır. Aşağı kaydırırlar, sonra geri yukarı, sonra yarı yola. Dikkatlerini çeken içerikte dururlar. Kaydırma izleri düzensizdir.
Yapay zeka ajanları yalnızca gerektiğinde kaydırır. Hedef Sepete ekle düğmesine tıklamaksa ve düğme ilk ekran görünümündeyse, ajan hiç kaydırmayabilir. Hedef öğe ilk ekran görünümünün altındaysa, ajan bir kez, doğrudan hedefe kaydırır, sonra yürütür.
2'den az kaydırma yönü değişikliği olan veya tüm kaydırma olaylarında sabit kaydırma hızı gösteren oturumlar, keşiften ziyade görev odaklı gezinmeye işaret eder.
Sinyal 4. Metin girişi zamanlaması
Gerçek kullanıcılar dakikada 30-60 kelime hızında, değişken duraklamalarla, ara sıra silmelerle ve mikro düzeltmelerle yazar. Tuş vuruşu zamanlaması yüksek varyanslı ve sıfır olmayan silme oranına sahip bir dağılım izler.
Yapay zeka ajanları formları değer yapıştırarak veya sabit bir tempoda — genellikle saniyede 50-100 karakter, düzgün, silme olmadan — tuş vuruşları simüle ederek doldurur. 30 karakterlik bir dizeyle ve sıfır geri silme ile 200ms'de doldurulan bir alan insan girdisi değildir.
Sinyal 5. Yazım hatalarının yokluğu
İlişkili ama farklı: insanlar yazım hatası yapar. 1000 karakterlik metin girişinde gerçek kullanıcılar 15-40 düzeltme üretir. Yapay zeka ajanları sıfır üretir. Toplam 100'den fazla karakter içeren 3 alanlı ve sıfır düzeltmeli bir form gönderimi bir insan için olağandışıdır.
Sinyal 6. User agent tutarsızlıkları
Bazı yapay zeka ajanları kendilerini açıkça tanımlayan özel user agent'lar kullanır: perplexity-user, ChatGPT-User, ClaudeBot. Bunlar kendini tanımlama geleneğine uyan ve genellikle robots.txt'ye saygı gösteren kibar ajanlardır.
Buradaki tespit önemsizdir — user agent'ı okuyun, bilinen listelere göre eşleştirin. Değeri, onlara ne zaman farklı hizmet vereceğinizi (veya scraping istemiyorsanız onları engelleyeceğinizi) bilmektir.
Diğer ajanlar tarayıcı süren framework'ler çalıştırır ve tarayıcının kullandığı user agent'ı — genellikle Chrome — devralır. Bunlar yalnızca user agent'tan tanımlanması daha zordur ve davranışsal sinyaller gerektirir.
Sinyal 7. Headless altında WebGL render etme
Chromium'u headless modda kullanan tarayıcı süren ajanlar, Puppeteer makalesinde tartıştığımız SwiftShader render motorunu açığa çıkarır. WebGL render motorunun SwiftShader içerdiği ve ziyaretçinin 10'dan fazla kasıtlı eylem yürüttüğü herhangi bir oturum neredeyse kesinlikle tarayıcı süren bir yapay zeka ajanıdır.
Daha yeni ajan framework'leri (Browserbase, bazı Skyvern kurulumları) bu sinyalden kaçınmak için headful Chrome çalıştırır. Gerçek GPU dizeleri sunarlar. Bu, WebGL'in tek başına modern ajanların tespiti için yetersiz olduğu anlamına gelir — başlangıç filtresi olarak gereklidir, tam bir çözüm değil.
Sinyal 8. Sayfa yapısına mükemmel uyum
Gerçek kullanıcılar bir sayfa yönlendirmesi gerçekleşirken bile bağlantılara tıklar. Kendilerini keserler. Tek tıklama yeterliyken çift tıklarlar. Bağlantı olmayan şeylere tıklarlar.
Yapay zeka ajanları DOM'u izler. Gezinmek istediklerinde, belirli bir öğeye karşı bir eylem başlatırlar. Yanlış öğeye tıklamazlar veya yükleme ortasında yenilemezler. Oturumları, dikkati dağılmış hiçbir insanın üretmediği mekanik bir doğrusallıkla açılır.
Mükemmel uyum gösteren oturum izleri — geçerli bir öğeye her tıklama, DOM sırasında doldurulan her form alanı, kasıtlı eylemin öncelediği her sayfa geçişi — ajan tarafından yürütülmüş olarak okunur.
Sinyal 9. Etkileşime-hazır süresi sıfırdır
Gerçek kullanıcıların bir sayfayı işlemek için zamana ihtiyacı vardır. Okurlar. Tararlar. Harekete geçmeden önce anlarlar.
Yapay zeka ajanları DOM'u anında ayrıştırır. Gerçek bir kullanıcı için sayfa yüklemesinin tamamlanması ile ilk kullanıcı eylemi arasındaki süre, basit sayfalarda bile genellikle 1,5-4 saniyedir. Yapay zeka ajanları için bu 200ms'nin altında olabilir — LLM'in DOM'daki hedef öğeyi tanımlaması için gereken süre.
İçerik kavrayışı gerektiren bir sayfada çok hızlı ilk eylem süresi güçlü bir ajan sinyalidir.
Sinyal 10. Yalnızca API kullanan ajanlar için HTTP çekme kalıpları
Perplexity, bazı Claude araç kullanımı akışları ve çoğu arama tabanlı ajan tarayıcı çalıştırmaz. Sayfaları doğrudan HTTP kütüphaneleri aracılığıyla çeker.
Bu ajanlar daha önce tartıştığımız TLS ve HTTP sinyallerini bırakır — Node.js undici parmak izi, Python requests parmak izi, Go net/http parmak izi. Genellikle JavaScript çalıştırmazlar, bu yüzden istemci taraflı tespiti hiç tetiklemezler.
Yalnızca API kullanan ajanların tespiti ağ katmanında gerçekleşir: TLS JA4 hash'leri, HTTP başlığı sıralaması, tarayıcıya özgü davranışların eksikliği (favicon çekmesi yok, analytics beacon'ı yok, font istekleri yok). Bu ajanları tanımlamak istiyorsanız, olanlara baktığınız kadar olmayanlara da bakmanız gerekir.
Sinyal 11. Göreve şekillenmiş oturum hedefleri
En güçlü sinyal teknik değil — davranışsaldır. Yapay zeka ajanı oturumları, insan oturumlarının nadiren olduğu şekillerde hedefe yöneliktir.
Bir ürün arayan gerçek bir kullanıcı 8 öğeye bakabilir, 3 sekmede özellikleri karşılaştırabilir, yorumları okuyabilir, vazgeçip bir saat sonra geri dönebilir, sonra satın alabilir. Bir yapay zeka ajanı ürüne gider, özellikleri çıkarır, sepete ekler, ödeme yapar. 90 saniyenin altında. Sapma yok.
Oturum düzeyinde görev tamamlama oranlarını izleyen tespit sistemleri, ajan trafiğini kısa oturumlardaki başarılı görev tamamlama yoğunluğuyla tanımlayabilir. Bu daha yavaş bir sinyaldir ama eylem başına sinyallerle birleştirildiğinde son derece güvenilirdir.
Ajanlara farklı hizmet verme
Tanımlandıktan sonra, yapay zeka ajanı trafiği çeşitli şekillerde ele alınabilir:
-
Engelle — site otomatik erişim istemiyorsa, kenarda reddet. Ucuz ve basit.
-
Alternatif içerik sun — tam HTML sayfasından daha ucuza üretilen API için optimize edilmiş bir sürümle (JSON, yapılandırılmış veri) yanıt ver.
-
Hız sınırla — ajanlara izin ver ama site performansını korumak için istek hızlarını kısıtla.
-
Ücretlendir — bazı siteler yapay zeka şirketlerinden verilerine programatik erişim için ücret almaya başlıyor. Tespit, faturalandırmanın ön koşuludur.
-
Normal hizmet ver — ajan gerçek bir müşteri adına hareket ediyorsa, ona hizmet vermek iştir.
Farklı siteler farklı seçimler yapacak. Teknik olarak önemli olan, seçimin mümkün olması için tespitin yerinde olmasıdır.
Hareketli hedef
Yapay zeka ajanı framework'leri her ay gelişiyor. Anthropic, Computer Use'a kaydırma varyansı ekleyen güncellemeler yayınlıyor. Browserbase fare titremesi ekliyor. OpenAI Operator yazım hatası simülasyonu getiriyor. Her framework nesli, yukarıda açıklanan tespit yüzeyinin bir kısmını kapatıyor.
2026'da işe yarayan teknikler 2027'ye kadar güncelleme gerektirecek. Ancak altta yatan gerçeklik değişmeyecek: yapay zeka ajanları görevleri yürütür. İnsanlar web sitelerini deneyimler. Bu asimetri, ajanların uyum sağlamak için kullandığı belirli teknikler ne olursa olsun sinyal üretir.
Yapay zeka ajanlarını bir kez çözülmüş bir problem olarak değil, kalıcı ve gelişen bir kategori olarak ele alan tespit yığınları görünürlüğü koruyacak. Tek bir dedektör yayınlayıp yoluna devam edenler, kapsamlarının sessizce bozulduğunu görecek.