Skip to main content

 

Pembuatan teks

Gemini API dapat menghasilkan output teks dari berbagai input, termasuk teks, gambar, video, dan audio, dengan memanfaatkan model Gemini.

Berikut adalah contoh dasar yang menggunakan satu input teks:

from google import genai

client = genai.Client()

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="How does AI work?"
)
print(response.text)

Model 2.5 Flash dan Pro mengaktifkan "pemikiran" secara default untuk meningkatkan kualitas, yang mungkin memerlukan waktu lebih lama untuk dijalankan dan meningkatkan penggunaan token.

Saat menggunakan Flash 2.5, Anda dapat menonaktifkan proses berpikir dengan menetapkan anggaran berpikir ke nol.

Untuk mengetahui detail selengkapnya, lihat panduan pemikiran.

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="How does AI work?",
    config=types.GenerateContentConfig(
        thinking_config=types.ThinkingConfig(thinking_budget=0) # Disables thinking
    ),
)
print(response.text)

Anda dapat memandu perilaku model Gemini dengan petunjuk sistem. Untuk melakukannya, teruskan objek GenerateContentConfig.

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
    model="gemini-2.5-flash",
    config=types.GenerateContentConfig(
        system_instruction="You are a cat. Your name is Neko."),
    contents="Hello there"
)

print(response.text)

Objek GenerateContentConfig juga memungkinkan Anda mengganti parameter pembuatan default, seperti temperature.

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents=["Explain how AI works"],
    config=types.GenerateContentConfig(
        temperature=0.1
    )
)
print(response.text)

Lihat GenerateContentConfig dalam referensi API kami untuk mengetahui daftar lengkap parameter yang dapat dikonfigurasi dan deskripsinya.

Gemini API mendukung input multimodal, sehingga Anda dapat menggabungkan teks dengan file media. Contoh berikut menunjukkan cara memberikan gambar:

from PIL import Image
from google import genai

client = genai.Client()

image = Image.open("/path/to/organ.png")
response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents=[image, "Tell me about this instrument"]
)
print(response.text)

Untuk metode alternatif dalam menyediakan gambar dan pemrosesan gambar yang lebih canggih, lihat panduan pemahaman gambar kami. API ini juga mendukung input dan pemahaman dokumenvideo, dan audio.

Respons aliran data

Secara default, model hanya menampilkan respons setelah seluruh proses pembuatan selesai.

Untuk interaksi yang lebih lancar, gunakan streaming untuk menerima instance GenerateContentResponse secara bertahap saat instance tersebut dibuat.

from google import genai

client = genai.Client()

response = client.models.generate_content_stream(
    model="gemini-2.5-flash",
    contents=["Explain how AI works"]
)
for chunk in response:
    print(chunk.text, end="")

Percakapan multi-giliran (Chat)

SDK kami menyediakan fungsi untuk mengumpulkan beberapa putaran perintah dan respons ke dalam chat, sehingga memberi Anda cara mudah untuk melacak histori percakapan.

from google import genai

client = genai.Client()
chat = client.chats.create(model="gemini-2.5-flash")

response = chat.send_message("I have 2 dogs in my house.")
print(response.text)

response = chat.send_message("How many paws are in my house?")
print(response.text)

for message in chat.get_history():
    print(f'role - {message.role}',end=": ")
    print(message.parts[0].text)

Streaming juga dapat digunakan untuk percakapan multi-giliran.

from google import genai

client = genai.Client()
chat = client.chats.create(model="gemini-2.5-flash")

response = chat.send_message_stream("I have 2 dogs in my house.")
for chunk in response:
    print(chunk.text, end="")

response = chat.send_message_stream("How many paws are in my house?")
for chunk in response:
    print(chunk.text, end="")

for message in chat.get_history():
    print(f'role - {message.role}', end=": ")
    print(message.parts[0].text)

Model yang didukung

Semua model dalam keluarga Gemini mendukung pembuatan teks. Untuk mempelajari lebih lanjut model dan kemampuannya, buka halaman Model.

Praktik terbaik

Tips perintah

Untuk pembuatan teks dasar, perintah zero-shot sering kali sudah cukup tanpa memerlukan contoh, petunjuk sistem, atau format tertentu.

Untuk output yang lebih disesuaikan:

  • Gunakan Petunjuk sistem untuk memandu model.
  • Berikan beberapa contoh input dan output untuk memandu model. Hal ini sering disebut sebagai perintah few-shot.

Lihat panduan rekayasa perintah kami untuk mengetahui tips selengkapnya.

Output terstruktur

Dalam beberapa kasus, Anda mungkin memerlukan output terstruktur, seperti JSON. Lihat panduan output terstruktur kami untuk mempelajari caranya.

Langkah berikutnya

Comments

Popular posts from this blog

IT Dev

cara menginstal dan menggunakan npm dotenv