{"id":791,"date":"2026-01-22T10:00:00","date_gmt":"2026-01-22T07:00:00","guid":{"rendered":"https:\/\/www.hasangultekin.com\/2026\/01\/22\/multi-provider-llm-routing-policy\/"},"modified":"2026-01-22T10:00:00","modified_gmt":"2026-01-22T07:00:00","slug":"multi-provider-llm-routing-policy","status":"publish","type":"post","link":"https:\/\/www.hasangultekin.com\/tr\/2026\/01\/22\/multi-provider-llm-routing-policy\/","title":{"rendered":"\u00c7oklu Sa\u011flay\u0131c\u0131l\u0131 LLM Y\u00f6nlendirmesi Bir Politika Sorunudur"},"content":{"rendered":"<p>Birka\u00e7 model sa\u011flay\u0131c\u0131s\u0131n\u0131 desteklemek, bir adapt\u00f6r sorununa benziyor: iste\u011fi standart hale getirin, bir API\u2019yi \u00e7a\u011f\u0131r\u0131n ve yan\u0131t\u0131 standart hale getirin. Bu gerekli bir ad\u0131md\u0131r, ancak zorlu \u00fcr\u00fcn kararlar\u0131n\u0131 \u00e7\u00f6z\u00fcme kavu\u015fturmaz.<\/p>\n<p>Bu kirac\u0131 i\u00e7in hangi sa\u011flay\u0131c\u0131 izin verilmi\u015ftir? Gerekli \u00e7\u0131kt\u0131 s\u00f6zle\u015fmesini destekliyor mu? \u0130stek, yap\u0131land\u0131r\u0131lm\u0131\u015f veri s\u0131n\u0131r\u0131n\u0131 a\u015fabilir mi? \u0130lk yan\u0131t ak\u0131\u015fa ba\u015flad\u0131ktan sonra hata verirse ne olmal\u0131d\u0131r?<\/p>\n<h2>Modeli se\u00e7meden \u00f6nce i\u015fi tan\u0131mlay\u0131n<\/h2>\n<p>Y\u00f6nlendirmenin g\u00f6revle birlikte ba\u015flamas\u0131n\u0131 istiyorum. Bir veri alma yeniden yaz\u0131m\u0131, m\u00fc\u015fteriye y\u00f6nelik bir cevap ve bir ara\u00e7 kullan\u0131larak ger\u00e7ekle\u015ftirilen planlama ad\u0131m\u0131, kalite, gecikme s\u00fcresi, ba\u011flam boyutu ve \u00e7\u0131kt\u0131 yap\u0131s\u0131 a\u00e7\u0131s\u0131ndan farkl\u0131 gereksinimlere sahiptir.<\/p>\n<p>Talepte bu \u015fartlar, kirac\u0131 politikas\u0131 ve b\u00fct\u00e7eyle birlikte a\u00e7\u0131k\u00e7a belirtilmelidir. Model se\u00e7imi a\u015famas\u0131nda, uygun olmayan adaylar elenebilir ve ard\u0131ndan kalan se\u00e7enekler kar\u015f\u0131la\u015ft\u0131r\u0131labilir.<\/p>\n<p>Uygulaman\u0131n \u00e7e\u015fitli yerlerine da\u011f\u0131lm\u0131\u015f sa\u011flay\u0131c\u0131 ad\u0131na dayal\u0131 ko\u015ful ifadeleri yerine, yetenek denetimlerini tercih ederim. Bir yetenek kayd\u0131, ara\u00e7 deste\u011fini, yap\u0131land\u0131r\u0131lm\u0131\u015f \u00e7\u0131kt\u0131y\u0131, ak\u0131\u015f davran\u0131\u015f\u0131n\u0131, ba\u011flam s\u0131n\u0131rlar\u0131n\u0131 ve o yap\u0131land\u0131rma i\u00e7in do\u011frulanm\u0131\u015f da\u011f\u0131t\u0131m b\u00f6lgesini tan\u0131mlayabilir.<\/p>\n<h2>Payla\u015f\u0131lan s\u00f6zle\u015fmeyi d\u00fcr\u00fcst tutun<\/h2>\n<p>Genel bir adapt\u00f6r, uygulaman\u0131n ger\u00e7ekte neye ihtiya\u00e7 duydu\u011funu belirlemelidir. Her sa\u011flay\u0131c\u0131n\u0131n her \u00f6zelli\u011fi ayn\u0131 \u015fekilde uygulad\u0131\u011f\u0131n\u0131 varsaymamal\u0131d\u0131r.<\/p>\n<p>\u00d6rne\u011fin, ak\u0131\u015f s\u0131ras\u0131nda ara\u00e7 \u00e7a\u011fr\u0131lar\u0131 a\u015famal\u0131 olarak gelebilir. Kullan\u0131m hesaplamalar\u0131, metinden farkl\u0131 bir a\u015famada gelebilir. Bir sa\u011flay\u0131c\u0131, ba\u015fka bir sa\u011flay\u0131c\u0131n\u0131n kabul etti\u011fi bir \u015femay\u0131 reddedebilir. Adapt\u00f6r\u00fcn, bu farkl\u0131l\u0131klar i\u00e7in tan\u0131mlanm\u0131\u015f bir davran\u0131\u015fa ve ger\u00e7ek veri aktar\u0131m format\u0131n\u0131 test eden denemelere ihtiyac\u0131 vard\u0131r.<\/p>\n<p>Bir i\u015flev kullan\u0131lamad\u0131\u011f\u0131nda, ya a\u00e7\u0131k bir hata mesaj\u0131n\u0131 ya da a\u00e7\u0131k\u00e7a onaylanm\u0131\u015f bir alternatif yolu tercih ederim. Gerekli bir k\u0131s\u0131tlamay\u0131 sessizce ortadan kald\u0131rmak, g\u00f6rev s\u00f6zle\u015fmesini ihlal ederken ba\u015far\u0131l\u0131 gibi g\u00f6r\u00fcnen bir sonu\u00e7 do\u011furur.<\/p>\n<h2>Yedek plan, hak kazanma ko\u015fullar\u0131n\u0131 korumal\u0131d\u0131r<\/h2>\n<p>Bir yedekleme zinciri, yaln\u0131zca mevcut istek i\u00e7in izin verilen sa\u011flay\u0131c\u0131lar\u0131 i\u00e7ermelidir. Kullan\u0131labilirlik, kirac\u0131 k\u0131s\u0131tlamas\u0131n\u0131, b\u00f6lge gereklili\u011fini veya harcama s\u0131n\u0131r\u0131n\u0131 ge\u00e7ersiz k\u0131lmaz.<\/p>\n<p>Hata t\u00fcrlerini birbirinden ay\u0131r\u0131r\u0131m. Ge\u00e7ici bir hizmet hatas\u0131, ba\u015fka bir sa\u011flay\u0131c\u0131ya ge\u00e7meyi hakl\u0131 k\u0131labilir. Ge\u00e7ersiz kimlik bilgileri, yap\u0131land\u0131rman\u0131n d\u00fczeltilmesini gerektirir. Ge\u00e7ersiz bir istek, her yerde ayn\u0131 \u015fekilde hata verebilir. Bir reddetme durumu da, otomatik olarak aktar\u0131m hatas\u0131 olarak de\u011ferlendirilmek yerine, uygulaman\u0131n kurallar\u0131na g\u00f6re yorumlanmal\u0131d\u0131r.<\/p>\n<p>Her ek deneme zaman al\u0131r ve maliyetli olabilir. Y\u00f6nlendiriciye, sa\u011flay\u0131c\u0131 her de\u011fi\u015fti\u011finde yeni bir kota de\u011fil, toplam bir son tarih ve bir deneme kotas\u0131 gerekir.<\/p>\n<h2>\u201cK\u0131smi \u00e7\u0131kt\u0131\u201dn\u0131n ne anlama geldi\u011fine karar verin<\/h2>\n<p>Kullan\u0131c\u0131ya herhangi bir \u00e7\u0131kt\u0131 ula\u015fmam\u0131\u015fsa, ba\u015fka bir sa\u011flay\u0131c\u0131y\u0131 denemek nispeten kolay olabilir. Cevab\u0131n bir k\u0131sm\u0131 g\u00f6r\u00fcnt\u00fclendikten sonra, ikinci bir modelin yeni cevab\u0131n\u0131 eklemek kafa kar\u0131\u015ft\u0131r\u0131c\u0131 veya \u00e7eli\u015fkili bir mesaj ortaya \u00e7\u0131karabilir.<\/p>\n<p>Ya se\u00e7ilen yay\u0131nlanma noktas\u0131na kadar olu\u015fturma i\u015flemini tamponlayarak bekletirdim ya da a\u00e7\u0131k\u00e7a bir hata yan\u0131t durumu g\u00f6sterip yeniden ba\u015flatma se\u00e7ene\u011fi sunard\u0131m. Do\u011fru se\u00e7im \u00fcr\u00fcne ba\u011fl\u0131d\u0131r, ancak bu karar bilin\u00e7li bir \u015fekilde verilmelidir.<\/p>\n<p>Ara\u00e7 y\u00fcr\u00fctme i\u015flemi ba\u015fka bir s\u0131n\u0131r getirir. Bir modelin yeniden denemesi, s\u0131rf bir sonraki planlama ad\u0131m\u0131 ba\u015far\u0131s\u0131z oldu diye tamamlanm\u0131\u015f bir harici eylemi tekrarlamamal\u0131d\u0131r. \u0130\u015flem defteri, sa\u011flay\u0131c\u0131 adapt\u00f6r\u00fcn\u00fcn d\u0131\u015f\u0131nda yer almal\u0131d\u0131r.<\/p>\n<h2>Hizmet kalitesindeki d\u00fc\u015f\u00fc\u015f dahil olmak \u00fczere y\u00f6nlendirme kararlar\u0131n\u0131 de\u011ferlendirin<\/h2>\n<p>Y\u00f6nlendirme izlemem, g\u00f6rev t\u00fcr\u00fc, uygun adaylar, se\u00e7ilen sa\u011flay\u0131c\u0131, yedekleme nedeni, politika s\u00fcr\u00fcm\u00fc, gecikme s\u00fcresi ve hesaplanan kullan\u0131m\u0131 i\u00e7ermektedir. Hassas komut i\u00e7eri\u011finin her metrik i\u00e7ine kopyalanmas\u0131 gerekmez.<\/p>\n<p>Ayr\u0131ca, ba\u011f\u0131ml\u0131l\u0131klar\u0131n durumunu ar\u0131zan\u0131n kapsam\u0131na g\u00f6re de ay\u0131r\u0131yorum. Yanl\u0131\u015f yap\u0131land\u0131r\u0131lm\u0131\u015f bir dahili yard\u0131mc\u0131, normalde sorunsuz \u00e7al\u0131\u015fan bir m\u00fc\u015fteri sohbet yolunun devresini mutlaka kesmemelidir. Do\u011fru devre kesici s\u0131n\u0131r\u0131, hangi kimlik bilgileri, modeller ve da\u011f\u0131t\u0131mlar\u0131n ar\u0131za ko\u015fullar\u0131n\u0131 payla\u015ft\u0131\u011f\u0131na ba\u011fl\u0131d\u0131r.<\/p>\n<p>\u00c7oklu sa\u011flay\u0131c\u0131 tasar\u0131m\u0131, de\u011fi\u015fen ko\u015fullar alt\u0131nda \u00fcr\u00fcn\u00fcn vaatlerini yerine getirebildi\u011fi durumlarda faydal\u0131d\u0131r. M\u00fchendislik \u00e7al\u0131\u015fmas\u0131, acil durum yolu da dahil olmak \u00fczere her yolun kontrol edilebilmesi i\u00e7in bu vaatleri yeterince a\u00e7\u0131k bir \u015fekilde ortaya koymakt\u0131r.<\/p>\n<p class=\"hg-editorial-note\"><small>25 Eyl\u00fcl 2026 tarihinde g\u00fcncellenmi\u015ftir.<\/small><\/p>","protected":false},"excerpt":{"rendered":"<p>Kullan\u0131\u015fl\u0131 bir model y\u00f6nlendirici, yetenekleri, izinleri, b\u00f6lge gerekliliklerini, b\u00fct\u00e7eleri ve ar\u0131za davran\u0131\u015flar\u0131n\u0131 a\u00e7\u0131k bir s\u00f6zle\u015fme \u00e7er\u00e7evesinde bir araya getirir.<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"footnotes":""},"categories":[151],"tags":[173,185,191],"class_list":["post-791","post","type-post","status-publish","format-standard","hentry","category-ai-engineering","tag-llm-routing","tag-reliability","tag-system-design"],"_links":{"self":[{"href":"https:\/\/www.hasangultekin.com\/tr\/wp-json\/wp\/v2\/posts\/791","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hasangultekin.com\/tr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hasangultekin.com\/tr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hasangultekin.com\/tr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hasangultekin.com\/tr\/wp-json\/wp\/v2\/comments?post=791"}],"version-history":[{"count":0,"href":"https:\/\/www.hasangultekin.com\/tr\/wp-json\/wp\/v2\/posts\/791\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.hasangultekin.com\/tr\/wp-json\/wp\/v2\/media?parent=791"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hasangultekin.com\/tr\/wp-json\/wp\/v2\/categories?post=791"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hasangultekin.com\/tr\/wp-json\/wp\/v2\/tags?post=791"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}