{"id":44706,"date":"2026-09-15T09:07:58","date_gmt":"2026-09-15T06:07:58","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/"},"modified":"2026-09-15T09:08:27","modified_gmt":"2026-09-15T06:08:27","slug":"ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/","title":{"rendered":"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus&#8217;u: G\u00fcvenilirli\u011fin Anahtar\u0131"},"content":{"rendered":"<h2>Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus&#8217;u: G\u00fcvenilirli\u011fin Anahtar\u0131<\/h2>\n<p>Ajan sistemlerin g\u00fcvenilirli\u011fini ve dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 art\u0131rmak i\u00e7in ge\u00e7ersiz giri\u015fleri kesinlikle reddetmesi neden hayati \u00f6nem ta\u015f\u0131r? Bu makale, ajan yamalar\u0131n\u0131n test s\u00fcre\u00e7lerinde kullan\u0131labilecek \u00f6zel bir &#8220;reddetme corpus&#8217;u&#8221; olu\u015fturman\u0131n inceliklerini ve pratik ad\u0131mlar\u0131n\u0131 ele al\u0131yor. Yaz\u0131l\u0131m d\u00fcnyas\u0131nda, \u00f6zellikle yapay zeka (YZ) tabanl\u0131 ajanlar\u0131n yayg\u0131nla\u015fmas\u0131yla birlikte, sistemlerin beklenmedik veya hatal\u0131 girdilere nas\u0131l tepki verdi\u011fi giderek daha kritik bir hal alm\u0131\u015ft\u0131r. \u00c7o\u011fu zaman, sistemlerin &#8220;zarif\u00e7e ba\u015far\u0131s\u0131z olmas\u0131&#8221; (graceful failure) istenir; ancak bu, ge\u00e7ersiz girdiler s\u00f6z konusu oldu\u011funda yan\u0131lt\u0131c\u0131 bir yakla\u015f\u0131m olabilir. Ger\u00e7ekten de, baz\u0131 durumlarda ge\u00e7ersiz bir girdinin a\u00e7\u0131k\u00e7a reddedilmesi, sistemin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc, g\u00fcvenli\u011fini ve \u00f6ng\u00f6r\u00fclebilirli\u011fini sa\u011flamak i\u00e7in tek do\u011fru yoldur.<\/p>\n<h2>Giri\u015f: Neden Ge\u00e7ersiz Giri\u015fler Ba\u015far\u0131s\u0131z Olmal\u0131?<\/h2>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn dijital ekosisteminde, yaz\u0131l\u0131m ajanlar\u0131 hayat\u0131m\u0131z\u0131n bir\u00e7ok alan\u0131nda kar\u015f\u0131m\u0131za \u00e7\u0131k\u0131yor: ak\u0131ll\u0131 asistanlardan end\u00fcstriyel otomasyon sistemlerine, finansal i\u015flem robotlar\u0131ndan sa\u011fl\u0131k hizmetlerindeki te\u015fhis destek sistemlerine kadar geni\u015f bir yelpazede faaliyet g\u00f6steriyorlar. Bu ajanlar\u0131n karma\u015f\u0131kl\u0131\u011f\u0131 artt\u0131k\u00e7a, ald\u0131klar\u0131 girdilerin \u00e7e\u015fitlili\u011fi ve potansiyel hata kaynaklar\u0131 da \u00e7o\u011falmaktad\u0131r. Peki, bir ajan ge\u00e7ersiz bir giri\u015fle kar\u015f\u0131la\u015ft\u0131\u011f\u0131nda ne yapmal\u0131d\u0131r? &#8220;Hata vermeden devam et&#8221; veya &#8220;en iyi tahmini yap&#8221; gibi yakla\u015f\u0131mlar ilk bak\u0131\u015fta kullan\u0131c\u0131 dostu gibi g\u00f6r\u00fcnse de, uzun vadede ciddi sorunlara yol a\u00e7abilir. Asl\u0131nda, \u00e7o\u011fu senaryoda, ge\u00e7ersiz bir giri\u015fin a\u00e7\u0131k\u00e7a ve kararl\u0131l\u0131kla reddedilmesi, sistemin g\u00fcvenilirli\u011fi ve b\u00fct\u00fcnl\u00fc\u011f\u00fc a\u00e7\u0131s\u0131ndan \u00e7ok daha sa\u011fl\u0131kl\u0131 bir yakla\u015f\u0131md\u0131r.<\/p>\n<p>Ge\u00e7ersiz giri\u015fleri &#8220;yutmak&#8221; veya &#8220;d\u00fczeltmeye \u00e7al\u0131\u015fmak&#8221;, genellikle g\u00f6r\u00fcnmez hatalara, yanl\u0131\u015f hesaplamalara, g\u00fcvenlik a\u00e7\u0131klar\u0131na ve tahmin edilemez davran\u0131\u015flara zemin haz\u0131rlar. \u00d6rne\u011fin, bir finansal ajan hatal\u0131 bir d\u00f6viz kuru verisini sessizce i\u015fledi\u011finde, milyonlarca liral\u0131k zarara yol a\u00e7abilir. Ya da bir ak\u0131ll\u0131 ev sistemi, anlams\u0131z bir sesli komutu yanl\u0131\u015f yorumlayarak istenmeyen bir eylemi tetikleyebilir. Bu t\u00fcr durumlar, sadece maddi kay\u0131plara de\u011fil, ayn\u0131 zamanda kullan\u0131c\u0131 g\u00fcveninin sars\u0131lmas\u0131na ve sistemin itibar\u0131n\u0131n zedelenmesine de neden olur. Bu nedenle, ajanlar\u0131n, \u00f6zellikle de kritik g\u00f6revler \u00fcstlenenlerin, ge\u00e7ersiz girdileri net bir \u015fekilde tan\u0131mlay\u0131p reddetme yetene\u011fi, temel bir gereksinim haline gelmi\u015ftir. Bu reddetme s\u00fcrecinin etkinli\u011fini test etmek ve s\u00fcrd\u00fcrmek i\u00e7in ise \u00f6zel bir &#8220;reddetme corpus&#8217;u&#8221; (must-reject corpus) olu\u015fturmak elzemdir.<\/p>\n<p>Bu makale boyunca, ajan yamalar\u0131n\u0131n (agent patches) sistem \u00fczerindeki etkilerini, ge\u00e7ersiz giri\u015flerin neden bu kadar kritik bir sorun oldu\u011funu ve bu sorunu \u00e7\u00f6zmek i\u00e7in nas\u0131l sa\u011flam bir &#8220;reddetme veri k\u00fcmesi&#8221; (corpus) olu\u015fturulaca\u011f\u0131n\u0131 detayl\u0131 bir \u015fekilde inceleyece\u011fiz. Ayr\u0131ca, ger\u00e7ek d\u00fcnya senaryolar\u0131ndan \u00f6rnekler sunarak, bu yakla\u015f\u0131m\u0131n neden vazge\u00e7ilmez oldu\u011funu vurgulayacak ve bu stratejinin otomatik test s\u00fcre\u00e7lerine nas\u0131l entegre edilebilece\u011fini g\u00f6sterece\u011fiz. Amac\u0131m\u0131z, geli\u015ftiricilere ve test m\u00fchendislerine, ajan sistemlerinin gelecekteki yamalar\u0131na kar\u015f\u0131 dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 art\u0131rmak i\u00e7in pratik ve uygulanabilir bir yol haritas\u0131 sunmakt\u0131r. Bu sayede, ajanlar\u0131m\u0131z\u0131n sadece i\u015flevsel de\u011fil, ayn\u0131 zamanda her t\u00fcrl\u00fc beklenmedik duruma kar\u015f\u0131 g\u00fcvenilir ve sa\u011flam olmas\u0131n\u0131 sa\u011flayabiliriz. Ge\u00e7ersiz giri\u015flerin ba\u015far\u0131s\u0131z olmas\u0131 gerekti\u011fi ilkesi, asl\u0131nda sistemlerimizin sa\u011fl\u0131\u011f\u0131n\u0131 korumak i\u00e7in att\u0131\u011f\u0131m\u0131z ilk ve en \u00f6nemli ad\u0131md\u0131r.<\/p>\n<h2>Ajan Yamalar\u0131 ve G\u00fcvenilirlik Kavram\u0131<\/h2>\n<p>Yaz\u0131l\u0131m d\u00fcnyas\u0131nda &#8220;ajan&#8221; (agent) terimi, belirli bir ortamda otonom olarak hareket edebilen, alg\u0131layabilen ve karar verebilen yaz\u0131l\u0131m varl\u0131klar\u0131n\u0131 ifade eder. Bu ajanlar, basit bir otomasyon beti\u011finden (script) karma\u015f\u0131k bir yapay zeka sistemine kadar geni\u015f bir yelpazede olabilir. \u00d6rne\u011fin, bir sohbet robotu (chatbot), bir end\u00fcstriyel robot kontrol yaz\u0131l\u0131m\u0131, bir siber g\u00fcvenlik izleme arac\u0131 veya bir ak\u0131ll\u0131 sens\u00f6r a\u011f\u0131, hepsi birer ajan olarak kabul edilebilir. Bu ajanlar, zamanla yeni \u00f6zellikler eklenmesi, performans iyile\u015ftirmeleri yap\u0131lmas\u0131 veya bulunan hatalar\u0131n giderilmesi amac\u0131yla g\u00fcncellemeler al\u0131r. \u0130\u015fte bu g\u00fcncellemelere &#8220;yama&#8221; (patch) denir. Yamalar, ajanlar\u0131n daha iyi \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamak i\u00e7in kritik \u00f6neme sahiptir, ancak ayn\u0131 zamanda yeni sorunlar\u0131 da beraberinde getirme potansiyeli ta\u015f\u0131rlar.<\/p>\n<p>Bir yama uyguland\u0131\u011f\u0131nda, geli\u015ftiriciler genellikle ana odaklar\u0131n\u0131 yeni eklenen \u00f6zelliklerin veya giderilen hatalar\u0131n do\u011fru \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131na yo\u011funla\u015ft\u0131r\u0131r. Ancak, yaman\u0131n mevcut i\u015flevleri bozmad\u0131\u011f\u0131ndan, yani &#8220;gerileme&#8221; (regression) yaratmad\u0131\u011f\u0131ndan emin olmak da ayn\u0131 derecede \u00f6nemlidir. \u00d6zellikle ajanlar\u0131n ald\u0131\u011f\u0131 girdileri i\u015fleme bi\u00e7imleri, yamalarla birlikte beklenmedik \u015fekillerde de\u011fi\u015febilir. Bir yama, ge\u00e7erli bir girdiyi daha \u00f6nce oldu\u011fu gibi i\u015flemeye devam ederken, daha \u00f6nce do\u011fru bir \u015fekilde reddedilen ge\u00e7ersiz bir girdiyi art\u0131k kabul etmeye ba\u015flayabilir veya tam tersi bir durum ortaya \u00e7\u0131kabilir. Bu t\u00fcr gerilemeler, ajan sistemlerinin &#8220;g\u00fcvenilirli\u011fini&#8221; (reliability) do\u011frudan etkiler. G\u00fcvenilirlik, bir sistemin belirli bir s\u00fcre boyunca, belirli ko\u015fullar alt\u0131nda, belirtilen i\u015flevleri hatas\u0131z bir \u015fekilde yerine getirme yetene\u011fidir.<\/p>\n<p>Ajanlar i\u00e7in g\u00fcvenilirlik, sadece do\u011fru \u00e7\u0131kt\u0131 \u00fcretmekle s\u0131n\u0131rl\u0131 de\u011fildir; ayn\u0131 zamanda hatal\u0131 veya beklenmedik durumlara kar\u015f\u0131 dayan\u0131kl\u0131l\u0131k anlam\u0131na da gelir. Ge\u00e7ersiz giri\u015fler, bu dayan\u0131kl\u0131l\u0131\u011f\u0131 test eden en \u00f6nemli unsurlardan biridir. E\u011fer bir ajan, ge\u00e7ersiz bir girdiyi do\u011fru bir \u015fekilde reddedemezse, bu durum zincirleme bir reaksiyona yol a\u00e7abilir: yanl\u0131\u015f dahili durumlar, hatal\u0131 kararlar, g\u00fcvenlik a\u00e7\u0131klar\u0131 veya sistemin tamamen \u00e7\u00f6kmesi. Bu nedenle, ajan yamalar\u0131 yay\u0131nlanmadan \u00f6nce, sadece yeni i\u015flevlerin de\u011fil, ayn\u0131 zamanda sistemin ge\u00e7ersiz giri\u015flere kar\u015f\u0131 mevcut direncinin de bozulmad\u0131\u011f\u0131ndan emin olmak hayati \u00f6nem ta\u015f\u0131r. Bu, kapsaml\u0131 bir gerileme testi (regression testing) stratejisi gerektirir ve bu stratejinin merkezinde, ajanlar\u0131n kesinlikle reddetmesi gereken girdileri i\u00e7eren \u00f6zel bir &#8220;reddetme veri k\u00fcmesi&#8221; (must-reject corpus) bulunmal\u0131d\u0131r. Bu veri k\u00fcmesi, her yama uyguland\u0131\u011f\u0131nda, ajan\u0131m\u0131z\u0131n hala &#8220;do\u011fru bir \u015fekilde ba\u015far\u0131s\u0131z oldu\u011funu&#8221; teyit etmemizi sa\u011flar. Ajanlar\u0131n otonom do\u011fas\u0131 g\u00f6z \u00f6n\u00fcne al\u0131nd\u0131\u011f\u0131nda, bir kez da\u011f\u0131t\u0131ld\u0131klar\u0131nda s\u00fcrekli denetim alt\u0131nda tutulmalar\u0131 zor olabilir; bu da ba\u015flang\u0131\u00e7taki testlerin sa\u011flaml\u0131\u011f\u0131n\u0131n ne kadar kritik oldu\u011funu bir kez daha ortaya koyar. G\u00fcvenilirlik, kullan\u0131c\u0131lar\u0131n sisteme olan inanc\u0131n\u0131 peki\u015ftirir ve ajanlar\u0131n ger\u00e7ek d\u00fcnya ortamlar\u0131nda ba\u015far\u0131l\u0131 bir \u015fekilde faaliyet g\u00f6stermesini sa\u011flar.<\/p>\n<h2>Ge\u00e7ersiz Giri\u015f Nedir ve Neden Kritik Bir Sorundur?<\/h2>\n<p>Ge\u00e7ersiz giri\u015f (invalid input), bir yaz\u0131l\u0131m sisteminin veya ajan\u0131n bekledi\u011fi format, de\u011fer aral\u0131\u011f\u0131, t\u00fcr veya anlamsal yap\u0131ya uymayan her t\u00fcrl\u00fc veridir. Bu, basit bir say\u0131 beklenen yere metin girilmesinden, karma\u015f\u0131k bir komutun s\u00f6zdizimsel olarak hatal\u0131 olmas\u0131na veya g\u00fcvenlik a\u00e7\u0131s\u0131ndan riskli karakterler i\u00e7ermesine kadar geni\u015f bir yelpazeyi kapsar. Ge\u00e7ersiz giri\u015fler, genellikle k\u00f6t\u00fc niyetli sald\u0131r\u0131lar, kullan\u0131c\u0131 hatalar\u0131, entegre sistemlerden gelen bozuk veriler veya yaz\u0131l\u0131m hatalar\u0131 gibi \u00e7e\u015fitli kaynaklardan kaynaklanabilir. Her ne kadar &#8220;hata&#8221; olarak adland\u0131r\u0131lsa da, bu t\u00fcr girdilerin sistem \u00fczerindeki potansiyel etkileri, basit bir uyar\u0131 mesaj\u0131n\u0131n \u00e7ok \u00f6tesine ge\u00e7ebilir ve bu nedenle kritik bir sorun olarak ele al\u0131nmal\u0131d\u0131r.<\/p>\n<p>Ge\u00e7ersiz giri\u015flerin neden bu kadar kritik oldu\u011funu anlamak i\u00e7in, yol a\u00e7abilece\u011fi potansiyel sorunlara yak\u0131ndan bakmak gerekir:<\/p>\n<ul>\n<li><strong>G\u00fcvenlik A\u00e7\u0131klar\u0131:<\/strong> Belki de en ciddi risk, ge\u00e7ersiz giri\u015flerin g\u00fcvenlik a\u00e7\u0131klar\u0131na yol a\u00e7mas\u0131d\u0131r. SQL enjeksiyonu (SQL injection), komut enjeksiyonu (command injection), \u00e7apraz site betik \u00e7al\u0131\u015ft\u0131rma (Cross-Site Scripting &#8211; XSS) gibi sald\u0131r\u0131lar, ge\u00e7ersiz veya k\u00f6t\u00fc niyetli girdilerin sistem taraf\u0131ndan yeterince do\u011frulanmamas\u0131 ve filtrelenmemesi sonucu ortaya \u00e7\u0131kar. Bir ajan, bekledi\u011fi verinin \u00f6tesinde bir komut veya betik par\u00e7as\u0131 ald\u0131\u011f\u0131nda ve bunu yorumlamaya \u00e7al\u0131\u015ft\u0131\u011f\u0131nda, sald\u0131rganlar sistemin kontrol\u00fcn\u00fc ele ge\u00e7irebilir, hassas verilere eri\u015febilir veya sistemin davran\u0131\u015f\u0131n\u0131 manip\u00fcle edebilir.<\/li>\n<li><strong>Sistem Karars\u0131zl\u0131\u011f\u0131 ve \u00c7\u00f6kmeler:<\/strong> Bir ajan, beklenmeyen bir veri t\u00fcr\u00fc veya format\u0131yla kar\u015f\u0131la\u015ft\u0131\u011f\u0131nda, bu durum genellikle \u00e7al\u0131\u015fma zaman\u0131 hatalar\u0131na (runtime errors) yol a\u00e7ar. Bu hatalar, bellek ta\u015fmalar\u0131 (buffer overflows), s\u0131f\u0131ra b\u00f6lme hatalar\u0131 veya nesne referans\u0131 hatalar\u0131 gibi durumlara d\u00f6n\u00fc\u015febilir. Sonu\u00e7 olarak, ajan karars\u0131z hale gelebilir, donabilir veya tamamen \u00e7\u00f6kebilir. Bu t\u00fcr \u00e7\u00f6kmeler, \u00f6zellikle kritik altyap\u0131 veya hizmetlerde faaliyet g\u00f6steren ajanlar i\u00e7in kabul edilemez sonu\u00e7lar do\u011furur.<\/li>\n<li><strong>Veri B\u00fct\u00fcnl\u00fc\u011f\u00fc Bozukluklar\u0131:<\/strong> Ge\u00e7ersiz giri\u015fler, sistemin dahili veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc bozabilir. \u00d6rne\u011fin, bir veritaban\u0131na yanl\u0131\u015f formatta veya aral\u0131kta bir veri yaz\u0131ld\u0131\u011f\u0131nda, bu veri ilerideki i\u015flemler i\u00e7in hatal\u0131 sonu\u00e7lar \u00fcretebilir. Bu durum, uzun vadede sistemin g\u00fcvenilirli\u011fini ve tutarl\u0131l\u0131\u011f\u0131n\u0131 ciddi \u015fekilde etkiler, hatal\u0131 raporlamalara veya yanl\u0131\u015f kararlara yol a\u00e7ar.<\/li>\n<li><strong>Yanl\u0131\u015f veya \u00d6ng\u00f6r\u00fclemeyen Davran\u0131\u015f:<\/strong> Ge\u00e7ersiz bir girdiyi &#8220;d\u00fczeltmeye&#8221; veya &#8220;tahmin etmeye&#8221; \u00e7al\u0131\u015fan ajanlar, genellikle yanl\u0131\u015f veya \u00f6ng\u00f6r\u00fclemeyen davran\u0131\u015flar sergiler. \u00d6rne\u011fin, bir sohbet robotu anlams\u0131z bir ifadeyi yanl\u0131\u015fl\u0131kla ge\u00e7erli bir komut olarak yorumlayabilir ve kullan\u0131c\u0131n\u0131n istemedi\u011fi bir eylemi ger\u00e7ekle\u015ftirebilir. Bu durum, kullan\u0131c\u0131 deneyimini olumsuz etkiler ve sistemin g\u00fcvenilirli\u011fini sorgulat\u0131r.<\/li>\n<li><strong>Hata Ay\u0131klama Zorluklar\u0131:<\/strong> Ge\u00e7ersiz giri\u015flerin sessizce i\u015flenmesi veya yanl\u0131\u015f yorumlanmas\u0131, hatalar\u0131n tespitini ve ay\u0131klanmas\u0131n\u0131 son derece zorla\u015ft\u0131r\u0131r. Sorunun kayna\u011f\u0131n\u0131 bulmak, \u00f6zellikle karma\u015f\u0131k ajan sistemlerinde, saatler veya g\u00fcnler s\u00fcrebilir ve geli\u015ftirme maliyetlerini art\u0131r\u0131r.<\/li>\n<\/ul>\n<p>Bu nedenlerle, ge\u00e7ersiz giri\u015flerin sadece bir &#8220;hata&#8221; olarak de\u011fil, potansiyel bir felaket kayna\u011f\u0131 olarak g\u00f6r\u00fclmesi ve kesinlikle reddedilmesi esast\u0131r. Bu reddetme mekanizmas\u0131n\u0131n sa\u011flaml\u0131\u011f\u0131n\u0131 test etmek ve her yama sonras\u0131nda bu sa\u011flaml\u0131\u011f\u0131n devam etti\u011finden emin olmak i\u00e7in \u00f6zel bir &#8220;reddetme corpus&#8217;u&#8221; olu\u015fturmak, ajan sistemlerinin uzun \u00f6m\u00fcrl\u00fc ve g\u00fcvenilir olmas\u0131 i\u00e7in at\u0131lmas\u0131 gereken kritik bir ad\u0131md\u0131r.<\/p>\n<h2>&#8220;Reddetme Corpus&#8217;u&#8221; Olu\u015fturman\u0131n \u00d6nemi ve Metodolojisi<\/h2>\n<p>Bir ajan sisteminin ge\u00e7ersiz giri\u015flere kar\u015f\u0131 dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 sa\u011flamak ve s\u00fcrd\u00fcrmek i\u00e7in &#8220;reddetme corpus&#8217;u&#8221; (must-reject corpus) olu\u015fturmak, proaktif bir test stratejisinin temelini olu\u015fturur. Bu corpus, ajan taraf\u0131ndan kesinlikle reddedilmesi gereken t\u00fcm bilinen ge\u00e7ersiz giri\u015f senaryolar\u0131n\u0131 i\u00e7eren \u00f6zel bir veri k\u00fcmesidir. Amac\u0131, her yeni yama veya kod de\u011fi\u015fikli\u011finden sonra, ajan\u0131n hala bu t\u00fcr girdileri do\u011fru bir \u015fekilde tan\u0131mlay\u0131p reddetti\u011fini otomatik olarak do\u011frulamakt\u0131r. Bu sayede, &#8220;gerileme hatalar\u0131&#8221; (regression bugs) nedeniyle g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131n veya karars\u0131zl\u0131klar\u0131n yeniden ortaya \u00e7\u0131kmas\u0131 engellenir.<\/p>\n<p>Reddetme corpus&#8217;unun \u00f6nemi, ajanlar\u0131n s\u00fcrekli evrim ge\u00e7iren do\u011fas\u0131nda yatar. Yeni \u00f6zellikler eklendik\u00e7e, mevcut kod taban\u0131nda de\u011fi\u015fiklikler yap\u0131l\u0131r ve bu de\u011fi\u015fiklikler, daha \u00f6nce do\u011fru \u00e7al\u0131\u015fan giri\u015f do\u011frulama (input validation) mant\u0131\u011f\u0131n\u0131 istemeden bozabilir. Bir reddetme corpus&#8217;u olmadan, geli\u015ftiricilerin her yama sonras\u0131 manuel olarak y\u00fczlerce veya binlerce ge\u00e7ersiz giri\u015f senaryosunu test etmesi neredeyse imkans\u0131zd\u0131r. Otomatikle\u015ftirilmi\u015f bir reddetme corpus&#8217;u ise bu s\u00fcreci h\u0131zland\u0131r\u0131r, tutarl\u0131l\u0131k sa\u011flar ve insan hatas\u0131 riskini azalt\u0131r.<\/p>\n<h3>Ge\u00e7ersiz Giri\u015f Senaryolar\u0131 Nas\u0131l Belirlenir?<\/h3>\n<p>Etkili bir reddetme corpus&#8217;u olu\u015fturman\u0131n ilk ad\u0131m\u0131, hangi giri\u015flerin ge\u00e7ersiz oldu\u011funu kapsaml\u0131 bir \u015fekilde belirlemektir. Bu s\u00fcre\u00e7, sadece teknik spesifikasyonlar\u0131 de\u011fil, ayn\u0131 zamanda olas\u0131 k\u00f6t\u00fc niyetli kullan\u0131m senaryolar\u0131n\u0131 da dikkate almal\u0131d\u0131r. \u0130\u015fte baz\u0131 metodolojiler:<\/p>\n<ul>\n<li><strong>Girdi \u015eartnamelerinin \u0130ncelenmesi:<\/strong> Ajan\u0131n bekledi\u011fi her bir girdi i\u00e7in tan\u0131mlanm\u0131\u015f formatlar, veri tipleri, de\u011fer aral\u0131klar\u0131, uzunluk k\u0131s\u0131tlamalar\u0131 ve karakter setleri detayl\u0131ca incelenmelidir. \u00d6rne\u011fin, bir ya\u015f alan\u0131 sadece 0-120 aras\u0131 tam say\u0131 kabul ediyorsa, &#8220;-5&#8221;, &#8220;150&#8221;, &#8220;abc&#8221; gibi de\u011ferler ge\u00e7ersizdir.<\/li>\n<li><strong>S\u0131n\u0131r De\u011fer Analizi (Boundary Value Analysis):<\/strong> Ge\u00e7erli aral\u0131klar\u0131n s\u0131n\u0131rlar\u0131nda ve hemen d\u0131\u015f\u0131nda kalan de\u011ferler test edilmelidir. \u00d6rne\u011fin, 0 ve 120 ge\u00e7erli ise, -1, 121 gibi de\u011ferler ge\u00e7ersiz olmal\u0131d\u0131r.<\/li>\n<li><strong>Hata Kay\u0131tlar\u0131n\u0131n ve G\u00fcvenlik Raporlar\u0131n\u0131n \u0130ncelenmesi:<\/strong> Ge\u00e7mi\u015fte ya\u015fanan g\u00fcvenlik a\u00e7\u0131klar\u0131 veya sistem \u00e7\u00f6kmelerine yol a\u00e7an giri\u015fler, reddetme corpus&#8217;una eklenmelidir. Bu, &#8220;ger\u00e7ek d\u00fcnya&#8221; senaryolar\u0131n\u0131 yakalamak i\u00e7in \u00e7ok de\u011ferli bir kaynakt\u0131r.<\/li>\n<li><strong>Fuzzing Testleri:<\/strong> Rastgele veya yar\u0131 rastgele, bozuk veriler \u00fcreterek ajan sistemine beslemek (fuzzing), beklenmedik ge\u00e7ersiz giri\u015f t\u00fcrlerini ke\u015ffetmeye yard\u0131mc\u0131 olabilir. Bu y\u00f6ntem, insan g\u00f6z\u00fcnden ka\u00e7abilecek kenar durumlar\u0131 (edge cases) ortaya \u00e7\u0131kar\u0131r.<\/li>\n<li><strong>K\u00f6t\u00fc Niyetli Giri\u015f Desenleri (Malicious Input Patterns):<\/strong> SQL enjeksiyonu, XSS, dizin ge\u00e7i\u015fi (directory traversal) gibi bilinen sald\u0131r\u0131 vekt\u00f6rleri, farkl\u0131 varyasyonlarla corpus&#8217;a dahil edilmelidir. Bu t\u00fcr girdiler, ajan\u0131n g\u00fcvenlik mekanizmalar\u0131n\u0131 test eder.<\/li>\n<li><strong>Anlamsal Ge\u00e7ersizlikler:<\/strong> S\u00f6zdizimsel olarak do\u011fru g\u00f6r\u00fcnen ancak mant\u0131ksal olarak anlams\u0131z olan giri\u015fler de dikkate al\u0131nmal\u0131d\u0131r. \u00d6rne\u011fin, bir komut &#8220;\u0131\u015f\u0131klar\u0131 a\u00e7&#8221; ve &#8220;\u0131\u015f\u0131klar\u0131 kapat&#8221; olabilir, ancak &#8220;\u0131\u015f\u0131klar\u0131 dans ettir&#8221; anlamsal olarak ge\u00e7ersiz olabilir (ajan\u0131n yetene\u011fine ba\u011fl\u0131 olarak).<\/li>\n<\/ul>\n<h3>Reddetme Corpus&#8217;u \u0130\u00e7in Veri Toplama ve Kategorizasyon<\/h3>\n<p>Senaryolar belirlendikten sonra, bu senaryolara kar\u015f\u0131l\u0131k gelen somut giri\u015f verileri toplanmal\u0131 ve d\u00fczenlenmelidir. Bu veri k\u00fcmesi, genellikle bir metin dosyas\u0131, CSV dosyas\u0131, JSON veya XML format\u0131nda saklan\u0131r ve her bir giri\u015f i\u00e7in beklenen reddetme nedeni (\u00f6rne\u011fin, &#8220;ge\u00e7ersiz format&#8221;, &#8220;aral\u0131k d\u0131\u015f\u0131&#8221;, &#8220;g\u00fcvenlik riski&#8221;) de belirtilir. Kategorizasyon, test sonu\u00e7lar\u0131n\u0131n yorumlanmas\u0131n\u0131 kolayla\u015ft\u0131r\u0131r ve hangi t\u00fcr ge\u00e7ersizliklerin ajan taraf\u0131ndan iyi ele al\u0131nd\u0131\u011f\u0131n\u0131, hangilerinin iyile\u015ftirme gerektirdi\u011fini anlamaya yard\u0131mc\u0131 olur.<\/p>\n<div class=\"code-container\">\n<pre><code>\n# \u00d6rnek bir reddetme corpus'u (JSON format\u0131nda)\n[\n  {\n    \"id\": \"INV001\",\n    \"input\": \"ya\u015f=-5\",\n    \"expected_rejection_reason\": \"aral\u0131k_d\u0131\u015f\u0131\",\n    \"description\": \"Negatif ya\u015f de\u011feri\"\n  },\n  {\n    \"id\": \"INV002\",\n    \"input\": \"ya\u015f=y\u00fczelli\",\n    \"expected_rejection_reason\": \"ge\u00e7ersiz_format\",\n    \"description\": \"Say\u0131 yerine metin ya\u015f de\u011feri\"\n  },\n  {\n    \"id\": \"INV003\",\n    \"input\": \"kullan\u0131c\u0131=' OR 1=1 --\",\n    \"expected_rejection_reason\": \"g\u00fcvenlik_riski_sql_injection\",\n    \"description\": \"SQL enjeksiyonu denemesi\"\n  },\n  {\n    \"id\": \"INV004\",\n    \"input\": \"<script>alert('XSS')<\/script>\",\n    \"expected_rejection_reason\": \"g\u00fcvenlik_riski_xss\",\n    \"description\": \"XSS denemesi\"\n  },\n  {\n    \"id\": \"INV005\",\n    \"input\": \"komut=\u0131\u015f\u0131klar\u0131_dans_ettir\",\n    \"expected_rejection_reason\": \"anlamsal_ge\u00e7ersiz\",\n    \"description\": \"Ajan\u0131n desteklemedi\u011fi anlams\u0131z komut\"\n  }\n]\n        <\/code><\/pre>\n<\/p><\/div>\n<p>Bu yap\u0131, her bir ge\u00e7ersiz giri\u015fin benzersiz bir kimli\u011fe, test edilecek girdiye, ajan\u0131n neden reddetmesi gerekti\u011fine dair bir a\u00e7\u0131klamaya ve iste\u011fe ba\u011fl\u0131 olarak daha detayl\u0131 bir tan\u0131ma sahip olmas\u0131n\u0131 sa\u011flar. Bu corpus, ajan geli\u015ftirme ve bak\u0131m s\u00fcrecinin ayr\u0131lmaz bir par\u00e7as\u0131 haline gelmeli ve ajan evrildik\u00e7e s\u00fcrekli olarak g\u00fcncellenmelidir. B\u00f6ylece, ajan yamalar\u0131n\u0131n getirebilece\u011fi potansiyel zafiyetlere kar\u015f\u0131 s\u00fcrekli bir savunma hatt\u0131 olu\u015fturulmu\u015f olur.<\/p>\n<h2>Ajan Yamalar\u0131n\u0131n Test Edilmesinde Reddetme Corpus&#8217;unun Rol\u00fc<\/h2>\n<p>Ajan sistemleri i\u00e7in bir yama (patch) yay\u0131nland\u0131\u011f\u0131nda, bu yaman\u0131n sadece yeni \u00f6zellikleri do\u011fru bir \u015fekilde uygulad\u0131\u011f\u0131ndan veya mevcut hatalar\u0131 giderdi\u011finden emin olmak yeterli de\u011fildir. Ayn\u0131 zamanda, yaman\u0131n daha \u00f6nce do\u011fru bir \u015fekilde reddedilen ge\u00e7ersiz giri\u015fleri yeniden kabul etmeye ba\u015flamad\u0131\u011f\u0131ndan veya ajan\u0131n genel giri\u015f do\u011frulama (input validation) mekanizmas\u0131n\u0131 bozmad\u0131\u011f\u0131ndan emin olmak kritik \u00f6neme sahiptir. \u0130\u015fte bu noktada, reddetme corpus&#8217;u (must-reject corpus) devreye girer ve ajan yamalar\u0131n\u0131n test edilmesinde merkezi bir rol oynar.<\/p>\n<p>Reddetme corpus&#8217;u, her yama uygulamas\u0131ndan sonra ajan\u0131n gerileme (regression) ya\u015fay\u0131p ya\u015famad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in tasarlanm\u0131\u015f \u00f6zel bir test senaryolar\u0131 k\u00fcmesidir. Bu corpus, ajan\u0131n beklenmedik veya hatal\u0131 girdilere kar\u015f\u0131 mevcut direncinin yeni kod de\u011fi\u015fiklikleriyle a\u015f\u0131nmad\u0131\u011f\u0131n\u0131 garanti eder. S\u00fcrekli Entegrasyon ve S\u00fcrekli Da\u011f\u0131t\u0131m (CI\/CD &#8211; Continuous Integration\/Continuous Deployment) s\u00fcre\u00e7lerinin vazge\u00e7ilmez bir par\u00e7as\u0131 haline gelmelidir. Bir yama geli\u015ftirildi\u011finde, kod taban\u0131na entegre edilmeden \u00f6nce, reddetme corpus&#8217;undaki t\u00fcm testlerden ge\u00e7irilmelidir. E\u011fer ajan, corpus&#8217;taki herhangi bir ge\u00e7ersiz girdiyi reddetmek yerine i\u015flerse veya farkl\u0131 bir hata kodu d\u00f6nd\u00fcr\u00fcrse (beklenen hata kodu yerine), bu bir gerileme olarak kabul edilir ve yaman\u0131n yay\u0131nlanmas\u0131 engellenmelidir.<\/p>\n<h3>Otomatik Test S\u00fcre\u00e7lerine Entegrasyon<\/h3>\n<p>Reddetme corpus&#8217;unun en b\u00fcy\u00fck g\u00fcc\u00fc, otomatik test s\u00fcre\u00e7lerine kolayca entegre edilebilmesidir. Bu entegrasyon, her kod de\u011fi\u015fikli\u011finde veya yama uygulamas\u0131nda ajan\u0131n giri\u015f do\u011frulama yeteneklerinin otomatik olarak test edilmesini sa\u011flar. \u0130\u015fte ad\u0131m ad\u0131m bir entegrasyon s\u00fcreci:<\/p>\n<ol>\n<li><strong>Test Ortam\u0131n\u0131n Haz\u0131rlanmas\u0131:<\/strong> Ajan\u0131n test edilecek s\u00fcr\u00fcm\u00fc, izole edilmi\u015f bir test ortam\u0131nda (\u00f6rne\u011fin, bir sanal makine veya konteyner i\u00e7inde) konu\u015fland\u0131r\u0131l\u0131r.<\/li>\n<li><strong>Test \u00c7er\u00e7evesi (Testing Framework) Kullan\u0131m\u0131:<\/strong> Python&#8217;daki <code>pytest<\/code>, Java&#8217;daki <code>JUnit<\/code> veya JavaScript&#8217;teki <code>Jest<\/code> gibi pop\u00fcler test \u00e7er\u00e7eveleri, reddetme corpus&#8217;unu okumak ve ajana giri\u015fleri g\u00f6ndermek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><strong>Corpus&#8217;un Y\u00fcklenmesi:<\/strong> Reddetme corpus&#8217;u (\u00f6rne\u011fin, JSON dosyas\u0131 olarak) test s\u00fcreci ba\u015flad\u0131\u011f\u0131nda y\u00fcklenir.<\/li>\n<li><strong>Giri\u015flerin G\u00f6nderilmesi ve Yan\u0131tlar\u0131n Do\u011frulanmas\u0131:<\/strong> Her bir ge\u00e7ersiz giri\u015f, ajan\u0131n ilgili giri\u015f i\u015fleme fonksiyonuna veya API&#8217;sine g\u00f6nderilir. Test kodu, ajandan d\u00f6nen yan\u0131t\u0131 (hata kodu, hata mesaj\u0131 vb.) beklenen reddetme nedeni ile kar\u015f\u0131la\u015ft\u0131r\u0131r.\n<div class=\"code-container\">\n<pre><code>\n# Python'da basit bir test fonksiyonu \u00f6rne\u011fi (pytest ile)\nimport pytest\nimport json\n\n# Ajan\u0131n giri\u015f i\u015fleme fonksiyonunu sim\u00fcle edelim\ndef process_agent_input(input_data):\n    if \"ya\u015f\" in input_data:\n        try:\n            age = int(input_data.split(\"=\")[1])\n            if not (0 <= age <= 120):\n                return {\"status\": \"error\", \"reason\": \"aral\u0131k_d\u0131\u015f\u0131\"}\n            return {\"status\": \"success\", \"data\": age}\n        except ValueError:\n            return {\"status\": \"error\", \"reason\": \"ge\u00e7ersiz_format\"}\n    if \"kullan\u0131c\u0131\" in input_data and \"OR 1=1\" in input_data:\n        return {\"status\": \"error\", \"reason\": \"g\u00fcvenlik_riski_sql_injection\"}\n    # Di\u011fer durumlar i\u00e7in varsay\u0131lan reddetme veya ba\u015far\u0131l\u0131 i\u015fleme\n    return {\"status\": \"success\", \"data\": input_data}\n\n# Reddetme corpus'unu y\u00fckle\nwith open(\"must_reject_corpus.json\", \"r\", encoding=\"utf-8\") as f:\n    reject_corpus = json.load(f)\n\n# Parametreli test fonksiyonu\n@pytest.mark.parametrize(\"test_case\", reject_corpus)\ndef test_agent_rejection(test_case):\n    input_str = test_case[\"input\"]\n    expected_reason = test_case[\"expected_rejection_reason\"]\n    description = test_case[\"description\"]\n\n    print(f\"\\nTest Ediliyor: {description} - Giri\u015f: '{input_str}'\")\n    response = process_agent_input(input_str)\n\n    assert response[\"status\"] == \"error\", \\\n        f\"Ajan ge\u00e7ersiz giri\u015fi reddetmedi: '{input_str}'. Beklenen 'error', Al\u0131nan '{response['status']}'\"\n    assert response[\"reason\"] == expected_reason, \\\n        f\"Ajan yanl\u0131\u015f reddetme nedeni d\u00f6nd\u00fcrd\u00fc: '{input_str}'. Beklenen '{expected_reason}', Al\u0131nan '{response['reason']}'\"\n    print(f\"Ba\u015far\u0131l\u0131: '{input_str}' do\u011fru \u015fekilde '{expected_reason}' ile reddedildi.\")\n\n# must_reject_corpus.json dosyas\u0131n\u0131n i\u00e7eri\u011fi (yukar\u0131daki \u00f6rnekteki gibi)\n                <\/code><\/pre>\n<\/p><\/div>\n<\/li>\n<li><strong>Raporlama:<\/strong> Test sonu\u00e7lar\u0131, CI\/CD boru hatt\u0131n\u0131n bir par\u00e7as\u0131 olarak otomatik raporlan\u0131r. Herhangi bir ba\u015far\u0131s\u0131zl\u0131k durumunda, ilgili geli\u015ftiricilere an\u0131nda bildirim g\u00f6nderilir.<\/li>\n<\/ol>\n<p>Bu yakla\u015f\u0131m, ajan geli\u015ftirme d\u00f6ng\u00fcs\u00fcne g\u00fc\u00e7l\u00fc bir kalite g\u00fcvencesi katman\u0131 ekler. Geli\u015ftiriciler, yapt\u0131klar\u0131 de\u011fi\u015fikliklerin mevcut giri\u015f do\u011frulama mant\u0131\u011f\u0131n\u0131 bozmayaca\u011f\u0131ndan emin olabilirler. Ayr\u0131ca, bu s\u00fcre\u00e7, ajan\u0131n g\u00fcvenlik duru\u015funu s\u00fcrekli olarak g\u00fc\u00e7lendirir, \u00e7\u00fcnk\u00fc bilinen k\u00f6t\u00fc niyetli giri\u015f desenleri her yama sonras\u0131 yeniden test edilir. Bir reddetme corpus'u, ajanlar\u0131n sadece i\u015flevsel de\u011fil, ayn\u0131 zamanda sa\u011flam ve g\u00fcvenilir olmas\u0131n\u0131 sa\u011flayan temel bir ara\u00e7t\u0131r. Bu sayede, ajanlar\u0131m\u0131z\u0131n \u00f6ng\u00f6r\u00fclemez bir d\u00fcnyada bile kararl\u0131 ve g\u00fcvenli bir \u015fekilde \u00e7al\u0131\u015fmaya devam etti\u011finden emin olabiliriz.<\/p>\n<h2>Ger\u00e7ek D\u00fcnya Senaryolar\u0131: Ba\u015far\u0131s\u0131zl\u0131klar\u0131n Maliyeti<\/h2>\n<p>Ge\u00e7ersiz giri\u015fleri do\u011fru bir \u015fekilde reddetmenin \u00f6nemi, teorik bir kavramdan \u00e7ok daha fazlas\u0131d\u0131r; ger\u00e7ek d\u00fcnyada ciddi sonu\u00e7lara yol a\u00e7abilen somut hatalar\u0131n \u00f6nlenmesiyle do\u011frudan ili\u015fkilidir. Ge\u00e7ersiz giri\u015flerin yeterince ele al\u0131nmad\u0131\u011f\u0131 durumlarda ortaya \u00e7\u0131kan \"ba\u015far\u0131s\u0131zl\u0131klar\u0131n maliyeti\", finansal kay\u0131plardan itibar zedelenmesine, hatta can g\u00fcvenli\u011fi risklerine kadar uzanabilir. \u0130\u015fte bu t\u00fcr senaryolardan baz\u0131lar\u0131:<\/p>\n<h3>Vaka Analizi 1: Finansal \u0130\u015flem Ajan\u0131 ve Hatal\u0131 Veri<\/h3>\n<p>Bir yat\u0131r\u0131m bankas\u0131nda faaliyet g\u00f6steren otonom bir finansal i\u015flem ajan\u0131 d\u00fc\u015f\u00fcnelim. Bu ajan, piyasa verilerini, d\u00f6viz kurlar\u0131n\u0131 ve \u015firket haberlerini analiz ederek belirli hisse senetleri \u00fczerinde al\u0131m\/sat\u0131m kararlar\u0131 veriyor. Bir g\u00fcn, harici bir veri sa\u011flay\u0131c\u0131dan gelen d\u00f6viz kuru ak\u0131\u015f\u0131nda, ondal\u0131k ay\u0131r\u0131c\u0131 yerine yanl\u0131\u015f bir karakter (\u00f6rne\u011fin, virg\u00fcl yerine nokta beklenirken, sistemin virg\u00fcl\u00fc bo\u015fluk olarak alg\u0131lamas\u0131) i\u00e7eren bozuk bir veri paketi geliyor. Ajan\u0131n giri\u015f do\u011frulama mekanizmas\u0131 bu format hatas\u0131n\u0131 yakalamaz ve bozuk veriyi ge\u00e7erli bir say\u0131 olarak yorumlamaya \u00e7al\u0131\u015f\u0131r. Sonu\u00e7 olarak, ajan, ger\u00e7ekte 1.2345 olmas\u0131 gereken bir kur de\u011ferini 12345 veya 1.23 olarak alg\u0131lar.<\/p>\n<p>Bu hatal\u0131 kur bilgisiyle i\u015flem yapmaya ba\u015flayan ajan, b\u00fcy\u00fck miktarlarda hisse senedini yanl\u0131\u015f fiyatlarla al\u0131p satar. Dakikalar i\u00e7inde, banka milyonlarca liral\u0131k zarara u\u011frar. Bu durumun tespit edilmesi ve d\u00fczeltilmesi, hem zaman hem de insan kayna\u011f\u0131 gerektirir. Burada, ge\u00e7ersiz bir giri\u015fin sessizce i\u015flenmesi, do\u011frudan finansal bir felakete yol a\u00e7m\u0131\u015ft\u0131r. E\u011fer ajan\u0131n bir \"reddetme corpus'u\" olsayd\u0131 ve bu corpus, ondal\u0131k ay\u0131r\u0131c\u0131 format hatalar\u0131n\u0131 i\u00e7eren senaryolar\u0131 kapsasayd\u0131, yama sonras\u0131 testlerde bu zafiyet tespit edilecek ve ajan, bozuk veriyi i\u015flemek yerine a\u00e7\u0131k\u00e7a reddederek bankay\u0131 bu b\u00fcy\u00fck zarardan koruyacakt\u0131.<\/p>\n<h3>Vaka Analizi 2: Ak\u0131ll\u0131 Ev Asistan\u0131 ve Anlams\u0131z Komutlar<\/h3>\n<p>Bir ak\u0131ll\u0131 ev asistan\u0131 (ajan), kullan\u0131c\u0131lardan gelen sesli komutlar\u0131 i\u015fleyerek \u0131\u015f\u0131klar\u0131 a\u00e7ma\/kapama, termostat\u0131 ayarlama veya kap\u0131lar\u0131 kilitleme gibi g\u00f6revleri yerine getiriyor. Geli\u015ftiriciler, asistan\u0131n ses tan\u0131ma yeteneklerini geli\u015ftiren bir yama yay\u0131nlar. Ancak bu yama, istemeden, belirli \"anlams\u0131z\" veya \"belirsiz\" komutlar\u0131 art\u0131k ge\u00e7erli komutlar olarak yorumlamaya ba\u015flamas\u0131na neden olur. \u00d6rne\u011fin, daha \u00f6nce \"perdeyi dans ettir\" gibi bir komutu \"anla\u015f\u0131lamad\u0131\" diye reddederken, yama sonras\u0131 bu komutu yanl\u0131\u015fl\u0131kla \"perdeyi a\u00e7\" olarak yorumlamaya ba\u015flar.<\/p>\n<p>Bir kullan\u0131c\u0131, evde yokken \u00e7ocuklar\u0131n\u0131n asistanla oynad\u0131\u011f\u0131n\u0131 ve rastgele, anlams\u0131z komutlar verdi\u011fini fark eder. Asistan, bu anlams\u0131z komutlardan birini \"kap\u0131lar\u0131 a\u00e7\" olarak yorumlar ve evin t\u00fcm kap\u0131 kilitlerini devre d\u0131\u015f\u0131 b\u0131rak\u0131r. Bu durum, evin g\u00fcvenlik zafiyetine yol a\u00e7ar ve potansiyel bir h\u0131rs\u0131zl\u0131k riskini beraberinde getirir. Kullan\u0131c\u0131, sisteme olan g\u00fcvenini tamamen kaybeder. Burada, anlamsal olarak ge\u00e7ersiz bir giri\u015fin do\u011fru bir \u015fekilde reddedilmemesi, g\u00fcvenlik a\u00e7\u0131s\u0131ndan ciddi bir riske ve kullan\u0131c\u0131 deneyiminde b\u00fcy\u00fck bir hayal k\u0131r\u0131kl\u0131\u011f\u0131na neden olmu\u015ftur. Bir reddetme corpus'u, yama sonras\u0131 bu t\u00fcr anlamsal gerilemeleri tespit ederek, asistan\u0131n sadece ge\u00e7erli komutlara tepki vermesini sa\u011flayacakt\u0131.<\/p>\n<h3>Vaka Analizi 3: End\u00fcstriyel Otomasyon Ajan\u0131 ve G\u00fcvenlik A\u00e7\u0131\u011f\u0131<\/h3>\n<p>B\u00fcy\u00fck bir \u00fcretim tesisindeki robotik kollar\u0131 kontrol eden bir otomasyon ajan\u0131, \u00fcretim hatlar\u0131ndan ve operat\u00f6rlerden gelen komutlar\u0131 i\u015fler. Ajan\u0131n API'si (Uygulama Programlama Aray\u00fcz\u00fc), robotik kolun h\u0131z\u0131n\u0131 ve konumunu ayarlamak i\u00e7in JSON format\u0131nda komutlar bekler. Geli\u015ftiriciler, performans iyile\u015ftirmeleri i\u00e7eren bir yama yay\u0131nlar. Ancak yama, API'nin giri\u015f do\u011frulama katman\u0131ndaki bir hatay\u0131 ortaya \u00e7\u0131kar\u0131r ve belirli \u00f6zel karakter dizilerini i\u00e7eren JSON girdilerini yeterince filtreleyemez.<\/p>\n<p>Bir siber sald\u0131rgan, bu zafiyeti ke\u015ffeder ve ajana, robotik kolun kontrol sistemine do\u011frudan komut enjekte eden (command injection) k\u00f6t\u00fc niyetli bir JSON girdisi g\u00f6nderir. Ajan, bu girdiyi reddetmek yerine i\u015fler ve sald\u0131rgan\u0131n komutunu robotik kolun i\u015fletim sisteminde \u00e7al\u0131\u015ft\u0131r\u0131r. Sonu\u00e7 olarak, robotik kol kontrol d\u0131\u015f\u0131 hareket etmeye ba\u015flar, \u00fcretim hatt\u0131na zarar verir ve hatta tesis \u00e7al\u0131\u015fanlar\u0131 i\u00e7in fiziksel bir g\u00fcvenlik riski olu\u015fturur. \u00dcretim durur, tesis b\u00fcy\u00fck maddi zarara u\u011frar ve itibar kayb\u0131 ya\u015fan\u0131r. Bu senaryoda, ge\u00e7ersiz ve k\u00f6t\u00fc niyetli bir giri\u015fin reddedilmemesi, hem maddi hem de can g\u00fcvenli\u011fi a\u00e7\u0131s\u0131ndan y\u0131k\u0131c\u0131 sonu\u00e7lar do\u011furmu\u015ftur. Bir reddetme corpus'u, bu t\u00fcr bilinen sald\u0131r\u0131 vekt\u00f6rlerini i\u00e7eren senaryolar\u0131 s\u00fcrekli olarak test ederek, yama sonras\u0131 ortaya \u00e7\u0131kan g\u00fcvenlik gerilemelerini engelleyebilirdi.<\/p>\n<p>Bu ger\u00e7ek d\u00fcnya senaryolar\u0131, ge\u00e7ersiz giri\u015fleri do\u011fru bir \u015fekilde reddetmenin sadece iyi bir uygulama de\u011fil, ayn\u0131 zamanda sistem g\u00fcvenli\u011fi, g\u00fcvenilirli\u011fi ve i\u015f s\u00fcreklili\u011fi i\u00e7in mutlak bir zorunluluk oldu\u011funu a\u00e7\u0131k\u00e7a g\u00f6stermektedir. Bir \"reddetme corpus'u\", ajan sistemlerinin bu t\u00fcr maliyetli ba\u015far\u0131s\u0131zl\u0131klar\u0131 \u00f6nlemesinde kilit bir rol oynar.<\/p>\n<h2>Sonu\u00e7 ve Gelecek Perspektifleri<\/h2>\n<p>Ajan sistemlerinin karma\u015f\u0131kl\u0131\u011f\u0131 ve otonom karakteri artt\u0131k\u00e7a, bu sistemlerin g\u00fcvenilirli\u011fi ve dayan\u0131kl\u0131l\u0131\u011f\u0131 her zamankinden daha kritik hale gelmektedir. Bu makale boyunca ele ald\u0131\u011f\u0131m\u0131z \u00fczere, \"ge\u00e7ersiz giri\u015flerin kesinlikle ba\u015far\u0131s\u0131z olmas\u0131\" (invalid input must still fail) ilkesi, sadece bir teknik detay olmaktan \u00f6te, ajanlar\u0131n g\u00fcvenli\u011fini, kararl\u0131l\u0131\u011f\u0131n\u0131 ve \u00f6ng\u00f6r\u00fclebilirli\u011fini sa\u011flaman\u0131n temelini olu\u015fturur. Ge\u00e7ersiz girdileri sessizce i\u015flemek veya yanl\u0131\u015f yorumlamak, finansal kay\u0131plardan g\u00fcvenlik a\u00e7\u0131klar\u0131na, hatta can g\u00fcvenli\u011fi risklerine kadar uzanan ciddi sonu\u00e7lara yol a\u00e7abilir. Bu nedenle, ajan yamalar\u0131n\u0131n yay\u0131nlanmas\u0131ndan \u00f6nce, sistemin ge\u00e7ersiz giri\u015flere kar\u015f\u0131 mevcut direncinin bozulmad\u0131\u011f\u0131ndan emin olmak i\u00e7in proaktif ve sa\u011flam test stratejileri geli\u015ftirmek zorunludur.<\/p>\n<p>Bir \"reddetme corpus'u\" (must-reject corpus) olu\u015fturmak ve bunu otomatik test s\u00fcre\u00e7lerine entegre etmek, bu stratejinin merkezinde yer al\u0131r. Bu \u00f6zel veri k\u00fcmesi, ajan\u0131n kesinlikle reddetmesi gereken t\u00fcm bilinen ge\u00e7ersiz giri\u015f senaryolar\u0131n\u0131 i\u00e7erir ve her yeni yama uyguland\u0131\u011f\u0131nda, ajan\u0131n hala bu t\u00fcr girdileri do\u011fru bir \u015fekilde tan\u0131mlay\u0131p reddetti\u011fini otomatik olarak do\u011frular. Bu yakla\u015f\u0131m, gerileme hatalar\u0131n\u0131 (regression bugs) \u00f6nler, geli\u015ftirme maliyetlerini d\u00fc\u015f\u00fcr\u00fcr ve en \u00f6nemlisi, ajan sistemlerinin ger\u00e7ek d\u00fcnya ortamlar\u0131nda g\u00fcvenle faaliyet g\u00f6stermesini sa\u011flar. Ge\u00e7ersiz giri\u015f senaryolar\u0131n\u0131n belirlenmesi, s\u0131n\u0131r de\u011fer analizinden fuzzing testlerine ve k\u00f6t\u00fc niyetli giri\u015f desenlerinin incelenmesine kadar \u00e7e\u015fitli metodolojileri kapsar. Bu senaryolar\u0131n sistematik bir \u015fekilde toplanmas\u0131, kategorize edilmesi ve otomatik test \u00e7er\u00e7eveleri arac\u0131l\u0131\u011f\u0131yla s\u00fcrekli olarak kullan\u0131lmas\u0131, ajan geli\u015ftirme d\u00f6ng\u00fcs\u00fcn\u00fcn ayr\u0131lmaz bir par\u00e7as\u0131 olmal\u0131d\u0131r.<\/p>\n<p>Gelece\u011fe bakt\u0131\u011f\u0131m\u0131zda, yapay zeka ve makine \u00f6\u011frenimi tabanl\u0131 ajanlar\u0131n yayg\u0131nla\u015fmas\u0131yla birlikte, ge\u00e7ersiz giri\u015flerin tan\u0131m\u0131 ve ele al\u0131n\u0131\u015f\u0131 daha da karma\u015f\u0131k hale gelecektir. Sadece s\u00f6zdizimsel veya bi\u00e7imsel ge\u00e7ersizlikler de\u011fil, ayn\u0131 zamanda anlamsal olarak belirsiz, yan\u0131lt\u0131c\u0131 veya manip\u00fclatif girdiler de \u00f6nem kazanacakt\u0131r. Bu durum, reddetme corpus'lar\u0131n\u0131n daha dinamik, adaptif ve YZ tabanl\u0131 test yakla\u015f\u0131mlar\u0131yla zenginle\u015ftirilmesini gerektirebilir. \u00d6rne\u011fin, \u00fcretken YZ modelleri kullan\u0131larak otomatik olarak ge\u00e7ersiz giri\u015fler t\u00fcretilebilir veya ajan\u0131n kendi \u00f6\u011frenme yetenekleri, ge\u00e7ersiz girdileri tan\u0131ma ve reddetme konusunda e\u011fitilebilir. Ancak, temel prensip ayn\u0131 kalacakt\u0131r: ajanlar, ne kadar ak\u0131ll\u0131 olursa olsunlar, kendilerine zarar verebilecek veya sistemin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc bozabilecek girdileri kararl\u0131l\u0131kla reddetmelidirler. Bu sayede, ajanlar\u0131m\u0131z\u0131n sadece yetenekli de\u011fil, ayn\u0131 zamanda g\u00fcvenilir ve sorumlu bir \u015fekilde hareket etmesini sa\u011flayabiliriz. Ge\u00e7ersiz giri\u015flerin ba\u015far\u0131s\u0131z olmas\u0131 gerekti\u011fi ilkesi, gelece\u011fin ak\u0131ll\u0131 sistemlerinin temel ta\u015f\u0131 olmaya devam edecektir.<\/p>\n<h2>S\u0131k\u00e7a Sorulan Sorular<\/h2>\n<ol>\n<li>\n            <strong>\"Ge\u00e7ersiz giri\u015fleri reddetmek yerine d\u00fczeltmeye \u00e7al\u0131\u015fmak daha iyi de\u011fil mi?\"<\/strong><\/p>\n<p>Hay\u0131r, genellikle daha iyi de\u011fildir. Ge\u00e7ersiz giri\u015fleri d\u00fczeltmeye \u00e7al\u0131\u015fmak (\"sanitization\" veya \"correction\"), genellikle ajan\u0131n neyin do\u011fru oldu\u011funu \"tahmin etmesini\" gerektirir. Bu tahminler yanl\u0131\u015f olabilir, beklenmedik davran\u0131\u015flara yol a\u00e7abilir, veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc bozabilir veya en \u00f6nemlisi, g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 maskeleyebilir. \u00d6rne\u011fin, bir SQL enjeksiyonu denemesini \"d\u00fczeltmeye\" \u00e7al\u0131\u015fmak, sald\u0131rgan\u0131n amac\u0131na ula\u015fmas\u0131na yard\u0131mc\u0131 olabilir. A\u00e7\u0131k\u00e7a reddetmek, sorunu net bir \u015fekilde ortaya koyar ve sistemin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc korur.<\/p>\n<\/li>\n<li>\n            <strong>\"Reddetme corpus'u olu\u015fturmak \u00e7ok zaman almaz m\u0131?\"<\/strong><\/p>\n<p>Ba\u015flang\u0131\u00e7ta bir miktar zaman ve \u00e7aba gerektirse de, uzun vadede bu yat\u0131r\u0131m fazlas\u0131yla geri d\u00f6ner. Reddetme corpus'u, gelecekteki yama uygulamalar\u0131 s\u0131ras\u0131nda ortaya \u00e7\u0131kabilecek gerileme hatalar\u0131n\u0131 (regression bugs) otomatik olarak tespit ederek geli\u015ftirme ve hata ay\u0131klama s\u00fcre\u00e7lerinden \u00f6nemli \u00f6l\u00e7\u00fcde zaman kazand\u0131r\u0131r. Ayr\u0131ca, potansiyel g\u00fcvenlik ihlallerinin veya b\u00fcy\u00fck operasyonel hatalar\u0131n \u00f6n\u00fcne ge\u00e7erek \u00e7ok daha b\u00fcy\u00fck maliyetlerden ka\u00e7\u0131n\u0131lmas\u0131n\u0131 sa\u011flar. Bu, proaktif bir kalite g\u00fcvence yakla\u015f\u0131m\u0131d\u0131r.<\/p>\n<\/li>\n<li>\n            <strong>\"Reddetme corpus'u hangi t\u00fcr ajanlar i\u00e7in ge\u00e7erlidir?\"<\/strong><\/p>\n<p>Bu yakla\u015f\u0131m, giri\u015f alan herhangi bir yaz\u0131l\u0131m ajan\u0131 i\u00e7in ge\u00e7erlidir. Sohbet robotlar\u0131 (chatbot), otonom ara\u00e7 yaz\u0131l\u0131mlar\u0131, end\u00fcstriyel kontrol sistemleri, finansal algoritmalar, IoT cihazlar\u0131, API servisleri ve yapay zeka modelleri gibi geni\u015f bir yelpazedeki ajanlar, bu metodolojiden faydalanabilir. Girdinin karma\u015f\u0131kl\u0131\u011f\u0131 ne olursa olsun, bir ajan\u0131n bekledi\u011fi ve beklemedi\u011fi \u015feylerin net bir tan\u0131m\u0131 her zaman olmal\u0131d\u0131r.<\/p>\n<\/li>\n<li>\n            <strong>\"Reddetme corpus'unu nas\u0131l g\u00fcncel tutmal\u0131y\u0131m?\"<\/strong><\/p>\n<p>Reddetme corpus'u ya\u015fayan bir belgedir ve ajan\u0131n evrimiyle birlikte g\u00fcncellenmelidir. Yeni \u00f6zellikler eklendi\u011finde veya mevcut i\u015flevler de\u011fi\u015ftirildi\u011finde, yeni ge\u00e7ersiz giri\u015f senaryolar\u0131 belirlenmeli ve corpus'a eklenmelidir. Ayr\u0131ca, ke\u015ffedilen her yeni g\u00fcvenlik a\u00e7\u0131\u011f\u0131 veya hata, ilgili ge\u00e7ersiz giri\u015fleri corpus'a eklemek i\u00e7in bir f\u0131rsat olarak g\u00f6r\u00fclmelidir. D\u00fczenli incelemeler ve otomatik fuzzing testleri, corpus'un kapsaml\u0131 kalmas\u0131na yard\u0131mc\u0131 olabilir.<\/p>\n<\/li>\n<li>\n            <strong>\"Reddetme corpus'u sadece g\u00fcvenlik testleri i\u00e7in mi kullan\u0131l\u0131r?\"<\/strong><\/p>\n<p>Hay\u0131r, sadece g\u00fcvenlik testleri i\u00e7in de\u011fildir. Elbette g\u00fcvenlik a\u00e7\u0131klar\u0131 (SQL enjeksiyonu, XSS gibi) \u00f6nemli bir par\u00e7as\u0131d\u0131r, ancak reddetme corpus'u ayn\u0131 zamanda veri b\u00fct\u00fcnl\u00fc\u011f\u00fc, sistem kararl\u0131l\u0131\u011f\u0131 ve kullan\u0131c\u0131 deneyimi i\u00e7in de kritik olan format hatalar\u0131, aral\u0131k d\u0131\u015f\u0131 de\u011ferler veya anlamsal olarak ge\u00e7ersiz giri\u015fler gibi di\u011fer hatalar\u0131 da kapsar. Amac\u0131, ajan\u0131n her t\u00fcrl\u00fc \"yanl\u0131\u015f\" girdiye kar\u015f\u0131 sa\u011flam ve \u00f6ng\u00f6r\u00fclebilir bir \u015fekilde tepki vermesini sa\u011flamakt\u0131r.<\/p>\n<\/li>\n<\/ol>\n<p>#AjanSistemleri #Yaz\u0131l\u0131mG\u00fcvenli\u011fi #TestOtomasyonu #YapayZeka #Giri\u015fDo\u011frulama<\/p>\n<div class=\"github-example-link\"><strong>\u00d6rnek kod:<\/strong> <a href=\"https:\/\/github.com\/fatihsoysalcom\/agent-input-rejection-example\" target=\"_blank\" rel=\"noopener noreferrer\">github.com\/fatihsoysalcom\/agent-input-rejection-example<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"Ajan sistemlerin g\u00fcvenilirli\u011fini ve dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 art\u0131rmak i\u00e7in ge\u00e7ersiz giri\u015fleri kesinlikle reddetmesi neden hayati \u00f6nem ta\u015f\u0131r?","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-44706","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus&#039;u: G\u00fcvenilirli\u011fin Anahtar\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus&#039;u: G\u00fcvenilirli\u011fin Anahtar\u0131\" \/>\n<meta property=\"og:description\" content=\"Ajan sistemlerin g\u00fcvenilirli\u011fini ve dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 art\u0131rmak i\u00e7in ge\u00e7ersiz giri\u015fleri kesinlikle reddetmesi neden hayati \u00f6nem ta\u015f\u0131r?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-15T06:07:58+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-15T06:08:27+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"15 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus&#8217;u: G\u00fcvenilirli\u011fin Anahtar\u0131\",\"datePublished\":\"2026-09-15T06:07:58+00:00\",\"dateModified\":\"2026-09-15T06:08:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/\"},\"wordCount\":4957,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/\",\"name\":\"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus'u: G\u00fcvenilirli\u011fin Anahtar\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-09-15T06:07:58+00:00\",\"dateModified\":\"2026-09-15T06:08:27+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus&#8217;u: G\u00fcvenilirli\u011fin Anahtar\u0131\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus'u: G\u00fcvenilirli\u011fin Anahtar\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/","og_locale":"tr_TR","og_type":"article","og_title":"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus'u: G\u00fcvenilirli\u011fin Anahtar\u0131","og_description":"Ajan sistemlerin g\u00fcvenilirli\u011fini ve dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 art\u0131rmak i\u00e7in ge\u00e7ersiz giri\u015fleri kesinlikle reddetmesi neden hayati \u00f6nem ta\u015f\u0131r?","og_url":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-09-15T06:07:58+00:00","article_modified_time":"2026-09-15T06:08:27+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"15 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus&#8217;u: G\u00fcvenilirli\u011fin Anahtar\u0131","datePublished":"2026-09-15T06:07:58+00:00","dateModified":"2026-09-15T06:08:27+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/"},"wordCount":4957,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/","url":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/","name":"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus'u: G\u00fcvenilirli\u011fin Anahtar\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-09-15T06:07:58+00:00","dateModified":"2026-09-15T06:08:27+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/ajan-yamalari-icin-gecersiz-girisleri-reddetme-corpusu-guvenilirligin-anahtari\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ajan Yamalar\u0131 \u0130\u00e7in Ge\u00e7ersiz Giri\u015fleri Reddetme Corpus&#8217;u: G\u00fcvenilirli\u011fin Anahtar\u0131"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/44706","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=44706"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/44706\/revisions"}],"predecessor-version":[{"id":44707,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/44706\/revisions\/44707"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=44706"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=44706"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=44706"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}