Sıra yönetimi: devir eşiği, kesme ve bağlam
Kullanıcının sözünü bitirdiğine karar veren eşikleri, kesme davranışını, konuşma geçmişinin hangi bölümünün bağlamda tutulacağını ve araç çağrısı gereken turların akışı bozmadan nasıl yürütüleceğini öğretir.
Önkoşul: Large Language Model, Prompt Engineering
BU DERSİN SONUNDA
- Devir eşiğini erken kesme ve fazla bekleme arasındaki ödünleşimle ayarlamak
- Kesme ve bekleme işaretlerini tur durumuna bağlı olarak tasarlamak
- Konuşma geçmişinden bağlamda kalacak bölümü seçmek
- Araç çağrısı gereken turları akışı bozmadan yürütmek
- 1
Teori
Kavramın çalışma mantığı
- 2
Örnek
Gerçek bir senaryo üzerinde gösterim
- 3
Lab
Uygulamalı alıştırma
- 4
Test
Kısa ölçüm
- 5
Proje
Rotadaki projeye katkı
Kısa cevap
Sıra yönetimi tek bir sorunun cevabıdır: sıra şu anda kimde? Sistem bunu her an bir durum olarak tutmazsa iki tipik arıza çıkar — kullanıcı düşünmek için duraksadığında sözü kesilir, ya da sözünü bitirdiğinde sistem beklemeyi sürdürür. Devir eşiği bu iki hatayı birbirine çeviren tek düğmedir; ama eşik tek bir sabit olarak değil, tur durumuna ve cümlenin tamamlanmışlığına göre ayarlanır.
Teori: sessizlik tek başına bitirmez#
Sessizlik süresi, konuşmanın bittiğine dair zayıf bir kanıttır. İnsan konuşmasında duraksama iki farklı iş yapar: sözü devretmek ve sürdürürken düşünmek. İkisi akustik olarak benzerdir ama dilsel olarak ayrışır — devreden duraksama genellikle tamamlanmış bir sözdizimsel yapının ardından, sürdüren duraksama yarım kalmış bir yapının ortasında gelir. Yalnızca sessizlik sayacına bakan bir sistem bu yüzden yavaş konuşanı ve düşünerek konuşanı sürekli keser.
Pratik çözüm iki sinyali birleştirmektir: etkinlik tespitinin ölçtüğü sessizlik süresi ve o ana kadarki kısmi metnin tamamlanmışlığı. Kısmi metin bir bağlaçla, sayıyla ya da yarım bir tamlamayla bitiyorsa eşik uzatılır; şema açısından yürütülebilir bir istek oluşmuşsa kısaltılır. Türkçede yardımcı bir ipucu vardır: yüklem çoğunlukla sonda bulunduğundan çekimli bir fiilin görünmesi tamamlanma lehine güçlü bir işarettir. Bu bir kural değil bir olasılık kaydırmasıdır; eşiği sıfırlamaz, kısaltır.
Kesme simetrik problemdir: sistem konuşurken kullanıcı araya girdiğinde kim susar? Karar sistemin o an ne yaptığına bağlıdır. Bilgi okurken kullanıcı her zaman kesebilmelidir; bu, uzun cevapları katlanılabilir kılan tek şeydir. Onay isterken ise araya giren her ses cevap sayılmamalıdır — 'hayır' ile yarım kalmış bir 'ha' arasındaki fark, geri alınamaz bir işlemi tetikleyip tetiklememek kadar büyüktür.
Uygulamada: tur durumuna göre davranış#
| Tur durumu | Devir eşiği | Kesme | Bekleme işareti |
|---|---|---|---|
| Serbest istek bekleniyor | Uzun tutulur; yarım cümle cezalandırılmaz | Serbest | Gerekmez |
| Eksik parametre soruldu | Kısa tutulur; beklenen cevap kısadır | Serbest | Kısa onay sesi |
| Geri alınamaz işlem için onay soruldu | Kısa, ama cevap şemaya uymalı | Cevap sayılmaz | Bekleniyor ifadesi |
| Sistem uzun bilgi okuyor | Uygulanmaz | Serbest; okuma anında durur | Gerekmez |
| Araç çağrısı yürüyor | Girdi kabul edilir, kuyruğa alınır | Ses çıktısını durdurur, çağrıyı durdurmaz | İşlem sürüyor bildirimi |
Bağlamda ne kalır#
Konuşma uzadıkça geçmişin tamamını bağlama koymak iki maliyet üretir: bağlam penceresi dolar ve model artık geçersiz olan eski parametrelere takılır. Sesli arayüzde ikinci maliyet daha ağırdır, çünkü kullanıcı kendi söylediğini sık düzeltir; eski değeri ham hâlde bağlamda bırakmak modele iki rakip değer sunmak demektir. Doğru yaklaşım geçmişi ham kayıt olarak değil katmanlı tutmaktır: değişmez bir durum nesnesi, son birkaç turun ham metni ve daha eskisinin karar özeti.
- Durum nesnesi: aktif niyet, doldurulmuş parametreler, bekleyen soru, onay durumu. Her turda güncellenir, birikmez.
- Son turlar: kullanıcının son iki-üç sözü ve sistemin cevapları ham hâlde; gönderme ve düzeltme ifadeleri ancak burada çözülür.
- Karar özeti: daha eski turlardan yalnızca varılan kararlar saklanır, cümleler değil.
- Yürütme kaydı: çağrılan araçlar, döndürdükleri ve hata durumları; modelin aynı çağrıyı tekrarlamasını önler.
- Dışarıda kalanlar: kısmi çözümleme çıktıları, kesilmiş yarım sözler ve silinmiş parametrelerin eski değerleri.
Karar: araç çağrısı olan tur#
- 1Çağrıyı sınıflandır
Okuma mı yazma mı? Okuma doğrudan yürütülür; yazma onaya bağlanır ve onay kaydı koda yazılır.
- 2Beklemeyi duyur
Çağrı kısa sürmeyecekse sessiz kalma; kısa bir ifade sıranın sistemde olduğunu ve turun düşmediğini gösterir.
- 3Girdi kanalını açık tut
Çağrı yürürken gelen ses atılmaz, kuyruğa alınır ve çağrı bitince değerlendirilir.
- 4Sonucu duruma yaz
Aracın döndürdüğü değer durum nesnesine işlenir; modele ham hata yerine yorumlanmış sonuç verilir.
- 5Zaman aşımını konuş
Süre aşıldığında sessizce beklemeyi sürdürme; durumu söyle ve alternatif öner.
Sık yapılan hata#
En yaygın hata, devir eşiğini tek bir sabit olarak uygulamak ve o sabiti kendi konuşma temposuyla ayarlamak. Geliştirici eşiği kendi hızıyla dener, kısa bir değer makul görünür; yavaş konuşan, ikinci dilinde konuşan veya düşünerek konuşan kullanıcı sürekli kesilir ve bu kesilmeler ortalama ölçümlerde görünmez. İkinci yaygın hata, kesme sinyalini yalnızca ses çıktısının durdurulması saymak: kullanıcı araya girdiğinde okunmamış cevabın dayandığı durum da geri alınmalıdır, yoksa sistem söylemediği bir şeyi söylenmiş sayar.
LAB · UYGULAMALI ALIŞTIRMA
Devir eşiğini kendi kayıtlarınızla ayarlayın
- 1Aynı on isteği üç farklı tempoda kaydedin: hızlı, normal ve düşünerek duraksayan. Her kayıtta duraksama yerlerini not edin.
- 2Kayıtları, kısa/orta/uzun olarak kendi seçtiğiniz üç sessizlik eşiğiyle hattınızdan geçirin.
- 3Her koşuda iki sayıyı sayın: erken kesilen tur sayısı ve kullanıcı bitirdikten sonra beklenen fazla süre.
- 4Kısmi metnin çekimli bir fiille bitip bitmediğine bakan basit bir kural ekleyin; eşiği bu kurala göre uzatıp kısaltarak koşuyu yineleyin.
- 5Dört koşunun sonuçlarını tek tabloda karşılaştırın ve hangi eşiğin hangi tempo için kabul edilebilir olduğunu yazın.
- 6Onay sorusu içeren turlar için ayrı bir eşik belirleyip aynı kayıtlarla doğrulayın; bu turlarda araya giren yarım seslerin cevap sayılmadığını kontrol edin.
Beklenen çıktı
Üç konuşma temposu için erken kesme ve fazla bekleme sayılarını gösteren bir eşik tablosu ve onay turları için ayrıca belirlenmiş, kayıtla doğrulanmış bir eşik değeri.
Sık sorulan sorular
Kısmi çözümleme çıktısını kullanıcıya göstermeli miyim?
Sesli arayüzde soru anlamsızdır; metin eşliğinde bir arayüz varsa cevap koşulludur. Kısmi metin her hâlükârda geliştirici için değerlidir, çünkü devir kararını besler ve saklanmalıdır. Kullanıcıya gösterildiğinde sonradan değişen kelimeler dikkat çeker; gösteriyorsanız değişimin beklendiğini görsel olarak belli edin ve aşağı akış mantığını kısmi metne değil nihai metne bağlayın.
Durum nesnesini model mi güncellesin, kod mu?
Yazma yetkisi kodda kalmalı. Model önerilen güncellemeyi yapılandırılmış biçimde döndürür, kod şemaya göre doğrular ve yazar. Modelin duruma doğrudan yazmasına izin vermek, bir turdaki yanlış çıkarımın sonraki turların tamamını zehirlemesine yol açar; üstelik hatanın hangi turda girdiği de kaybolur.
Kullanıcı araç çağrısı sırasında konuyu değiştirirse?
Kuyruğa aldığınız ses çözümlendiğinde niyet karşılaştırması yapın. Yeni niyet farklıysa yürüyen çağrının sonucunu atmayın; duruma yazıp beklemeye alın, kullanıcı geri döndüğünde aynı çağrıyı tekrarlamak zorunda kalmazsınız. Okuma çağrıları için bu davranış güvenlidir; yazma çağrıları zaten onaya bağlı olduğundan konu değişikliği bekleyen onayı düşürür.
LEARN
Konuşma Arayüzü Geliştirici rotasına devam et
Dersler tek başına da okunabilir, ama sıralı ilerlemek önkoşul boşluklarını kapatır.
