Gemini API, giriş olarak metin, resim, video ve ses sağlandığında metin çıkışı oluşturabilir.
Bu kılavuzda, generateContent
ve streamGenerateContent
yöntemleri kullanılarak metnin nasıl oluşturulacağı gösterilmektedir. Gemini'nin görüntü ve ses özellikleriyle çalışma hakkında bilgi edinmek için Görüntü ve Ses kılavuzlarına bakın.
Yalnızca metin girişinden metin oluşturma
Gemini API'yi kullanarak metin oluşturmanın en basit yolu, modele bu örnekte gösterildiği gibi tek bir yalnızca metin girişi sağlamaktır:
import google.generativeai as genai
genai.configure(api_key="GEMINI_API_KEY")
model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("How does AI work?")
print(response.text)
Bu durumda istem ("Yapay zekanın nasıl çalıştığını açıklayın") herhangi bir çıkış örneği, sistem talimatı veya biçimlendirme bilgisi içermez. Bu, sıfır görevli bir yaklaşımdır. Bazı kullanım alanları için tek atış veya birkaç atış istemi, kullanıcı beklentilerine daha uygun sonuçlar verebilir. Bazı durumlarda, modelin görevi anlamasına veya belirli yönergeleri uygulamasına yardımcı olmak için sistem talimatları da sağlayabilirsiniz.
Metin ve resim girişinden metin oluşturma
Gemini API, metin ve medya dosyalarını birleştiren çoklu formatlı girişleri destekler. Aşağıdaki örnekte, metin ve resim girişinden nasıl metin oluşturulacağı gösterilmektedir:
import google.generativeai as genai
import PIL.Image
genai.configure(api_key="GEMINI_API_KEY")
model = genai.GenerativeModel("gemini-1.5-flash")
organ = PIL.Image.open("/path/to/organ.png")
response = model.generate_content(["Tell me about this instrument", organ])
print(response.text)
Metin akışı oluşturma
Varsayılan olarak model, metin oluşturma sürecinin tamamını tamamladıktan sonra bir yanıt döndürür. Sonucun tamamını beklemek yerine kısmi sonuçları işlemek için akış özelliğini kullanarak daha hızlı etkileşimler elde edebilirsiniz.
Aşağıdaki örnekte, yalnızca metin içeren bir giriş isteminden metin oluşturmak için streamGenerateContent
yöntemini kullanarak akışın nasıl uygulanacağı gösterilmektedir.
import google.generativeai as genai
genai.configure(api_key="GEMINI_API_KEY")
model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("Explain how AI works", stream=True)
for chunk in response:
print(chunk.text, end="")
Sohbet görüşmesi oluşturma
Gemini SDK'sı, birden fazla soru ve yanıt toplamanıza olanak tanır. Böylece kullanıcılar, yanıtlara adım adım yaklaşabilir veya birden fazla bölümden oluşan sorunlarla ilgili yardım alabilir. Bu SDK özelliği, görüşme geçmişini takip etmek için bir arayüz sağlar ancak arka planda yanıt oluşturmak için aynı generateContent
yöntemini kullanır.
Aşağıdaki kod örneğinde temel bir sohbet uygulaması gösterilmektedir:
import google.generativeai as genai
genai.configure(api_key="GEMINI_API_KEY")
model = genai.GenerativeModel("gemini-1.5-flash")
chat = model.start_chat(
history=[
{"role": "user", "parts": "Hello"},
{"role": "model", "parts": "Great to meet you. What would you like to know?"},
]
)
response = chat.send_message("I have 2 dogs in my house.")
print(response.text)
response2 = chat.send_message("How many paws are in my house?")
print(response2.text)
Aşağıdaki örnekte gösterildiği gibi, canlı yayını sohbet ile de kullanabilirsiniz:
import google.generativeai as genai
genai.configure(api_key="GEMINI_API_KEY")
model = genai.GenerativeModel("gemini-1.5-flash")
chat = model.start_chat(
history=[
{"role": "user", "parts": "Hello"},
{"role": "model", "parts": "Great to meet you. What would you like to know?"},
]
)
response = chat.send_message("I have 2 dogs in my house.", stream=True)
for chunk in response:
print(chunk.text, end="")
response2 = chat.send_message("How many paws are in my house?", stream=True)
for chunk in response2:
print(chunk.text, end="")
print(chat.history)
Metin oluşturmayı yapılandırma
Modele gönderdiğiniz her istem, modelin yanıtları nasıl oluşturduğunu kontrol eden parametreler içerir. Bu parametreleri yapılandırmak için GenerationConfig
kullanabilirsiniz. Parametreleri yapılandırmazsanız model, modele göre değişiklik gösterebilen varsayılan seçenekleri kullanır.
Aşağıdaki örnekte, mevcut seçeneklerden birkaçının nasıl yapılandırılacağı gösterilmektedir.
import google.generativeai as genai
genai.configure(api_key="GEMINI_API_KEY")
model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content(
"Explain how AI works",
generation_config = genai.GenerationConfig(
max_output_tokens=1000,
temperature=0.1,
)
)
print(response.text)
Sırada ne var?
Gemini API'nin temel özelliklerini incelediğinize göre şunları deneyebilirsiniz:
- Görsel yorumlama: Görüntüleri ve videoları işlemek için Gemini'nin yerel görsel yorumlamasını nasıl kullanacağınızı öğrenin.
- Ses anlama: Ses dosyalarını işlemek için Gemini'nin doğal ses anlama özelliğini nasıl kullanacağınızı öğrenin.