Gemini API dapat menghasilkan output teks dari berbagai jenis input, termasuk teks, gambar, video, dan audio. Anda dapat menggunakan pembuatan teks untuk berbagai aplikasi, termasuk:
- Menulis kreatif
- Mendeskripsikan atau menafsirkan aset media
- Pelengkapan teks
- Meringkas teks bentuk bebas
- Menerjemahkan antarbahasa
- Chatbot
- Kasus penggunaan baru Anda sendiri
Panduan ini menunjukkan cara membuat teks menggunakan
generateContent
dan
streamGenerateContent
Google Cloud Platform. Fokusnya adalah pada output teks dari input teks saja serta input teks dan gambar. Kepada
pelajari lebih lanjut prompting multimodal dengan file video dan audio, lihat
Strategi pembuatan perintah file.
Sebelum memulai: Siapkan project dan kunci API Anda
Sebelum memanggil Gemini API, Anda perlu menyiapkan project dan mengonfigurasi kunci API Anda.
Membuat teks dari input hanya teks
Cara paling sederhana untuk membuat teks menggunakan Gemini API adalah dengan menyediakan dengan satu input hanya teks, seperti yang ditunjukkan dalam contoh ini:
model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("Write a story about a magic backpack.")
print(response.text)
Dalam hal ini, prompt ("Tulis cerita tentang ransel ajaib") tidak menyertakan contoh output, petunjuk sistem, atau informasi format. Game ini zero-shot pendekatan. Untuk beberapa kasus penggunaan, one-shot atau Prompt few-shot mungkin menghasilkan {i>output<i} yang lebih sesuai dengan ekspektasi pengguna. Dalam beberapa kasus, Anda mungkin juga ingin menyediakan petunjuk sistem untuk membantu model memahami tugas atau mengikuti panduan spesifik.
Membuat teks dari input teks dan gambar
Gemini API mendukung input multimodal yang menggabungkan teks dengan file media. Contoh berikut menunjukkan cara menghasilkan teks dari input teks dan gambar:
import PIL.Image
model = genai.GenerativeModel("gemini-1.5-flash")
organ = PIL.Image.open(media / "organ.jpg")
response = model.generate_content(["Tell me about this instrument", organ])
print(response.text)
Seperti halnya prompting teks saja, perintah multimodal dapat melibatkan berbagai pendekatan dan penyempurnaan. Tergantung pada {i>output<i} dari contoh ini, Anda mungkin ingin tambahkan langkah-langkah ke dalam perintah atau buat petunjuk yang lebih spesifik. Untuk mempelajari lebih lanjut, lihat Strategi prompt file.
Membuat aliran teks
Secara default, model menampilkan respons setelah melengkapi seluruh teks yang sama. Anda dapat mencapai interaksi yang lebih cepat dengan tidak menunggu keseluruhan hasil, dan sebagai gantinya gunakan streaming untuk menangani hasil yang tidak lengkap.
Contoh berikut menunjukkan cara mengimplementasikan streaming menggunakan
Metode streamGenerateContent
untuk
membuat teks dari prompt input teks saja.
model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("Write a story about a magic backpack.", stream=True)
for chunk in response:
print(chunk.text)
print("_" * 80)
Membuat chat interaktif
Anda dapat menggunakan Gemini API untuk membuat pengalaman percakapan yang interaktif bagi pengguna. Menggunakan fitur chat API memungkinkan Anda mengumpulkan beberapa pertanyaan dan respons, yang memungkinkan pengguna untuk melangkah secara bertahap menuju jawaban atau mendapatkan bantuan dengan masalah multibagian. Fitur ini cocok untuk aplikasi yang membutuhkan komunikasi berkelanjutan, seperti chatbot, tutor interaktif, atau dukungan pelanggan asisten.
Contoh kode berikut menunjukkan implementasi chat dasar:
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)
response = chat.send_message("How many paws are in my house?")
print(response.text)
Mengonfigurasi pembuatan teks
Setiap prompt yang Anda kirim ke model mencakup
parameter yang
mengontrol cara model menghasilkan respons. Anda dapat menggunakan
GenerationConfig
ke
mengonfigurasi parameter ini. Jika Anda tidak mengonfigurasi parameter,
menggunakan opsi default, yang dapat bervariasi berdasarkan model.
Contoh berikut menunjukkan cara mengonfigurasi beberapa opsi yang tersedia.
model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content(
"Tell me a story about a magic backpack.",
generation_config=genai.types.GenerationConfig(
# Only one candidate for now.
candidate_count=1,
stop_sequences=["x"],
max_output_tokens=20,
temperature=1.0,
),
)
print(response.text)
candidateCount
menentukan jumlah respons yang dihasilkan yang akan ditampilkan.
Saat ini, nilai ini hanya dapat ditetapkan ke 1. Jika tidak disetel, nilai defaultnya adalah 1.
stopSequences
menentukan rangkaian urutan karakter (hingga 5) yang akan
menghentikan pembuatan output. Jika ditetapkan, API akan berhenti pada penampilan pertama
dari stop_sequence
. Urutan perhentian tidak akan disertakan sebagai bagian dari
yang dihasilkan.
maxOutputTokens
menetapkan jumlah maksimum token yang akan disertakan dalam kandidat.
temperature
mengontrol keacakan output. Gunakan nilai yang lebih tinggi untuk
respons kreatif, dan nilai yang lebih rendah untuk respons yang lebih determenistik. Nilai-nilai
dapat berkisar dari [0.0, 2.0].
Anda juga dapat mengonfigurasi setiap panggilan ke generateContent
:
response = model.generate_content(
'Write a story about a magic backpack.',
generation_config = genai.GenerationConfig(
max_output_tokens=1000,
temperature=0.1,
)
)
Setiap nilai yang ditetapkan pada nilai masing-masing panggilan menggantikan nilai di konstruktor model.
Langkah berikutnya
Panduan ini menunjukkan cara menggunakan
generateContent
dan
streamGenerateContent
untuk menghasilkan output teks dari input teks saja serta teks dan gambar. Untuk mempelajari lebih lanjut
tentang cara membuat teks menggunakan Gemini API, lihat referensi berikut:
- Strategi permintaan file: Gemini API mendukung pembuatan perintah dengan data teks, gambar, audio, dan video, yang dikenal sebagai multimodal prompting.
- Petunjuk sistem: Sistem memungkinkan Anda mengarahkan perilaku model berdasarkan kebutuhan dan kasus penggunaan Anda.
- Panduan keamanan: Terkadang AI generatif menghasilkan output yang tidak diharapkan, misalnya output yang tidak akurat, bias, atau menyinggung. Pascapemrosesan dan evaluasi manual sangat penting untuk membatasi risiko bahaya dari {i>output<i} tersebut.