Yapay zeka, artık neredeyse herkesin gündelik yaşamında herhangi bir sosyal medya mecrasını kullanıp, kontrol eder gibi hayatımızın bir parçası haline geldi. Neyle uğraşıyorsak, neyi öğrenmek istiyorsak veya aklımıza gelen en saçma sorulardan, en zor matematik sorularına bile yapay zekaya yazdığımız sorular ve cümleler sayesinde her şeye cevap almak mümkün. Fakat bu iş sandığınız kadar basit değil aslında.
Yapay zeka ve yapay zeka dil modellerinin ortaya çıkmasıyla birlikte ChatGPT, Bard ve Bing gibi yapay zeka sohbet araçlarına yazdığımız her şey aslında birer “prompt” adını verdiğimiz komutlara benzer cümlelerdir. Buna göre, sizin yapay zekaya söylediğiniz her bir cümle prompt olarak geçmektedir. Prompt yazmak, yukarıda belirttiğimiz gibi basit gibi gözükebilir fakat zamanla üzerinde uzmanlaşabileceğiniz bir alan haline gelmektedir. Aslında prompt yazmanın mantığı çok basit; yapay zekaya karşınızda bir insan varmış gibi sohbet ederek ne istediğinizi en açık şekilde belirtmek.
En basit örnekle anlatmak gerekirse, ChatGPT’ye yazacağınız “Bana Python üzerinden XOX oyunu kodlamanı istiyorum” prompt’u ile ne istediğinizi açıkça belirttiğiniz “Sen 10 yıllık deneyime sahip bir Python yazılımcısısın. Uzun ve karmaşık kodlar kullanmıyorsun. Olabildiğince kısa ve profesyonel kodlar yazıyorsun. Bana Python için XOX oyunu kodlamanı istiyorum.” prompt’u arasında çok büyük farklılıklar oluyor.
Basit, düz şekilde yazılan prompt ve detaylıca anlatılan prompt arasındaki farklara aşağıdan bakabilirsiniz.
ChatGPT’ye basit bir şekilde Python için XOX oyunu kodlamasını istedim ve eksiksiz yerine getirdi. Toplam da ise 37 satır kod yazmış.
(Fotoğrafların üzerine tıklayarak tam boyutuna ulaşabilirsiniz.)
Yazdığı kodları inceleyebilirsiniz:
def print_board(board): print(f' {board[0]} | {board[1]} | {board[2]} ') print('---+---+---') print(f' {board[3]} | {board[4]} | {board[5]} ') print('---+---+---') print(f' {board[6]} | {board[7]} | {board[8]} ') def check_win(board, player): win_conditions = [(0, 1, 2), (3, 4, 5), (6, 7, 8), (0, 3, 6), (1, 4, 7), (2, 5, 8), (0, 4, 8), (2, 4, 6)] for condition in win_conditions: if board[condition[0]] board[condition[1]] board[condition[2]] == player: return True return False def play_game(): board = [' ']*9 current_player = 'X' while ' ' in board: print_board(board) move = input(f"Player {current_player}, enter your move (0-8): ") if board[int(move)] == ' ': board[int(move)] = current_player if checwin(board, currentplayer): print_board(board) print(f"Player {current_player} wins!") break currenplayer = 'O' if currentplayer == 'X' else 'X' else: print("Invalid move. Try again.") else: print("It's a draw.") play_game()
Şimdi ise ChatGPT’ye ne istediğimizi daha detaylı ve açıkça söyleyerek Python için XOX oyunu kodlamasını istedim. Önceki isteğimizden farklı olarak 37 satır kod yazmak yerine, kodları istediğimiz şekilde azaltarak, toplam 30 satıra indirmiş.
(Fotoğrafların üzerine tıklayarak tam boyutuna ulaşabilirsiniz.)
Yazdığı kodları inceleyebilirsiniz:
class TicTacToe: def init(self): self.board = [' '] * 9 self.current_player = 'X' self.winning_combos = [(0, 1, 2), (3, 4, 5), (6, 7, 8), (0, 3, 6), (1, 4, 7), (2, 5, 8), (0, 4, 8), (2, 4, 6)] def print_board(self): for i in range(0, 9, 3): print(f' {self.board[i]} | {self.board[i+1]} | {self.board[i+2]} ') if i < 6: print('---+---+---') def play(self): while ' ' in self.board: self.print_board() move = input(f"Player {self.current_player}, enter your move (0-8): ") if self.board[int(move)] == ' ': self.board[int(move)] = self.current_player if self.check_win(): self.print_board() print(f"Player {self.current_player} wins!") break self.currenplayer = 'O' if self.currentplayer == 'X' else 'X' else: print("Invalid move. Try again.") else: print("It's a draw.") def check_win(self): for combo in self.winning_combos: if self.board[combo[0]] self.board[combo[1]] self.board[combo[2]] != ' ': return True return False game = TicTacToe() game.play()
Yazdığınız her prompt, karmaşıklığına ve talep ettiğiniz ayrıntı düzeyine bağlı olarak, ChatGPT’nin vereceği cevaplar, birkaç cümle veya birkaç paragraf uzunluğunda olabilir fakat sorduğunuz şeyler hakkında kusursuza yakın cevaplar alacaksınız. Peki, prompt yazarken nelere dikkat etmelisiniz?
Net Olun
Yapay zekadan ne yapmasını ve ne istediğinizi açıkça tanımlayan cümleler kullanın. Belirsizlikten kaçının. Örneğin, “Bana köpeklerden bahsedin” yerine “Evcil köpeklerin özellikleri, davranışları ve bakımları hakkında ayrıntılı bir açıklama yapın” ifadesini kullanın.
Direktifler Verin
Yapay zeka sohbet modelleri, net ve ne istediğinizi açık şekilde belirten direktiflere yanıt verir. Bu nedenle, net bir direktif oluşturmak çok önemlidir. Örneğin, “Aşağıdaki Türkçe metni Fransızca’ya çevirin: ‘Merhaba, nasılsınız?”
Hassasiyet
Kesin prompt’lar, kesin cevaplar verir. Örneğin, bir liste istiyorsanız, bunu açıkça belirtin: “Dünyanın en kalabalık 10 ülkesini listeleyin.”
Rol Verin
Yapay zeka sohbet modelleri vereceğiniz rol talimatlarına bağlı olarak çok daha profesyonel ve isabetli cevaplar verir: “Bir tarihçi olarak, Amerikan İç Savaşı’nın önemini açıklayın ve bu konu hakkında vereceğim sorulara cevap verin.”