Chat exercise
Chat exercise
Bu modül için tahmini süre: 4 dakika
Genel bakış
Şimdiye kadar öğrendiklerinizi pekiştirmek için kısa bir alıştırma yapıyoruz. Jupyter notebook’unuzdan çalışan, terminalde sürekli kullanıcı input’u alıp Claude’a forward eden mini bir chatbot yazacaksınız. Amacımız: önceki bölümdeki add_user_message, add_assistant_message ve chat helper’larını gerçek bir multi-turn konuşmada birleştirmek.
Egzersizin akışı
Hücreyi her çalıştırdığınızda küçük programınız şu adımları izlemeli:
- Python’ın built-in
input()fonksiyonu ile kullanıcıdan metin iste - Gelen kullanıcı input’unu mesaj listesine user message olarak ekle
chat(messages)ile Claude’dan response al- Claude’un cevabını listeye assistant message olarak ekle
- Üretilen metni terminale yazdır
- Adım 1’e geri dönerek aynı süreci sonsuza kadar tekrar et
Program konuşmanın tüm geçmişini koruduğu için Claude önceki turlardaki context’i hatırlamaya devam edecek.
Başlangıç şablonu
İşte kullanabileceğiniz boş iskelet:
messages = []
while True:
user_input = input("You: ")
# 1. user message ekle
# 2. chat() çağır
# 3. assistant message ekle
# 4. yanıtı yazdır
Çözüm
messages = []
while True:
user_input = input("You: ")
add_user_message(messages, user_input)
answer = chat(messages)
add_assistant_message(messages, answer)
print("---")
print(answer)
print("---")
Notebook’ta hücreyi çalıştırıp birkaç tur konuşma yapın: örneğin önce “What’s 1+1?” sorun, sonra “Add to that answer” diyerek context’in korunduğunu doğrulayın. Döngüden çıkmak için Jupyter’da interrupt butonunu kullanın.
Temel çıkarımlar
- Built-in
input()fonksiyonu ile basit bir CLI chatbot kurmakchat()helper’ı için iyi bir sandbox sağlar - Her turda mesajı listeye eklemek ve listenin tamamını Claude’a göndermek multi-turn context’i korur
- Assistant’ın yanıtını listeye eklemeyi unutursanız Claude konuşmayı hatırlamaz hale gelir — sık yapılan hata
- Sonsuz
while Truedöngüsünden Jupyter’da interrupt ile çıkılır; production’da uygun bir exit komutu eklenebilir - Bu küçük alıştırma kursun ilerleyen bölümlerinde sistem prompt ve temperature gibi parametrelere geçildiğinde temel alacağımız iskelettir