Menyiapkan data supervised fine-tuning untuk model Gemini

Dokumen ini menjelaskan cara menentukan set data supervised fine-tuning untuk model Gemini. Anda dapat menyesuaikan jenis data teks, gambar, audio, video, dan dokumen.

Tentang set data supervised fine-tuning

Set data supervised fine-tuning digunakan untuk menyesuaikan model terlatih dengan tugas atau domain tertentu. Data input harus serupa dengan yang Anda harapkan akan ditemui model dalam penggunaan di dunia nyata. Label output harus mewakili jawaban atau hasil yang benar untuk setiap input.

Set data pelatihan

Untuk menyesuaikan model, Anda harus menyediakan set data pelatihan. Untuk hasil terbaik, sebaiknya mulai dengan 100 contoh. Anda dapat meningkatkan skala hingga ribuan contoh jika diperlukan. Kualitas set data jauh lebih penting daripada kuantitasnya.

Set data validasi

Sebaiknya Anda menyediakan set data validasi. Set data validasi membantu Anda mengukur efektivitas tugas penyesuaian.

Batasan

Untuk batasan pada set data, seperti token input dan output maksimum, ukuran set data validasi maksimum, dan ukuran file set data pelatihan maksimum, lihat Tentang supervised fine-tuning untuk model Gemini.

Format set data

Kami mendukung format data berikut:

Contoh set data untuk Gemini

{
  "systemInstruction": {
    "role": string,
    "parts": [
      {
        "text": string
      }
    ]
  },
  "contents": [
    {
      "role": string,
      "parts": [
        {
          // Union field data can be only one of the following:
          "text": string,
          "fileData": {
            "mimeType": string,
            "fileUri": string
          }
        }
      ]
    }
  ]
}

Parameter

Contoh ini berisi data dengan parameter berikut:

Parameter

contents

Wajib: Content

Konten percakapan saat ini dengan model.

Untuk kueri satu giliran, ini adalah satu instance. Untuk kueri multi-turn, ini adalah kolom berulang yang berisi histori percakapan dan permintaan terbaru.

systemInstruction

Opsional: Content

Lihat Model yang didukung.

Petunjuk untuk model guna mengarahkannya ke performa yang lebih baik. Misalnya, "Jawab sesingkat mungkin" atau "Jangan gunakan istilah teknis dalam respons Anda".

String text dihitung dalam batas token.

Kolom role dari systemInstruction diabaikan dan tidak memengaruhi performa model.

tools

Opsional. Bagian kode yang memungkinkan sistem berinteraksi dengan sistem eksternal untuk melakukan tindakan, atau serangkaian tindakan, di luar pengetahuan dan cakupan model. Lihat Pemanggilan fungsi.

Daftar Isi

Jenis data terstruktur dasar yang berisi konten multibagian dari sebuah pesan.

Class ini terdiri dari dua properti utama: role dan parts. Properti role menunjukkan individu yang memproduksi konten, sedangkan properti parts berisi beberapa elemen, yang masing-masing mewakili segmen data dalam pesan.

Parameter

role

Opsional: string

Identitas entity yang membuat pesan. Nilai-nilai berikut didukung:

  • user: Menunjukkan bahwa pesan dikirim oleh orang sungguhan, biasanya pesan buatan pengguna.
  • model: Ini menunjukkan bahwa pesan dibuat oleh model.

Nilai model digunakan untuk menyisipkan pesan dari model ke dalam percakapan selama percakapan multi-turn.

Untuk percakapan non-multi-turn, kolom ini dapat dibiarkan kosong atau tidak disetel.

parts

part

Daftar bagian yang diurutkan yang membentuk satu pesan. Bagian yang berbeda mungkin memiliki jenis MIME IANA yang berbeda.

Untuk mengetahui batasan input, seperti jumlah maksimum token atau jumlah gambar, lihat spesifikasi model di halaman Model Google.

Untuk menghitung jumlah token dalam permintaan Anda, lihat Mendapatkan jumlah token.

Suku Cadang

Jenis data yang berisi media yang merupakan bagian dari pesan Content multi-bagian.

Parameter

text

Opsional: string

Perintah teks atau cuplikan kode.

fileData

Opsional: fileData

Data yang disimpan dalam file.

functionCall

Opsional: FunctionCall.

Objek ini berisi string yang mewakili kolom FunctionDeclaration.name dan objek JSON terstruktur yang berisi parameter apa pun untuk panggilan fungsi yang diprediksi oleh model.

Lihat Pemanggilan fungsi.

functionResponse

Opsional: FunctionResponse.

Output hasil FunctionCall yang berisi string yang mewakili kolom FunctionDeclaration.name dan objek JSON terstruktur yang berisi output apa pun dari panggilan fungsi. Teks ini digunakan sebagai konteks untuk model.

Lihat Pemanggilan fungsi.

Praktik terbaik

Bagian ini menguraikan praktik terbaik untuk menyiapkan data supervised fine-tuning Anda.

Menjaga konsistensi dengan data produksi

Contoh dalam set data harus sesuai dengan traffic produksi yang Anda harapkan. Jika set data Anda berisi pemformatan, kata kunci, petunjuk, atau informasi tertentu, data produksi harus diformat dengan cara yang sama dan berisi petunjuk yang sama.

Misalnya, jika contoh di set data Anda menyertakan "question:" dan "context:", traffic produksi juga harus diformat untuk menyertakan "question:" dan "context:" dalam urutan yang sama seperti yang tampak pada contoh set data. Jika Anda mengecualikan konteks, model tidak akan mengenali pola, meskipun pertanyaan yang sama ada dalam contoh dalam set data.

Mengupload set data penyesuaian ke Cloud Storage

Untuk menjalankan tugas penyesuaian, Anda perlu mengupload satu atau beberapa set data ke bucket Cloud Storage. Anda dapat membuat bucket Cloud Storage baru atau menggunakan bucket yang sudah ada untuk menyimpan file set data. Region bucket tidak penting, tetapi sebaiknya Anda menggunakan bucket yang berada di projectGoogle Cloud yang sama tempat Anda berencana untuk menyesuaikan model.

Setelah bucket siap, upload file set data Anda ke bucket.

Mengikuti praktik terbaik desain perintah

Setelah Anda memiliki set data pelatihan dan melatih model, saatnya mendesain perintah. Penting untuk mengikuti praktik terbaik desain perintah dalam set data pelatihan Anda untuk memberikan deskripsi mendetail tentang tugas yang akan dilakukan dan tampilan output yang seharusnya.

Langkah berikutnya