Function Calling Teknik Özeti
Function Calling Teknik Özeti
1. Tanım
Function Calling, geliştiricilerin büyük dil modellerine (LLM) JSON şeması aracılığıyla mevcut harici araçları (API gibi) tanımlamasına olanak tanıyan bir mekanizmadır. Model, bir kullanıcı sorusunu yanıtlamak için bir aracı çağırması gerektiğine karar verdiğinde, yapılandırılmış tool_calls JSON verisi çıkararak çağrılacak işlevin adını ve parametrelerini belirtir. Ana bilgisayar programı bu çağrıyı ayrıştırır ve yürütür, sonucu modele döndürür ve model nihai yanıtı oluşturur.
2. Temel İlke ve Çözülen Sorunlar
- Öz: "İki turlu diyalog + ara yürütme" döngüsü. İlk turda model karar verir ve araç çağrısı isteği çıkarır; ara kod aracı yürütür; ikinci turda model yürütme sonucuna dayanarak nihai yanıtı oluşturur.
- Çözülen sorunlar: Daha önce modelin araçları çağırması için kararsız ve hataya açık doğal dil ayrıştırmasına (if/else kararları) güvenme sorununu çözer, yapılandırılmış çıktı ile standardizasyon ve doğruluk artışı sağlar.
3. Sorumluluk Dağılımı (Görev Devri Benzetmesi)
- Geliştirici (İK): Araçları tanımlar, araç işlevselliğini, parametrelerini vb. açıklayan JSON Şeması yazar.
- LLM Modeli (Yönetici): Araç açıklamalarını anlar, bir aracı çağırıp çağırmamaya, hangi aracı ve hangi parametrelerle çağıracağına karar verir ve yapılandırılmış çağrı isteği (
tool_calls) çıkarır. Model sadece karar verir ve metin üretir, kodu kendisi yürütmez. - Yürütücü/Ana Bilgisayar Kodu (Çalışan): Modelin
tool_callsisteğini ayrıştırır, ilgili işlevi veya API çağrısını gerçekten yürütür ve sonucu döndürür.
4. Araç Tanımı (JSON Şeması)
Şema, aracın "kullanım kılavuzudur"; temel bilgiler şunları içerir:
- name: Aracın benzersiz tanımlayıcısı.
- description: Son derece önemlidir, model bu aracı çağırıp çağırmayacağına tamamen bu açıklamaya dayanarak karar verir. Açıklama ne kadar net ve doğruysa, model kararı o kadar doğru olur.
- parameters: Aracın gerektirdiği parametreleri ve bunların türlerini, açıklamalarını, kısıtlamalarını (ör. enum değerleri, zorunlu olup olmadığı) tanımlar.
5. Tam Çağrı Akışı
Makale, hava durumu sorgulama kod örneği ile kullanıcı sorusundan, araç tanımlarıyla ilk model çağrısına, modelin tool_calls döndürmesine, kodun işlevi yürütmesine, sonucun role: "tool" mesajı olarak sohbet geçmişine eklenmesine ve son olarak modelin nihai doğal dil yanıtını oluşturmasına kadar olan süreci gösterir.
6. Gelişmiş Özellik - Paralel Araç Çağrısı
Kullanıcı sorusu birden fazla aracın birlikte çalışmasını gerektirdiğinde (örneğin, aynı anda birden fazla şehrin hava durumunu sorgulamak), model tek bir yanıtta birden fazla tool_calls içeren bir liste çıkarabilir. Ana bilgisayar kodu bu çağrıları paralel olarak yürütebilir ve ardından tüm sonuçları modele birleştirme için döndürerek verimliliği artırabilir.
评论
暂无已展示的评论。
发表评论(匿名)