
Bir AI sohbet robotu geliştiriyor veya bir uygulamaya konuşma özellikleri ekliyor olun, AI'ın konuşmaları nasıl işlediğini anlamak önemlidir. Chat Completion API, ilgili ve insan benzeri yanıtlar üretmek için uygulamaları AI modelleriyle bağlayarak bunu mümkün kılar. Python entegrasyonu, akışlı yanıtlar ve araç çağrıları gibi özelliklerle geliştiriciler daha etkileşimli uygulamalar oluşturabilir. Nasıl çalıştığını, nasıl kullanılacağını ve Kimi API gibi sağlayıcıların esnek AI geliştirmeyi nasıl desteklediğini inceleyelim.
Chat Completions API nedir
Chat Completions API, uygulamaların bir AI modeline mesaj dizisi göndermesine ve hem tek turlu hem de çok turlu konuşmaları destekleyen bir asistan yanıtı almasına olanak tanıyan bir arayüzdür. Örneğin, Python dekoratörleriyle ilgili bir soruyu yanıtlamak için Kimi K3.1 Pro'yu kullanabilir, ardından bir takip sorusu sorabilirsiniz:
İlk istek: Kullanıcı mesajını gönderin: "Python dekoratörü nedir?" Kimi, kavramı açıklayan bir asistan mesajı döndürür.
İkinci istek: Konuşmaya devam etmek için önceki kullanıcı mesajını, Kimi'nin eksiksiz asistan mesajını ve yeni bir kullanıcı mesajını gönderin: "Bana bir örnek verebilir misin?"
messages dizisi, her istek için gereken bağlamı taşır. Üç temel tasarım kararı, bu arayüzün yaygın olarak benimsenmesini sağlamıştır:
Uygulama tarafından yönetilen geçmiş: Uygulamalar konuşma geçmişini yönetir ve ilgili bağlamı her isteğe ekler; böylece geliştiriciler modelin neyi göreceğini kontrol edebilir.
Yaygın mesaj rolleri: Yaygın roller arasında
system(talimatlar),user(girdi),assistant(model çıktısı, çok turlu bağlam için yeniden iletilir) vetool(fonksiyon çağrısı sonuçları) bulunur. Bunlar birlikte talimatları, diyaloğu ve araç etkileşimlerini ifade etmeye yardımcı olur.Esnek yetenekler: Model desteğine bağlı olarak arayüz; akış, araç çağrısı, görsel girdiler ve yapılandırılmış çıktıları işleyebilir. Kimi K3.1 Pro bu yetenekleri destekler.
Chat Completions API'yi Kimi ile kullanma
Aşağıdaki örneklerde, istemcinin nasıl yapılandırılacağını, isteklerin nasıl gönderileceğini, yanıtların nasıl işleneceğini ve araç çağrısının nasıl uygulanacağını göstermek için Kimi K3.1 Pro ve OpenAI Python SDK kullanılır:
Hızlı başlangıç: OpenAI Python SDK ile Kimi çağırma
OpenAI Python SDK'yı yükleyin:
Kimi API anahtarınızı ortam değişkeni olarak ayarlayın:
OpenAI API anahtarına ihtiyacınız yoktur. OpenAI Python SDK istemci kitaplığı görevi görürken Kimi API anahtarınız ve temel URL'niz isteklerin Kimi'ye yönlendirilmesini ve kimlik doğrulamasını sağlar.
İstemciyi başlatın ve ilk isteğinizi gönderin:
Bu örnekte Kimi'nin uluslararası API uç noktası kullanılmaktadır. Resmî kurulum ve model ayrıntıları için Kimi K3.1 Pro Hızlı Başlangıç sayfasına bakın.
Temel parametreler
Bu parametreler, Chat Completions API üzerinden Kimi K3.1 Pro çağrılırken kullanılabilen başlıca seçenekleri kapsar:
| Parametre | Amaç |
|---|---|
model | kimi-k3.1-pro gibi model kimliğini belirtir. |
messages | Önceki kullanıcı girdileri ve asistan yanıtları dahil olmak üzere konuşma mesajlarını sağlar. Metin ve çok modlu içerikleri destekler. |
reasoning_effort | Muhakeme derinliğini kontrol eder. low, high veya max (varsayılan) değerlerini kabul eder. |
max_completion_tokens | Muhakeme token'ları ve nihai yanıt token'ları dahil olmak üzere maksimum üretim bütçesini belirler. Girdi token'ları ayrı sayılır; ancak girdi ve üretilen token'ların toplamı modelin bağlam penceresine sığmalıdır. |
stream | Yanıtın tamamını beklemek yerine kademeli olarak almak için true olarak ayarlayın. |
tools | Modelin uygulamadan çalıştırmasını isteyebileceği işlevleri tanımlar. |
response_format | Çıktı biçimlendirmesini kontrol eder. JSON modu için json_object ve şemayla kısıtlanmış yapılandırılmış çıktı için json_schema desteklenir. |
Not: Kimi K3.1 Pro sabit örnekleme ayarları kullanır. İsteklere temperature veya top_p eklemeyin. Parametre ayrıntıları ve desteklenen değerler için Chat Completions API başvuru belgesine bakın.
Yanıtı okuma
İstek başarıyla tamamlandıktan sonra, döndürülen completion nesnesi aracılığıyla ana yanıt alanlarına erişebilirsiniz:
choices[0].message– Model bir fonksiyon istediğindecontentveyatool_callsdâhil olmak üzere asistanın yanıtını içerir.choices[0].finish_reason– Üretimin neden durduğunu; örneğinstop,lengthveyatool_callsile belirtir.usage– Mevcut olduğunda girdi, çıktı ve önbelleğe alınmış token sayıları dâhil token kullanımı bilgilerini sağlar.
Temel bir metin yanıtı için choices[0].message.content alanını okuyun. Model tool_calls döndürürse uygulamanızın istenen fonksiyonları yürütmesi ve sonuçlarını takip eden bir istekte göndermesi gerekir
Akış örneği
Kimi'nin yanıtını artımlı parçalar hâlinde almak için stream=True ayarlayın. Aşağıdaki örnek, yukarıda yapılandırılan client nesnesini yeniden kullanır ve nihai yanıt geldikçe yazdırır:
Kimi K3.1 Pro, muhakeme içeriğini nihai yanıttan ayrı döndürür. Bu örnek yalnızca delta.content değerini yazdırır; dolayısıyla ayrı reasoning_content alanını işlemeden nihai yanıtı görüntüler.
Kısaca araç çağrısı
Araç çağrısı, bir görev modelin kendi yanıtının ötesinde bilgi veya işlem gerektirdiğinde Kimi'nin harici fonksiyonlar istemesini sağlar. Örneğin bir kullanıcı "Bugün Tokyo'da şemsiye götürmeli miyim?" diye sorarsa Kimi, hava tahminini almak için get_weather fonksiyonunu isteyebilir.
İş akışı üç adımdan oluşur:
Fonksiyonu tanımlayın:
get_weatherfonksiyonunu ve beklenen bağımsız değişkenlerinitoolsparametresi altında tanımlayın.Aracı yürütün: Kimi, fonksiyon adı ve bağımsız değişkenleriyle birlikte bir
tool_callsgirdisi döndürür. Uygulamanız ilgili fonksiyonu yürütür ve hava durumu verilerini alır.Sonucu geri gönderin: Kimi'nin tam asistan mesajını ve araç sonucunu (eşleşen
tool_call_idkullanarak) konuşmaya ekleyin, ardından kullanıcıya yönelik bir yanıt oluşturmak için Kimi'yi yeniden çağırın.
Aşağıdaki örnek, yukarıda yapılandırılan client nesnesini yeniden kullanır. Çalıştırmadan önce JSON ile serileştirilebilir hava durumu verileri döndüren bir get_weather(city) fonksiyonu uyguladığınızdan emin olun. Fonksiyon Kimi tarafından değil, uygulamanız tarafından yürütülür.
Burada get_weather(), Kimi tarafından doğrudan yürütülen bir fonksiyonu değil, uygulamanızın uyguladığı bir fonksiyonu temsil eder. Kimi ne zaman isteneceğine karar verir ve bağımsız değişkenleri sağlar; asıl işlemi uygulamanız gerçekleştirir ve sonucu döndürür.
Üretimde, her araç çağrısını işleyen, ilgili sonuçları konuşmaya ekleyen ve güncellenmiş mesajları Kimi'ye geri gönderen bir döngü uygulayın. Model ek araç istemeden nihai bir yanıt döndürene kadar bu döngüyü tekrarlayın.
Sağlayıcı seçerken "OpenAI uyumlu" olmasının önemi
Birçok sağlayıcı OpenAI Chat Completions biçimini destekler; bu da geliştiricilerin aşina oldukları SDK'ları ve istek yapılarını yeniden kullanmalarına olanak tanır. Geçiş için genellikle temel URL'yi, API anahtarını ve model kimliğini güncellemek; ardından desteklenen parametreleri ve yanıt işlemeyi kontrol etmek yeterlidir. Sağlayıcıları karşılaştırırken aşağıdaki unsurları göz önünde bulundurun:
Uyumluluk doğruluğu: Akışın, araç çağrısının, yapılandırılmış çıktıların ve
usageraporlamasının uygulamanızın beklediği şekilde çalıştığını doğrulayın. Aynı API biçimiyle uyumluluk, sağlayıcılar arasında özellik desteğinin veya yanıt davranışının aynı olacağını garanti etmez.İş yükünüze uygun model kalitesi: Dil dağılımınız ve görev türleriniz, genel kıyaslamalardan daha önemlidir.
Bağlam penceresi: Uzun bağlamlı modeller, tek bir istekte daha fazla kaynak materyal işleyerek bazı belge iş akışlarını basitleştirebilir.
Maliyet yapısı: Önbelleğe alma ve toplu işlem indirimleri, çoğu zaman öne çıkan token başına fiyatlardan daha belirleyicidir.
Ekosistemin genişliği: Responses ve Anthropic Messages gibi ek uyumlu uç noktalar, uygulamanız geliştikçe daha fazla entegrasyon seçeneği ve esneklik sağlayabilir.
Kimi API: Öne çıkan OpenAI uyumlu bir sağlayıcı
Moonshot AI tarafından geliştirilen Kimi API, özellikle Çince uygulamalar, uzun belge işleme ve kodlama ajanları için OpenAI uyumlu bir sağlayıcı arıyorsanız değerlendirmeye değerdir. Alışıldık API entegrasyon kalıplarını Kimi'nin uzun bağlam ve muhakeme yetenekleriyle birleştirir.
Doğrudan uyumlu
Uygulamanız hâlihazırda OpenAI Python SDK kullanıyorsa, tüm istek akışınızı yeniden yazmadan Kimi'yi entegre edebilirsiniz. Alışık olduğunuz Chat Completions arayüzünü korurken base_url, api_key ve model kimliği dâhil API yapılandırmasını güncellemeniz yeterlidir.
Örneğin aşağıdaki kod, report.txt dosyasındaki yerel bir raporu okur, içeriğini özetlenmesi için Kimi K3.1 Pro'ya gönderir ve oluşturulan yanıtı akış olarak iletir:
Burada client, API anahtarınız ortam değişkeninden okunarak daha önce başlatılan Kimi istemcisini yeniden kullanır. Temel URL'yi bölgenize göre seçin: uluslararası platform için https://api.moonshot.ai/v1, API'ye Çin ana karasından erişen kullanıcılar için ise https://api.moonshot.cn/v1.
Bu yaklaşım, belge özetleme ve API destekli diğer uygulamalar gibi görevlerde Kimi modellerini kullanırken mevcut OpenAI SDK iş akışınızı korumanızı sağlar.
Kimi'nin ayrıştığı noktalar
1M token bağlam penceresine sahip amiral gemisi model: Kimi K3.1 Pro, 1M tokene kadar bağlam penceresi ve yerel görsel anlama desteği sunar. Geliştiriciler kapsamlı kod tabanları, kitap uzunluğundaki belgeler ve görüntü girdileriyle tek bir iş akışında çalışabilir; bu da modeli karmaşık akıl yürütme, kodlama ve çok modlu uygulamalar için uygun hâle getirir.
Esnek maliyet optimizasyonu: Kimi API, yinelenen istek önekleri için otomatik bağlam önbelleğe alma ve gerçek zamanlı yanıt gerektirmeyen büyük ölçekli görevler için Batch API çıkarımı destekler. Önbellek ücretlendirmesi ve Batch fiyatları modele ve geçerli fiyatlandırma kurallarına bağlıdır. Güncel ücretler ve faturalandırma ayrıntıları için resmî Kimi API fiyatlandırmasına göz atın.
API ekosistemleri arasında uyumluluk: Kimi, OpenAI uyumlu Chat Completions ve Responses API uç noktalarının yanı sıra Anthropic Messages uyumlu bir uç nokta sunar. Geliştiriciler, uç noktaya ve desteklenen özelliklere göre gerekli uyarlamaları yaparak Kimi K3.1 Pro'yu alışık oldukları SDK'ler ve API biçimleriyle mevcut iş akışlarına entegre edebilir.
Sonuç
Chat Completions API ile başlamak kolaydır: API kimlik bilgilerinizi yapılandırın, bir istek gönderin ve oluşturulan yanıtı choices[0].message.content üzerinden okuyun. İlk API çağrınız çalıştıktan sonra, uygulamanızın ihtiyaçlarına göre çok turlu konuşmalar, akış yanıtları veya araç çağırma ekleyerek entegrasyonunuzu genişletebilirsiniz. Kimi ile geliştirmeye hazır mısınız? Kimi API anahtarınızı alın ve API istekleri göndermeye başlayın.
SSS
messages dizisi kullanır ve yanıtları choices dizisi aracılığıyla döndürür. Responses API ise farklı içerik türlerini ve araç etkileşimlerini destekleyen daha esnek bir girdi ve çıktı yapısı kullanır. Konuşma durumu yönetimi sağlayıcıya göre değişir. Kimi'nin Responses API'sinde uygulamalar, yanıt kimliği zincirlemesine güvenmek yerine her isteğe ilgili konuşma geçmişini eklemelidir.base_url değerini Kimi'nin API uç noktasına, api_key değerini Kimi API anahtarınıza ve model değerini desteklenen bir Kimi model kimliğine ayarlayın. Ardından, akışlı yanıtlar ve araç çağrıları gibi uygulamanızın kullandığı parametrelerin ve özelliklerin desteklendiğini doğrulamak için entegrasyonunuzu test edin.



