Düşünce Liderleri

API Çağırma Ajanlarını Anlama, Oluşturma ve Optimizasyon Kılavuzu To-Do List API version: 1.0.0 paths: /tasks: post: summary: Yeni bir görev ekle requestBody: required: true

mm
Unite.AI sitesini Google'daki tercih ettiğiniz kaynaklara ekleyin

Şirketlerdeki teknoloji rollerindeki Yapay Zeka’nın rolü hızla evrim geçirmekte; AI kullanım örnekleri pasif bilgi işlemeden proaktif ajanlara dönüşmüştür. Georgian ve NewtonX tarafından Mart 2025’te yapılan bir küresel AI benimseme anketine göre, büyüme aşamasındaki ve kurumsal şirketlerin %91’i reportedly agentic AI kullanıyor veya kullanmayı planlıyor.

API-calling ajanlar, bu ajanlara dönüşümün birincil örneğidir. API-calling ajanlar, Large Language Models (LLMs) kullanarak yazılım sistemleriyle onların Application Programming Interfaces (APIs) aracılığıyla etkileşime girer.

Örneğin, doğal dil komutlarını kesin API çağrılarına çevirerek, ajanlar gerçek zamanlı veri alabilir, rutin görevleri otomatikleştirebilir veya hatta diğer yazılım sistemlerini kontrol edebilir. Bu yetenek, AI ajanlarını insan niyeti ve yazılım işlevselliği arasında faydalı aracılar haline getirir.

Şirketler şu anda çeşitli alanlarda API-calling ajanlarını kullanıyor:

  • Tüketici Uygulamaları: Apple’ın Siri’si veya Amazon’un Alexa’sı gibi asistanlar, günlük görevleri basitleştirmek için tasarlandı, Örneğin akıllı ev cihazlarını kontrol etmek ve rezervasyon yapmak.
  • İş Akışları: Şirketler, API ajanlarını tekrarlanan görevleri otomatikleştirmek için dağıttı, Örneğin CRM’den veri almak, rapor oluşturmak veya iç sistemlerden bilgi toplamak.
  • Veri Alımı ve Analizi: Şirketler, API ajanlarını özel veri kümelerine, abonelik tabanlı kaynaklara ve kamu API’lerine erişimi basitleştirmek için kullanıyor, Bu da içgörüler oluşturmak için.

Bu makalede, API-calling ajanlarını anlamak, oluşturmak ve optimize etmek için mühendislik merkezli bir yaklaşım kullanacağım. Bu makaledeki materyal, kısmen Georgian’ın AI Laboratuvarı tarafından yapılan pratik araştırma ve geliştirmeye dayanmaktadır. AI Laboratuvarının API-calling ajanları alanında yaptığı araştırmaların çoğunun motivasyon sorusu şudur: “Bir organizasyonun bir API’si varsa, bu API ile doğal dil kullanarak etkileşime girebilecek bir ajan oluşturmanın en etkili yolu nedir?”

API-calling ajanlarının nasıl çalıştığını ve nasıl başarılı bir şekilde mimarilandırılacağını ve mühendislik yapılacağını açıklamak istiyorum. Son olarak, mühendislik ekiplerinin API-calling ajanlarını uygulamak için kullanabileceği sistematik bir iş akışını sağlayacağım.

I. Ana Tanımlar:

  • API veya Uygulama Programlama Arayüzü: Farklı yazılım uygulamalarının iletişim kurmasını ve bilgi alışverişi yapmasını sağlayan kurallar ve protokoller seti.
  • Ajan: Belirli amaçları gerçekleştirmek için kararlar alan ve eylemler yapan bir Yapay Zeka sistemi.
  • API-Çağırma Ajanı: Doğal dil talimatlarını kesin API çağrılarına çeviren özel bir Yapay Zeka ajanı.
  • Kod Oluşturma Ajanı: Yazılım geliştirmeye yardımcı olan, kod yazan, değiştiren ve hatalarını düzelteden bir Yapay Zeka sistemi. Burada odaklandığım şey, API’leri çağıran ajanlar, ancak AI aynı zamanda bu ajanları oluşturmaya da yardımcı olabilir.
  • MCP (Model Context Protocol): Anthropic tarafından geliştirilen bir protokol, LLM’lerin dış araçlar ve veri kaynaklarına nasıl bağlanabileceğini tanımlar.

II. Temel Görev: Doğal Dili API Eylemlerine Çevirme

API-calling ajanının temel işlevi, bir kullanıcının doğal dil isteğini kesin API çağrılarına çevirmektir. Bu işlem genellikle şunları içerir:

  1. Niyet Tanıma: Kullanıcının amacını, belirsiz bir şekilde ifade edilse bile, anlamak.
  2. Araç Seçimi: Kullanıcının amacını gerçekleştirebilecek uygun API uç noktasını (veya “araçları”) belirlemek.
  3. Parametre Çıkarma: Kullanıcının sorgusundan seçilen API çağrıları için gerekli parametreleri çıkarmak.
  4. Yürütme ve Yanıt Oluşturma: API çağrısını yapmak, yanıtı almak ve sonra bu bilgiyi tutarlı bir cevap veya sonraki bir eylem olarak sentezlemek.

Örneğin, “Merhaba Siri, bugün hava nasıl?” gibi bir istek, ajanın hava API’sini çağırmak, kullanıcının当前 konumunu belirlemek (veya konum belirtmesine izin vermek) ve sonra hava bilgilerini almak için API çağrısını formüle etmesini gerektirir.

“Merhaba Siri, bugün hava nasıl?” gibi bir istek için örnek bir API çağrısı şöyle olabilir:

GET /v1/weather?location=New%20York&units=metric

İlk yüksek seviyeli zorluklar, doğal dilin belirsizliği ve ajanın çok adımlı etkileşimler boyunca bağlamı koruması gerekliliği gibi bu çeviri sürecinde mevcuttur.

Örneğin, ajan genellikle önceki bir konuşmanın veya önceki API çağrı sonuçlarının bir parçasını “hatırlamak” zorundadır, böylece mevcut eylemlerini bilgilendirebilir. Bağlam kaybı, açık bir şekilde yönetilmezse, yaygın bir hata modudur.

III. Çözümü Mimari: Ana Bileşenler ve Protokoller

Etkili API-calling ajanları oluşturmak için yapılandırılmış bir mimari yaklaşım gerekir.

1. Ajan için Araçları Tanımlama

Bir LLM’nin bir API’yi kullanabilmesi için, API’nin yetenekleri LLM’ye anlaşılır bir şekilde tanımlanmalıdır. Her API uç noktası veya işlev genellikle bir “araç” olarak temsil edilir. Güçlü bir araç tanımı şunları içerir:

  • Araçın amacı ve işlevselliği hakkında net, doğal dil açıklaması.
  • Giriş parametrelerinin kesin tanımı (adı, türü, gereklilik durumu ve açıklaması).
  • Araç tarafından döndürülen çıktı veya verilerin açıklaması.

2. Model Context Protocol (MCP) Rolü

MCP, LLM’lerin dış araçlar ve veri kaynaklarına bağlanmasını standartlaştırarak daha güçlü ve daha robust bir şekilde kullanmasını sağlar.

MCP standardizasyonu, çeşitli araçların daha kolay entegrasyonunu sağlar, araç tanımlarının farklı ajanlar veya modeller arasında yeniden kullanılmasını teşvik eder. Ayrıca, iyi tanımlanmış API spesifikasyonları ile başlayan mühendislik ekipleri için en iyi uygulamalardan biridir, Örneğin OpenAPI spesifikasyonu. Stainless.ai gibi araçlar, bu OpenAPI spesifikasyonlarını MCP yapılandırmalarına dönüştürmeye yardımcı olarak, API’leri “ajan hazır” hale getirmeyi basitleştirir.

3. Ajan Çerçeveleri ve Uygulama Seçenekleri

Ajanın kendisini oluşturmak için birkaç çerçeve kullanılabilir. Bunlar şunları içerir:

  • Pydantic: Ajan çerçevesi olarak kullanılmaz, ancak araç girişleri ve çıkışları için veri yapılarını tanımlamak ve tür güvenliğini sağlamak için faydalıdır. Çoğu özel ajan uygulaması, yapısal bütünlük için Pydantic kullanır.
  • LastMile’s mcp_agent: Bu çerçeve, MCP ile çalışmak için özel olarak tasarlanmıştır ve MCP ile ilgili iyi uygulamaları takip eder.
  • İç Çerçeve: AI kod oluşturma ajanlarını (Cursor veya Cline gibi araçlar kullanarak) ajanın, araçların ve çevre mantığının boilerplate kodunu yazmaya yardımcı olmak için kullanmak da giderek daha yaygın hale geliyor. Georgian’ın AI Laboratuvarı deneyimi, şirketlerle agentic uygulamalar üzerinde çalışırken, bu approachun çok minimal, özel çerçeveler oluşturmak için harika olabileceğini gösteriyor.

IV. Güvenilirlik ve Performans için Mühendislik

Ajanın API çağrılarını güvenilir bir şekilde yapmasını ve iyi performans göstermesini sağlamak için odaklanmış mühendislik çaba gerekir. Bunu yapmak için iki yol vardır: (1) veri kümesi oluşturma ve doğrulama ve (2) istemci mühendisliği ve optimizasyonu.

1. Veri Kümesi Oluşturma ve Doğrulama

Ajanı eğitmek (uygunsa), test etmek ve optimize etmek için yüksek kaliteli bir veri kümesine ihtiyaç vardır. Bu veri kümesi, temsilci doğal dil sorguları ve karşılık gelen API çağrı dizileri veya sonuçları içermelidir.

  • Elle Oluşturma: Elle veri kümesi oluşturmak, yüksek doğruluk ve ilgililik sağlar, ancak emek yoğun olabilir.
  • Sentetik Oluşturma: Verileri programlı olarak oluşturmak veya LLM’leri kullanmak, veri kümesi oluşturmasını ölçeklendirir, ancak bu yaklaşım önemli zorluklar sunar. Georgian AI Laboratuvarı’nın araştırması, sentetik olarak oluşturulan API çağrıları ve sorgularının doğruluğunu ve gerçekçi karmaşıklığını sağlamakta zorluklar yaşandığını gösterdi. Oluşturulan sorular genellikle çok basit veya imkansız derecede karmaşıktı, bu da nüanslı ajan performansını ölçmeyi zorlaştırdı. Sentetik verilerin dikkatli bir şekilde doğrulanması mutlak olarak kritiktir.

Kritik değerlendirme için, küçük, yüksek kaliteli, elle doğrulanmış bir veri kümesi, büyük, gürültülü sentetik bir veri kümesinden daha güvenilir içgörüler sağlayabilir.

2. İstemci Mühendisliği ve Optimizasyonu

LLM tabanlı bir ajanın performansı, kullanılan istemciler tarafından büyük ölçüde etkilenir.

  • Etken istemci, ajanın görevini net bir şekilde tanımlamak, kullanılabilir araçları tanıtmak ve parametre çıkarmayı teşvik etmek için yapılandırılmalıdır.
  • Sistemli optimizasyon, DSPy gibi çerçeveler kullanılarak önemli ölçüde iyileştirilebilir. DSPy, ajanın bileşenlerini (örneğin, düşünce oluşturma, araç seçimi, parametre biçimlendirme için modüller) tanımlamanıza ve sonra veri kümenizden birkaç örnek kullanarak bu bileşenlerin optimize istemcilerini veya yapılandırmalarını bulmak için derleyici benzeri bir yaklaşım kullanmanıza olanak tanır.

V. Etkili API Ajanlarına Önerilen Yol

Güvenilir API-calling AI ajanları geliştirmek, iteratif bir mühendislik disiplinidir. Georgian AI Laboratuvarı’nın araştırmalarının bulgularına dayanarak, aşağıdaki sistematik iş akışı gibi bir yaklaşım kullanarak sonuçlar önemli ölçüde iyileştirilebilir:

  1. Net API Tanımlarıyla Başlayın: Ajanınızın etkileşime gireceği API’ler için iyi yapılandırılmış OpenAPI Spesifikasyonları ile başlayın.
  2. Araç Erişimini Standardize Edin: OpenAPI spesifikasyonlarınızı MCP Araçlarına dönüştürün. Stainless.ai gibi araçlar, bu süreci basitleştirebilir ve API’lerinizi “ajan hazır” hale getirmeye yardımcı olabilir.
  3. Ajanı Uygulayın: Uygun bir çerçeve veya yaklaşım seçin. Bu, Pydantic’i veri modelleme için kullanmayı veya MCP ile çalışan LastMile’s mcp_agent gibi bir çerçeve kullanmayı içerebilir.
  4. Kaliteli Değerlendirme Veri Kümesini Oluşturun: Elle veya dikkatlice doğrulanmış bir veri kümesi oluşturun. Bu, güvenilir test ve optimizasyon için kritiktir.
  5. Ajan İstemcilerini ve Mantığını Optimize Edin: DSPy gibi çerçeveleri kullanarak, ajanınızın istemcilerini ve iç mantığını, oluşturduğunuz veri kümesini kullanarak iyileştirin.

VI. İş Akışının İllüstratif Örneği

Burada, önerilen iş akışının basitleştirilmiş bir örneği verilmiştir:

Adım 1: Net API Tanımlarıyla Başlayın

Bir To-Do listesi yönetmek için bir API hayal edin, OpenAPI olarak tanımlanmıştır:

openapi: 3.0.0

info:
application/json:

schema:

type: object

properties:

description:

type: string

responses:

‘201’:

description: Görev oluşturuldu

get:

summary: Tüm görevleri al

responses:

‘200’:

description: Görev listesi

Adım 2: Araç Erişimini Standardize Edin

OpenAPI spesifikasyonunu MCP Araçlarına dönüştürün. Stainless.ai gibi bir araç kullanarak, bu şöyle olabilir:

Araç Adı Açıklama Giriş Parametreleri Çıkış Açıklaması
Görev Ekle To-Do listesine yeni bir görev ekler. `description` (string, gereklidir): Görevin açıklaması. Görev oluşturma onaylama.
Görevleri Al To-Do listesinden tüm görevleri alır. Hiçbiri Görev listesi.

Adım 3: Ajanı Uygulayın

Pydantic’i veri modelleme için kullanarak, MCP Araçlarına karşılık gelen fonksiyonları oluşturun. Sonra, bir LLM kullanarak doğal dil sorgularını yorumlayın ve uygun aracı ve parametreleri seçin.

Adım 4: Kaliteli Değerlendirme Veri Kümesini Oluşturun

Aşağıdaki gibi bir veri kümesi oluşturun:

Sorgu Beklenen API Çağrısı Beklenen Sonuç
“‘Alışveriş yap’ı listeme ekle.” `Görev Ekle` ile `description` = “Alışveriş yap” Görev oluşturma onaylama
“Listemdeki görevler neler?” `Görevleri Al` Görev listesi, “Alışveriş yap” dahil

Adım 5: Ajan İstemcilerini ve Mantığını Optimize Edin

DSPy kullanarak istemcileri, açık talimatlar, araç seçimi ve parametre çıkarma üzerine odaklanarak, oluşturduğunuz veri kümesini kullanarak iyileştirin.

API tanımlarından, araç protokollerinden, veri uygulamalarından ve sistematik optimizasyondan oluşan bu yapı taşlarını birleştirerek, mühendislik ekipleri daha yetenekli, güvenilir ve bakımı daha kolay API-calling AI ajanları oluşturabilir.

Rodrigo Ceballos Lentini, Georgian'ın AI Lab'inde AI Teknoloji Lideridir ve burada portföy şirketlerine üretken ve ajans AI projelerinden somut sonuçlar elde etmelerine yardımcı olur. Rodrigo, ETH Zürich'ten Nöral Sistemler ve Hesaplama alanında Bilgisayar Görme üzerine odaklanan Master derecesine sahiptir.