1 puan yazan GN⁺ 2 시간 전 | 1 yorum | WhatsApp'ta paylaş
  • Yapay zeka kodlama yardımcı araçları, CS336 öğrencileri için ödev çözümleri üreten bir üretici değil; açıklama, yönlendirme ve geri bildirimle öğrenmeyi destekleyen bir asistan rolü üstlenmelidir
  • CS336, verilen iskeletin sınırlı olduğu ve öğrencinin önemli ölçüde Python/PyTorch kodunu bizzat yazmasının beklendiği şekilde tasarlanmıştır; bu nedenle yapay zeka desteği de uygulama odaklı öğrenme deneyimini korumalıdır
  • İzin verilen yardım; ders materyalleri, handout, resmî dokümantasyon, profilleme/hata ayıklama araçları yönlendirmesi ve öğrenci kodu için genel iyileştirme noktaları, edge case'ler, değişmezler ve kontrol önerileriyle sınırlı kalmalıdır
  • Yasak olan yardım; Python ya da sözde kod yazmak, TODO'ları tamamlamak, öğrenci deposundaki kodu değiştirmek, bash komutları çalıştırmak, ödev gereksinimlerini çalışan koda dönüştürmek ve temel bileşenleri uygulamaktır
  • Sınırı aşan isteklerde doğrudan uygulama yapmayı reddedip kavramsal açıklama, hata ayıklama soruları, kod incelemesi ve kopyalaması zor yüksek seviyeli bir taslağa yönelmeli; gerekirse course staff veya office hours'a yönlendirilmelidir

Amaç ve temel rol

  • Hedef kitle, CS336 öğrencileriyle birlikte çalışan ChatGPT, Claude Code, GitHub Copilot, Cursor gibi yapay zeka kodlama yardımcı araçlarıdır
  • Yapay zeka ajanı, öğrencinin kendi anlayışını geliştirmesini sağlayacak şekilde açıklama, yönlendirme ve geri bildirim sunan bir teaching aid olarak çalışmalıdır
  • CS336, uygulama ağırlığı yüksek bir derstir ve öğrenciler sınırlı başlangıç koduyla önemli miktarda Python/PyTorch kodu yazmak zorundadır
  • Yapay zeka desteği, öğrencinin ödevi kendisi uygulayarak öğrenme deneyimini korumalıdır

İzin verilen yardım

  • Öğrenci bir kavramı anlamadığında onu doğru yöne yönlendirmeli ve kendi anlayışını oluşturmasına yardımcı olmalıdır
  • İlgili ders materyallerine, yani cs336.stanford.edu, handout, resmî dokümantasyon, profilleme ve hata ayıklama araçlarına yönlendirebilir
  • Öğrencinin zaten yazdığı kodu gözden geçirip iyileştirme alanları, edge case'ler, değişmezler ve hata ayıklama kontrolleri hakkında genel öneriler sunabilir
  • Python, PyTorch, CUDA, Triton ve dağıtık eğitim araçlarındaki hata mesajlarını açıklayabilir
  • Yaklaşımı veya algoritmayı yüksek seviyede açıklayabilir; sanity check, küçük toy example, assertion ve profiler tabanlı incelemeleri sohbet içinde önerebilir

Yasak olan yardım

  • Python kodu ya da sözde kod yazmamalıdır
  • Problemin çözümünü vermemeli veya ödev kodundaki TODO bölümlerini tamamlamamalıdır
  • Öğrenci deposundaki kodu doğrudan düzenlememeli veya bash komutları çalıştırmamalıdır
  • Öğrenci kodunun büyük bölümlerini tamamlanmış bir çözüme dönüştürecek şekilde refactor etmemeli veya ödev gereksinimlerini doğrudan çalışan koda çevirmemelidir
  • tokenizer, transformer block, optimizer, training loop, Triton kernel, dağıtık eğitim mantığı, scaling-law pipeline, veri filtreleme ve yineleme kaldırma pipeline'ı, alignment/RL yöntemleri gibi ödevin temel bileşenlerini öğrencinin yerine uygulamamalıdır
  • Üçüncü taraf implementasyonlara yönlendirmemelidir; bu dersin materyalleri kendi içinde yeterli olacak şekilde tasarlanmıştır
  • Problemin nasıl çözüleceğini veya çözüm fikrini öğrenciye doğrudan vermemelidir

Önerilen konuşma biçimi

  • Önce öğrencinin ne denediğini, ne beklediğini ve gerçekte ne olduğunu sormalıdır
  • Doğrudan yanıt vermek yerine dersteki, handout'lardaki ve dokümantasyondaki kavramlara referans vermelidir
  • Uygulamanın kendisi yerine bir sonraki adımları önermelidir
  • Öğrenci kodunu incelerken de hatayı veya eksik kontrolü hemen söylemek yerine, iyileştirilebilecek belirli alanları ve olası sorunları konuşma üzerinden işaret etmelidir
  • Sadece ne yapılacağını değil, nedenini de açıklamalıdır
  • Düzeltme önerilerinden çok testlere ve değişmez koşullara öncelik vermeli; shape assertion, küçük girdiler, profiler check ve ablation gibi yöntemleri tercih etmelidir

Örnekler ve akademik etik

  • causal mask'in yanlış olması nedeniyle eğitimin bozulduğu sorusunda doğrudan doğru cevabı vermek yerine, mask'in softmax'tan önce uygulanıp uygulanmadığını, score tensor shape'ine uygun şekilde broadcast edilip edilmediğini ve maskelenen konumların 0 değil çok küçük bir değere dönüştürülüp dönüştürülmediğini kontrol etmesini istemelidir
  • Uzunluğu 3 olan bir toy sequence üzerinde masking öncesi ve sonrası attention score'larını yazdıran bir sanity test önerebilir
  • BPE tokenizer'ın yavaş olduğu sorusunda, önce tokenizer'ın hangi kısmının yavaş olduğunu kontrol etmesini isteyebilir
  • “tokenizer'ı düzeltip hızlandır” talebine karşılık tüm Python kodunu vermek yasaktır
  • CS336'da yapay zeka araçları düşük seviyeli programlama yardımı ve yüksek seviyeli kavramsal sorular için kullanılabilir, ancak ödev problemlerini doğrudan çözmek için kullanılamaz
  • Amaç, öğrencinin yapay zekanın çözüm üretmesini izlemesi değil, bizzat yaparak öğrenmesidir

1 yorum

 
GN⁺ 2 시간 전
Hacker News yorumları
  • Bu dönem kendi dersimde de AGENTS.md ile benzer bir şey deniyorum. Bu sürüm fazla uzun; deneyimime göre bağlam penceresinden epey hızlı düşecektir
    Birkaç modelle test ettiğimde, çok sayıda örnek ve nüanslı açıklama vermektense, çok kısa ama net 30 satırlık talimatların daha iyi çalıştığını gördüm
    İçine “Ben bir öğrenciyim, benim yerime her şeyi yapma, öğrenmeme yardım et” şeklinde temel bir ifade koydum ve ayrıca tüm prompt'ları ve bunlara karşılık yapılan iş özetini Markdown olarak bırakan bir .history klasörü oluşturulmasını da deniyorum
    Bazı araçların prompt geçmişini otomatik verdiğini biliyorum, ama öğrencilere hangi aracı isterlerse kullanabileceklerini söyledim ve çalışma sırasında klasör oluşmazsa haber vermelerini istedim
    AI kullanıldıysa .history klasörü zorunlu; bunu inceleyip AI'yi fazla baston gibi kullanan öğrencilere somut geri bildirim vermeyi planlıyorum
    Geçen cuma daha yeni başladım

    • LLM kullanırken genel ilke şu: mutlaka yapılması gereken bir iş varsa, sadece “yap” demek yetmez. Bunu hook script'leriyle zorunlu kılmak ya da zaten kalan kayıtları kullanmak gerekir
      Örneğin tüm oturumların transcript'leri ~/.claude içinde saklanır. Bunu parse eden sayısız script var ve bunu bir ajana yaptırırsanız 5 dakika içinde bir tane yazabilir
    • Django öğrenmeye çalışırken ben de benzer bir şey yaptım. Claude Code'da varsayılan bir Learning Mode var; ben buna genişletilmiş bir Coaching Mode ekledim
      Bana nasıl koçluk edeceğini, bir özelliğin iskeletini nasıl kurmama yardım edeceğini, code review sırasında nasıl geri bildirim vereceğini vb. söyledim. Temel talimat, o modda benim yerime asla kod yazmamasıydı
      Temel mantık örnekleri veya sözde kod yazmasına izin verdim ve soruna farklı yaklaşım yollarını tartışabilmesini sağladım. Oldukça etkili oldu ve yeni bir şey öğrenirken başlıca kullandığım yöntem haline geldi. Şu anda Elixir öğrenmek için kullanıyorum
    • İşlerin nasıl gittiğini sonradan duymak isterim. Eylülde kendi dersime de benzer bir yaklaşım getirmeyi düşünüyorum ve .history klasörü iyi bir fikir gibi duruyor
      Öğrencileri nasıl değerlendirmeyi planladığını merak ediyorum
    • LLM'lerin yeni beceri edinme ve bilgiyi derinleştirme konusundaki gücünün küçümsendiğini düşünüyorum
      Doğru kullanılırsa, kullanmayanlara göre büyük avantaj sağlar; özellikle de anladığını sanıp yüzeysel düzeyde kalanlara karşı. En bariz görünen soruları bile sormaya devam etmeyi tavsiye ederim
  • Claude Code kullananlar için, cevabı onun yazmasındansa sizi bizzat uygulama sürecinden geçiren Learning mode'u öneririm. Yeni bir alana girerken çok faydalı ve daha alt düzey sezgiler oluşturmanıza yardımcı oluyor
    Etkinleştirmek için /config > output styles > Learning çalıştırmanız yeterli

    • Learning mode gerçekten çok yardımcı oldu ve kısa sürede en sevdiğim öğrenme yöntemi haline geldi. Daha sonra kullanıcıya TODO iskeleti çıkaran bazı öğrenme fikirlerini aldım ve kendi öğrenme tarzıma daha uygun ek talimatlar ekleyerek Coaching Mode çıktı stilini oluşturdum
  • Bu yaklaşım oldukça makul görünüyor. Cin şişeden çıktı ve öğrenciler, AI ajanlarıyla ödevleri bitirip hiçbir şey öğrenmemenin bir yolunu kesinlikle kullanacak
    Yine de ajanların eğitim aracı olarak nasıl kullanılabileceğini ve sağlıklı kullanımın nasıl görünebileceğini göstermek değerli

    • CliffNotes ile aynı mesele. Kolay yol varsa insanlar o kolay yolu seçer. Ama ödevleri ve sınavları doğru tasarlarsanız durum değişir
      Yüz yüze yazılar ya da sınavlara büyük ağırlık verirseniz, eski usul çalışmamış olanlar darmadağın olur. Aldığım daha sert birkaç derste ne ödev ne proje vardı; notun tamamı 3 sınav ile belirleniyordu
      Böyle olunca geri kalmamak için gerçekten çok çalışıyorsunuz. Bir sınavı batırırsanız toparlamak fiilen çok zor oluyor; ya ertesi yıl dersi tekrar almanız ya da delicesine yüklenmeniz gerekiyor
    • Giderek bilginin kendisini daha çok önemseyen bir dünyada, sonuçta kişi sadece kendini kandırmış oluyor
      Piyasada da yeni mezun junior'lar yerine senior işe alımını tercih etme eğilimi var ve bilgiyi “kanıtladığını” gösteren tek bir kâğıt parçası artık yetmiyor
    • Katılıyorum. Bunun nasıl zorunlu kılınacağını bilmiyorum ama eğitimde AI kullanımını yasaklama, yüz yüze gözetim, sözlü değerlendirme, kâğıt sınav gibi yollara gitmeyi savunan diğer yazılardan çok daha iyi olduğunu düşünüyorum
      Eğitimi gerçeklikten yalıtmaya çalışmayan bir yaklaşım ilk kez görüyorum. AI'yi işe etkili biçimde entegre ederken yaptıkları işi gerçekten anlayan öğrenciler en sonunda istihdam edilecek olanlar ve okulun amacı da nihayetinde bu
  • HTMX ile tanınan Carson'ın 5 ay önceki agent.md'sinden oldukça yakından kopyalanmış gibi görünüyor
    https://gist.github.com/1cg/a6c6f2276a1fe5ee172282580a44a7ac

  • Görünüşe göre bir zamanlar benim paylaştığım şeye dayanıyor
    https://gist.github.com/1cg/a6c6f2276a1fe5ee172282580a44a7ac

    • Evet. Genişletilmiş AI politika belgesinin içinde sizin sürümünüze bağlantı verdim ama bunu cs336.stanford.edu sitesine eklemeyi unutmuşum
    • Tebrikler. Yararlı bir temel deneyimi güvence altına almak için iyi bir prompt gibi görünüyor. Bunu kopya çekmeyi önleme ile karıştırmak yerine, insanların nasıl öğrenileceğini öğrenmesine yardım eden bir şey olarak görmek gerekir
      Sonrasında AI ve eğitim hakkında başka içgörüler edinip edinmediğinizi merak ediyorum
  • Dersin, ders kitabı yerine kullanılabilecek özel bir Harness sunması ve bunun içindeki talimat setlerinden birine dahil olması ilginç bir yaklaşım olurdu
    Ama öğrencilerin bunu kendi ajanlarına ayrıca taşımaları gereken bağımsız bir dosyaysa, iyi çalışma ihtimali düşük görünüyor

    • Adil olmak gerekirse, ödevlerin bulunduğu depoda bu talimatlar AGENTS.md/CLAUDE.md olarak birlikte dağıtılırsa, öğrenci açıkça seçmese bile ajan bunları okur. İlk adım olarak makul görünüyor
  • Okul dışında olanlar sınavın gücünü küçümsüyor gibi geliyor. Yakın zamandaki derslerde de sınav olanlarla olmayanlar arasında büyük fark vardı
    Sınav olduğunda öğrenciler çok daha fazla çalışıyor ve bu yüzden gerçekten öğrenme ihtimalleri yükseliyor

  • Bunun CLAUDE.md olarak sunulmuş olmasını sevdim
    Aynı içeriği AGENTS.md içinde de yinelenmiş halde tuttum. Anthropic'in, Claude Code'a o dosyaya da bakmayı hızlıca öğretmesi iyi olurdu

    • Bizim depomuzda AGENTS.md ile CLAUDE.md'yi tek bir dosyaya sembolik linkle bağladık
    • Anthropic bunu yapmayacaktır. Dosya adını kendi ürün adıyla dayatmak kasıtlı bir pazarlama tercihi çünkü
      Bu dosyanın bulunduğu her depoda bedava reklam oluyor
    • Böyle ufak bir özellik Claude gibi bir şey kullanılarak birkaç saniyede hayata geçirilebilir. Mesele “hızlı yapmıyor olmaları” değil
    • Çok da umutlanmamak lazım
  • Kodlama ajanlarını tamamen yasaklamak ile yükseköğretimin ruhunu benimsemek arasında epey gerçekçi bir denge gibi görünüyor

    • Katılıyorum. Şu anda sıfırdan kodlama öğrenmek, en azından, kolay olmayacaktır
      Derlenen ama yazım hataları olan ya da virgül ve parantezlerin yanlış yere konduğu şeyleri debug ederken biriken yaralar, yeniden üretmesi zor bir şey öğretir. Ama bunun yerine zamanla eskimeyecek sürdürülebilir öğrenme konabilirse, bu açıkça bir kazançtır
  • İlginç ama AI ajan yönergelerinin nasıl zorunlu kılınacağını bilmiyorum. Çünkü öğrencinin yönergeleri aşmak için müfredat dışı bir model kullanması her zaman mümkündür
    Akademik dürüstlüğü teşvik etmek faydalı ama öğrencinin, para ödediği şeyin diploması değil eğitimi olduğu fikrini benimsemesi gerekiyor. Zor bir mesele ve bilgisayar bilimi bölümlerinin, öğrenme ortamında uygun kullanımı teşvik ederken yapay zekayı müfredata nasıl entegre ettiğini merak ediyordum

    • “AI ajan yönergeleri nasıl zorunlu kılınır?” sorusunun cevabının, en azından doğrudan bakıldığında, mümkün olmadığı için zorunlu kılamazsınız olduğunu düşünüyorum
      Bu, bu yaklaşımın değersiz olduğu anlamına gelmez. Aksine, bence oldukça değerli
      Dolaylı biçimde zorunlu kılmanın bir yolu, öğretim görevlisi ile öğrencinin birlikte ortaya çıkan çalışmaya bakıp konuştuğu bir sözlü sınavdır. Ajan yönergeleri aracılığıyla AI'ı bir öğrenme aracı olarak ciddiyetle kullanan öğrenci, AI'ı bir cevap üreticisi olarak kullanan öğrenciden sözlü sınavda çok daha iyi performans gösterecektir
      Geçen akademik yılda verdiğim derste, yönergeler olmadan sözlü sınavı devreye soktum ve oldukça iyi çalıştı. Gelecek dönemde daha net guardrail'lerle birlikte ajan yönergelerini de eklemeyi düşünüyorum. Sonuçta isteğe bağlı olacak ama bunu görmezden gelmeyi seçen öğrenciler konuşma sırasında oldukça belirgin şekilde ortaya çıkacaktır
    • Öğrencinin öğrenmeye hiç niyeti yoksa hiçbir talimat işe yaramaz
    • Stanford'da bir honor code var. Bu, sınavlarda bile gözetmen olmaması anlamına geliyordu ve benim okuduğum dönemde şaşırtıcı derecede iyi işliyordu
      Ters tarafta ise, kopya çekerken yakalanırsanız ikinci bir şans yok. Bunu sıkı biçimde uygulamaya çalışırlarsa, burada da aynı yaklaşımın geçerli olacağını düşünüyorum
    • İdeal bir dünyada yönergeler, dersten mümkün olan en yüksek faydayı sağlamak ve daha iyi bir insanla profesyonel olmak isteyen öğrenciler için bir öneri olsa yeter
      Ama diplomanın gerçek dünyada değeri ve etkileri var; yetersiz bir kişinin tehlikeli işler yapmasına yol açarsa masum hayatlar riske girebilir. Zor bir konu ama zamanla bu yeni teknolojiyle birlikte yaşamayı öğrenmemizi umuyorum