İşlev Çağırma Nasıl Çalışır
Tüm gidiş-dönüş sürecini anlayın: model bir araç seçer, kodunuz onu çalıştırır, sonucu geri gönderirsiniz ve model devam eder.
İşlev Çağırma Nasıl Çalışır, CoddyKit'te ücretsiz bir AI Agents dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AI Agents öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AI Agents kursu toplamda 4 dersten oluşur.
Fonksiyon Çağırma: Temel Düzen
Fonksiyon çağırma, bir LLM'yi aracı sisteme dönüştüren protokoldür. Model, sunduğunuz listedeki bir fonksiyonu seçer, bağımsız değişkenleri doldurur ve siz de fonksiyonu çalıştırırsınız.
Bu düzen OpenAI, Anthropic, Google, Cohere, Mistral ve doğru ince ayarlara sahip büyük OSS modellerinin çoğu tarafından desteklenir.
Beş Adımlı Gidiş-Dönüş
- İletileri ve araç tanımlarını gönderirsiniz
- Model ya bir son yanıt ya da bir araç çağrısı döndürür
- Araç, modelin bağımsız değişkenleriyle çalıştırılır
- Sonucu bir araç iletisi olarak eklersiniz
- Güncellenmiş geçmişle modeli yeniden çağırırsınız
Model bir son yanıt döndürene kadar 2-5. adımları yineleyin.
1. Adım: Araçları Tanımlama
Araç tanımları, her fonksiyonu açıklayan JSON şemalarıdır:
tools = [{
'type': 'function',
'function': {
'name': 'get_weather',
'description': 'Current weather for a city',
'parameters': {
'type': 'object',
'properties': {
'city': {'type': 'string'}
},
'required': ['city']
}
}
}]
import json
print(json.dumps(tools, indent=2))
2. Adım: İlk Model Çağrısı
İletileri ve araçları gönderin:
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=[{'role': 'user', 'content': 'Weather in Paris?'}],
tools=tools,
)
message = response.choices[0].message
print(message.tool_calls)
# [ToolCall(name='get_weather', arguments='{"city": "Paris"}')]3. Adım: Aracı Çalıştırma
Python fonksiyonunuza yönlendirin:
import json
def get_weather(city: str) -> dict:
# ...call your weather API...
return {'city': city, 'temp_c': 18, 'condition': 'cloudy'}
tool_call = message.tool_calls[0]
args = json.loads(tool_call.function.arguments)
result = get_weather(**args)4. Adım: Araç Sonucunu Ekleme
Eşleşen ID'ye sahip bir araç iletisi ekleyin:
messages.append(message) # the assistant message with tool_calls
messages.append({
'role': 'tool',
'tool_call_id': tool_call.id,
'content': json.dumps(result)
})5. Adım: İkinci Model Çağrısı
Modeli yeniden çağırın; artık araç sonucuna sahiptir ve kullanıcıya gösterilecek bir yanıt üretir:
final = client.chat.completions.create(
model='gpt-4o-mini',
messages=messages,
tools=tools,
)
print(final.choices[0].message.content)
# 'It is currently 18 degrees and cloudy in Paris.'Aracı Döngüsü
Bunu bir while döngüsüne alın; model art arda birkaç aracı çağırabilir:
while True:
response = client.chat.completions.create(model=MODEL, messages=messages, tools=tools)
msg = response.choices[0].message
messages.append(msg)
if not msg.tool_calls:
return msg.content # final answer
for tc in msg.tool_calls:
result = dispatch(tc)
messages.append({'role': 'tool', 'tool_call_id': tc.id, 'content': json.dumps(result)})Paralel Araç Çağrıları
Modern modeller tek bir yanıtta birden fazla tool_calls döndürür. Güvenliyse bunları paralel çalıştırın:
import asyncio
async def run_tools(tool_calls):
coros = [dispatch_async(tc) for tc in tool_calls]
return await asyncio.gather(*coros)finish_reason: tool_calls
tool_calls değerini kontrol etmek yerine finish_reason değerini de kontrol edebilirsiniz:
if response.choices[0].finish_reason == 'tool_calls':
# the model wants to call tools
...
elif response.choices[0].finish_reason == 'stop':
# done
...Yaygın Hatalar
- Araç sonucundan önce asistan iletisini eklemeyi unutmak
- Yanlış tool_call_id kullanmak
- Araç sonuçlarını kullanıcı iletisi olarak göndermek
- Döngünün sınırsız çalışmasına izin vermek — MAX_STEPS belirleyin
Döngünün Sonlandırılması
Aracının işini ne zaman tamamladığını nasıl anlarsınız?
Özet
Fonksiyon çağırma, bu kursun tamamındaki en önemli düzendir. İlerlemeye başlamadan önce bunda ustalaşın.
Sıkça Sorulan Sorular
“İşlev Çağırma Nasıl Çalışır” dersi ücretsiz mi?
Evet — “İşlev Çağırma Nasıl Çalışır” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AI Agents kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AI Agents kursu toplamda 4 dersten oluşur.
“İşlev Çağırma Nasıl Çalışır” dersinde ne öğreneceğim?
Tüm gidiş-dönüş sürecini anlayın: model bir araç seçer, kodunuz onu çalıştırır, sonucu geri gönderirsiniz ve model devam eder. AI Agents ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
AI Agents öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te AI Agents, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.
“İşlev Çağırma Nasıl Çalışır” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu AI Agents dersinde kod yazıp çalıştırabilir miyim?
Evet. Her AI Agents dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- İşlev Çağırma Nasıl Çalışır
- Araç Şemalarını Tanımlama (JSON Schema)
- Çalışma Zamanında Araç Seçme
- Sonuçları Modele Döndürme