Az örnekli (few-shot) istem verme

OpenAI API ile Prompt Engineering

Fouad Trad

Machine Learning Engineer

Az örnekli (few-shot) istem verme

  • Modele örnekler verilir (soru-cevap çiftleri)

Örnek soru ve cevaplarla yapısını ve en sonda modele yanıtlatmak istediğimiz soruyu gösteren az örnekli bir istem görselleştirmesi.

OpenAI API ile Prompt Engineering

Az örnekli (few-shot) istem verme

  • Modele örnekler verilir (soru-cevap çiftleri)

Az örnekli bir istemi LLM’e nasıl gönderdiğimizi gösteren görsel bir diyagram.

OpenAI API ile Prompt Engineering

Az örnekli (few-shot) istem verme

  • Modele örnekler verilir (soru-cevap çiftleri)

Az örnekli bir istemi LLM’e gönderip yanıt aldığımızı gösteren görsel bir diyagram.

OpenAI API ile Prompt Engineering

Az örnekli (few-shot) istem verme

  • Modele örnekler verilir (soru-cevap çiftleri)

Az örnekli bir istemi LLM’e gönderip yanıt aldığımızı gösteren görsel bir diyagram.

  • Örnek sayısı:
    • Sıfır -> sıfır örnekli (zero-shot)
    • Bir -> tek örnekli (one-shot)
    • Birden fazla -> az örnekli (few-shot)
OpenAI API ile Prompt Engineering

Sıfır örnekli (zero-shot) istem verme

  • Örnek olmadan istem sağlama
  • Model, bilgisine göre yanıt üretir
  • Hızlı ve basit görevler için idealdir
prompt = "What is prompt engineering?"
print(get_response(prompt))
Prompt engineering refers to designing and refining prompts or instructions given 
to a language model like ChatGPT to elicit desired responses or behaviors. It 
involves formulating specific guidelines or hints to guide the model's output 
towards a desired outcome.
OpenAI API ile Prompt Engineering

Tek örnekli (one-shot) istem verme

  • Modele tek bir örnek verin
  • Tutarlı biçim veya stil için yararlı
prompt =  """ 
Q: Sum the numbers 3, 5, and 6. A: 3+5+6=14
Q: Sum the numbers 2, 4, and 7. A: 
"""
print(get_response(prompt))
2+4+7=13
OpenAI API ile Prompt Engineering

Tek örnekli (one-shot) istem verme

prompt = """
Q: Sum the numbers 3, 5, and 6. A: The sum of 3, 5, and 6 is 14
Q: Sum the numbers 2, 4, and 7. A: 
"""
print(get_response(prompt))
The sum of 2, 4, and 7 is 13
OpenAI API ile Prompt Engineering

Az örnekli (few-shot) istem verme

  • Birden fazla örnek verin
  • Bağlama dayalı görevler için güçlüdür
prompt = """
Text: Today the weather is fantastic -> Classification: positive
Text: The furniture is small -> Classification: neutral
Text: I don't like your attitude -> Classification: negative

"""

OpenAI API ile Prompt Engineering

Az örnekli (few-shot) istem verme

  • Birden fazla örnek verin
  • Bağlama dayalı görevler için güçlüdür
prompt = """
Text: Today the weather is fantastic -> Classification: positive
Text: The furniture is small -> Classification: neutral
Text: I don't like your attitude -> Classification: negative
Text: That shot selection was awful -> Classification: 
"""
print(get_response(prompt))
negative
OpenAI API ile Prompt Engineering

Sohbet modeliyle az örnekli istem verme

response = client.chat.completions.create(
  model = "gpt-3.5-turbo",

messages = [{"role": "user", "content": "Today the weather is fantastic"},
{"role": "assistant", "content": "positive"},
{"role": "user", "content": "I don't like your attitude"}, {"role": "assistant", "content": "negative"},
{"role": "user", "content": "That shot selection was awful"} ], temperature = 0 )
print(response.choices[0].message.content)
negative
OpenAI API ile Prompt Engineering

Değerlendirmeler

  • Atış sayısını (shot) görev karmaşıklığına göre seçin
    • Az atış -> temel görevler
    • Çeşitli atış -> karmaşık görevler

Kendi kendine soru soran bir kişiyi gösteren bir görsel.

OpenAI API ile Prompt Engineering

Haydi pratik yapalım!

OpenAI API ile Prompt Engineering

Preparing Video For Download...