Yapay Zekâ Uygulama Oluşturucular İçin İstem Nasıl Yazılır (Önce-Sonra Örnekleriyle)
Yapay zekâ uygulama oluşturucu için iyi bir istem kodu değil, ürünü anlatır: kimin kullandığını, adım adım ne yaptığını, hangi veriyi tuttuğunu ve kimin neye erişebileceğini. İlk sürüm var olduktan sonra, her mesajda belirli bir değişiklik isteyin, neyin aynı kalması gerektiğini söyleyin ve sorunları “şunu yaptım, şunu bekledim, şunu aldım” diye anlatın. Bu üç alışkanlık, hayal kırıklığı yaratan sonuçların çoğunu düzeltir.
Bu rehberin geri kalanı, uyarlayabileceğiniz önce-sonra örnekleriyle kalıpları ayrıntılı gösterir.
Bir uygulama oluşturucuya istem yazmak neden sohbet etmekten farklıdır
Bir sohbet asistanına bir soru sorduğunuzda, belirsiz bir istem belirsiz bir cevap getirir ve siz devam edersiniz. Bir yapay zekâ uygulama oluşturucuya istem verdiğinizde ise cevap çalışan bir programdır. Tarifinizdeki her boşluk bir tahminle doldurulur ve bu tahminler kod, veritabanı tabloları ve ekranlar olur; siz de bunlarla yaşamak ya da geri almak zorunda kalırsınız.
Bu yüzden bir istemin amacı akıllı görünmek değildir. Önemli kararların şansa bırakılmasını azaltmaktır. Bunun için teknik bir dil bilmenize gerek yok. Yalnızca sizin bildiğiniz şeylerde net olmanız gerekir: kullanıcılarınız, iş akışınız ve kurallarınız.
İlk istemde neler olmalı
Hiçbir şey yazmadan önce şu soruları yanıtlayın. Her biri, yapay zekânın yoksa tahmin edeceği bir boşluğu kapatır.
| Ekle | Neden önemli | Örnek |
|---|---|---|
| Ürün, tek cümleyle | Sonraki her kararın çerçevesini çizer | "İki koltuklu bir berber dükkânı için randevu sitesi" |
| Kim kullanıyor | Ekranları ve üslubu belirler | "Telefondan gelen müşteriler, bir de dizüstünden bakan sahip" |
| Ana akış, adım adım | İlk önce çalışması gereken şey | "Hizmet seç, saat seç, ad ve telefon gir, onay al" |
| Tutulan veri | Veritabanı tasarımına dönüşür | "Hizmetler, randevular, müşteriler" |
| Kimin neyi görebileceği ya da değiştirebileceği | Giriş ve yetkileri belirler | "Yalnızca sahip tüm randevuları görür" |
| Görünüm ve his, kısaca | Varsayılan, genel bir stilden kaçınır | "Koyu, sade, büyük düğmeler" |
| Şimdilik dışarıda bırakılanlar | İlk sürümü küçük tutar | "Henüz ödeme ya da yorum yok" |
Son satır hafife alınıyor. İstemediğiniz şeyi söylemek, yapay zekânın hiç istemediğiniz bir blog, fiyat sayfası ve bülten kaydı eklemesini engeller.
Önce-sonra: ilk istem
Önce:
Spor salonum için bir uygulama yap.
Oluşturucu her şeyi tahmin etmek zorunda kalır: üyeler mi, personel mi? Dersler mi, kişisel antrenman mı? Ödemeler var mı? Sonuçta bir spor salonu web sitesine benzeyen, ama ihtiyacınız olan hiçbir işi yapmayan bir şey alırsınız.
Sonra:
Küçük bir yoga stüdyosu için bir ders rezervasyon uygulaması yap. Üyeler bu haftanın derslerini görür (ad, eğitmen, saat, kalan yer), bir yer ayırır ve başlangıçtan iki saat öncesine kadar iptal edebilir. Üyeler e-posta ve şifreyle kayıt olur. Stüdyo sahibi giriş yapıp ders ekler, kimin kayıtlı olduğunu görür ve yoklama işaretler. Dersleri, üyeleri ve rezervasyonları bir veritabanında tut. Sakin, açık renkli ve telefonlarda iyi çalışan bir tasarım. Henüz ödeme yok.
İkinci sürüm hâlâ kısa. Yukarıdaki tablodaki soruları yanıtlıyor, o kadar.
Uygulamayı değil davranışı tarif edin
Ne nasıl inşa edileceğini değil, neyin olması gerektiğini tarif etmek çoğu zaman daha iyi sonuç verir.
Önce:
Rezervasyonları getiren bir useEffect ve düzenleme için bir modal bileşeni ekle.
Sonra:
Sahip bir rezervasyona tıkladığında, saatini değiştirebileceği ya da iptal edebileceği bir panel açılsın. Değişiklikler listede hemen görünsün.
İlk istem yapay zekâyı, uygulamanın kurgusuna uymayabilecek belirli bir tekniğe kilitler. İkincisi sonucu anlatır ve yapay zekânın zaten yazdığı kod için doğru yaklaşımı seçmesine izin verir. Geliştiriciyseniz ve güçlü bir tercihiniz varsa bunu söyleyin, ama yanına sonucu da ekleyin.
Kurallar konusunda somut olun
Yapay zekâyla inşa edilen uygulamaların en sık yanıldığı yer iş kurallarıdır, çünkü bunlar sizin için bariz, yapay zekâ için görünmezdir. Açıkça yazın.
- Sınırlar: "Bir üye en fazla üç gelecek rezervasyonu tutabilir."
- Zamanlama: "İptaller, dersin başlamasından iki saat önce kapanır."
- Uç durumlar: "Ders doluysa Rezervasyon yerine bekleme listesi düğmesi göster."
- Yetkiler: "Eğitmenler kendi derslerinin yoklamasını görebilir, diğer eğitmenlerinkini göremez."
Bunların her biri tek cümlelik bir şeydir. Herhangi birini atlamak, uygulamanın ya kuralı uygulamamasına ya da kendi versiyonunu uydurmasına yol açar.
İlk sürümden sonra: mesaj başına bir değişiklik
Bir şey önizlemede çalışmaya başladığında, tüm ürünü tarif etmekten çıkıp küçük, kontrol edilebilir değişiklikler istemeye geçin.
Önce:
Tasarım kaymış, rezervasyon düzgün çalışmıyor ve bir takvim görünümü ile e-postalar istiyorum.
Sonra (dört ayrı mesaj olarak):
- Bir dersin son yerini rezerve ettiğimde, ders hâlâ "1 yer kaldı" yazıyor. "Dolu" yazmalı ve Rezervasyon düğmesini gizlemeli.
- Program sayfasına, her gün için bir sütun olan haftalık takvim görünümü ekle. Mevcut liste görünümü bir seçenek olarak kalsın.
- Ders kartlarını telefonlarda daha kompakt yap: daha az iç boşluk, eğitmen adı saatle aynı satırda.
- Üye rezervasyon yaptığında ona onay e-postası gönder.
Bunun işe yaramasının nedenleri:
- Her değişiklik, yapay zekânın tek seferde doğru yapabileceği kadar küçük.
- Her birini ilerlemeden önce test edebilirsiniz.
- Biri ters giderse, diğerlerini kaybetmeden yalnızca o adımı geri alabilirsiniz.
Neyin korunacağını söyleyin
Zaten çalışan bir şeyde değişiklik isterken, neyin değişmemesi gerektiğini söyleyin. Bu, regresyonları (bir düzenlemeden sonra eski çalışan bir şeyin bozulması) durdurmanın en kolay yoludur.
Ana sayfanın üst alanını daha büyük bir başlık ve sağda bir fotoğrafla yeniden tasarla. Gezinmeyi, renkleri ve üst alanın altındaki her şeyi tam olarak olduğu gibi bırak.
Aynısı veri için de geçerli: "Üyelere bir telefon numarası alanı ekle. Mevcut hiçbir alanı silme ya da yeniden adlandırma."
Ekran görüntüsü ve tam metin kullanın
"Üstteki şey" gibi ifadeler belirsizdir. Çoğu yapay zekâ uygulama oluşturucu görsel kabul eder ve kısa bir notla birlikte bir ekran görüntüsü, paragraf dolusu bir açıklamadan daha hızlıdır.
- Bir ekran görüntüsü ekleyin ve "kırmızıyla çevrelenen düğme telefonlarda menünün üstüne biniyor" deyin.
- Bir hata mesajının tam metnini, özetlemeden yapıştırın.
- Ekrandaki etiketleri tam olarak alıntılayın: "Ayarlar sayfasındaki Değişiklikleri kaydet düğmesi".
Özellikle hatalar için şu biçimi kullanın:
Rezervasyonlar sayfasında yarınki bir rezervasyon için İptal'e tıkladım. Listemden kaybolmasını bekledim. Bunun yerine hiçbir şey olmadı ve sayfayı yenilediğimde rezervasyon hâlâ duruyor. Düzelt ve iptalin çalıştığını kontrol et.
Yapay zekâyla inşa edilmiş bir uygulamanın hatalarını nasıl ayıklarsınız rehberimiz bunu daha derinlemesine ele alır.
Büyük değişiklikler için önce plan
Uygulamanın birçok parçasına dokunan işler için (hiç hesabı olmayan bir uygulamaya kullanıcı hesapları eklemek, ödeme eklemek, verinin yapısını değiştirmek), herhangi bir kod değişmeden önce bir plan isteyin.
Hiçbir şeyi değiştirmeden önce, ekip hesaplarını nasıl ekleyeceğini açıkla: hangi yeni tablolar, hangi sayfalar değişecek ve mevcut kullanıcılara ne olacak. Henüz kodu düzenleme.
Planı oku. Bir şeyi yanlış anlamışsa, bitmiş bir özelliği düzeltmekten çok daha ucuz olan bir paragrafı düzeltmek. Birçok oluşturucunun bunun için özel bir modu vardır; Mythex'te bu, Build ve Ask yanında Plan modudur.
Neyden kaçınmalısınız
| Kaçının | Neden | Bunun yerine |
|---|---|---|
| "Daha iyi yap" / "Göz alıcı yap" | Hedef yok, yapay zekâ rastgele şeyleri değiştirir | Değişikliği adlandırın: "bölümler arasında daha fazla boşluk, daha büyük başlıklar" |
| On özelliği bir arada içeren dev bir istem | Hatalar birikir; test etmek zorlaşır | Mesaj başına bir özellik |
| Sohbete API anahtarları yapıştırmak | Anahtarlar sohbet geçmişinde kalır | Oluşturucunun gizli bilgi ya da ortam ayarlarını kullanın |
| Bozuk bir sonuçla tartışmak | Her düzeltme hatanın üstüne biner | Geri alın, sonra yeniden ifade edin |
| Anlamadığınız kodu belirtmek | Zayıf bir uyuma kilitler | İstediğiniz davranışı tarif edin |
| "Kurumsal düzeyde güvenlik" istemek | Somut bir anlamı yok | Gerçek kuralları listeleyin: kimin neyi görebileceği |
API anahtarlarına gelince: bir ödeme ya da e-posta servisine ihtiyacınız varsa, anahtarlarını istemin içine değil, projenin gizli bilgilerine koyun. Bu kavram yeniyse, ortam değişkenleri ve gizli bilgiler nedir rehberine bakın.
Yeniden kullanılabilir istem şablonları
Köşeli parantez içindeki kısımları değiştirerek uyarlayın.
Yeni uygulama:
[Uygulama türü] için [kimin için] bir uygulama yap. [Ana akış, adım adım] yaparlar. [İkinci kullanıcı türü] [ne yapmak] için giriş yapar. [Veriyi] bir veritabanında tut. [Görünüm ve his]. [Sonraya bırakılanları] dışarıda bırak.
Yeni özellik:
[Sayfa]'ya [özellik] ekle. [Kullanıcı] [eylem] yaptığında [ne olmalı]. Yalnızca [kim] [bunu yapabilsin]. [Mevcut şeyler] olduğu gibi kalsın.
Tasarım değişikliği:
[Sayfada] [belirli öğeyi] [belirli değişikliğe] çevir. [Korunacak şeyi] koru. Telefon genişliğindeki ekranda doğru göründüğünü kontrol et.
Hata:
[Sayfada] [adımlar] yaptım. [Beklenen] bekliyordum. Bunun yerine [gerçekleşen, tam hata metniyle birlikte]. Düzelt ve akışın çalıştığını doğrula.
Değişiklik istemeden soru:
Kod değiştirme. [Uygulamanın bir parçasının] nasıl çalıştığını ve [veri] nerede tutulduğunu açıkla.
Daha uzun bir şartname yazmak
Daha büyük projelerde, ilk istem olarak yapıştırabileceğiniz bir sayfalık bir brif yazmak yardımcı olabilir: kullanıcılar, temel akışlar, veri, kurallar ve kapsam dışında kalanlar. Bunu yapay zekâya bile taslaklatabilirsiniz; yapay zekâyla ürün gereksinim dokümanı yazma rehberimiz nasıl yapılacağını anlatır. Yalnızca ilk inşa isteğini temel akışla sınırlı tutun, geri kalanını adım adım ekleyin.
Mythex'te istem yazmak
Yukarıdakilerin hepsi Mythex'te çalışır. Yardımcı olabilecek birkaç özellik:
- Build, Plan ve Ask modları. Büyük ya da riskli değişiklikler için Plan'ı, düzenleme yapmadan açıklama istediğinizde Ask'ı kullanın.
- Kontrol noktaları. Her başarılı değişiklikten sonra Mythex bir kontrol noktası kaydeder; bir cevaptaki Bu noktaya geri dön seçeneği projeyi geri alır. Ayrıca önceki bir mesajı düzenleyip yeniden gönderebilir, o noktadan farklı bir istem deneyebilirsiniz.
- Gizli bilgiler kartı. Ajan bir API anahtarına ihtiyaç duyduğunda, sohbetteki bir kart üzerinden sorar; böylece değer mesajınıza yazılmaz, proje gizli bilgisi olarak saklanır.
- Görseller. Ekran görüntüsü ya da maket ekleyin, ajan onlara bakar.
Dokümanlarda etkili istemler hakkında kısa bir sayfa ve yinelemeyi yeniden inşa etmeden yapma hakkında bir sayfa var. Sıfırdan başlıyorsanız, yapay zekâyla uygulama nasıl yapılır tam bir projeyi adım adım anlatır; yapay zekâyla iyi görünümlü bir uygulama nasıl tasarlanır ise görsel rötuş için istemleri ele alır.
Sorular
Yapay zekâ uygulama oluşturucu için bir istem ne kadar uzun olmalı?
İlk sürüm için dört ila sekiz cümlelik kısa bir paragraf genellikle yeterlidir: uygulamayı kimin kullandığı, ana akış, tutulan veri ve kimin neyi görebileceği. Bundan sonra, tek seferde tek bir değişiklik isteyen kısa istemler, uzun olanlardan daha iyi sonuç verir.
Yapay zekâya hangi çatıyı ya da dili kullanacağını söylemeli miyim?
Yalnızca bir nedeniniz varsa: kodu devralacak bir geliştirici ya da yalnızca belirli bir yığınla çalışan bir servis. Aksi halde ürünü tarif edin ve oluşturucunun makul varsayılanları seçmesine izin verin.
Yapay zekâ neden benden istemediğim şeyleri değiştirmeye devam ediyor?
Genellikle istem çok geniş olduğu için (“daha iyi yap”) ya da neyin korunacağını söylemediğiniz için. Değiştirilecek şeyi tam olarak adlandırın, neyin aynı kalması gerektiğini söyleyin ve her mesajda tek bir değişiklik isteyin.
Kötü bir sonucu daha fazla istemle mi düzeltmeli yoksa baştan mı başlamalıyım?
Son değişiklik işleri kötüleştirdiyse, düzeltmeleri üst üste yığmak yerine o değişikliğin öncesindeki sürüme dönün ve yeniden ifade edin. Yeni bir proje, yalnızca fikrin kendisi değiştiğinde başlatılmalıdır.