準備 Gemini 模型的監督式微調資料

本文說明如何定義 Gemini 模型的監督式微調資料集。您可以調整文字、圖片、音訊、影片和文件資料類型。

關於監督式微調資料集

監督式微調資料集用於微調預先訓練模型,使其適用於特定工作或領域。輸入資料應與模型在實際應用環境中可能遇到的資料相似。輸出標籤應代表每個輸入內容的正確答案或結果。

訓練資料集

如要調整模型,請提供訓練資料集。為獲得最佳結果,建議您從 100 個樣本開始。如有需要,您可以擴充至數千個樣本。資料集的品質遠比數量重要。

驗證資料集

強烈建議您提供驗證資料集。驗證資料集可協助您評估調整工作的成效。

限制

如要瞭解資料集的限制,例如輸入和輸出詞元數量上限、驗證資料集大小上限,以及訓練資料集檔案大小上限,請參閱「關於 Gemini 模型的監督式微調」。

資料集格式

我們支援下列資料格式:

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
          }
        }
      ]
    }
  ]
}

參數

範例包含具有下列參數的資料:

參數

contents

必填:Content

與模型目前對話的內容。

如果是單輪查詢,這會是單一執行個體。如果是多輪查詢,這個重複欄位會包含對話記錄和最新要求。

systemInstruction

選填:Content

請參閱「支援的模型」。

引導模型提升效能的操作說明。例如「盡可能簡短回答」或「回覆時不要使用技術術語」。

text 字串會計入詞元數量上限。

系統會忽略 systemInstruction 的 role 欄位,不會影響模型效能。

tools

選用。這段程式碼可讓系統與外部系統互動,執行模型知識和範圍以外的一或多項動作。請參閱「呼叫函式」。

目錄

基本結構化資料類型,包含訊息的多部分內容。

這個類別包含兩個主要屬性:role 和 parts。role 屬性代表內容製作者,parts 屬性則包含多個元素,每個元素代表訊息中的資料片段。

參數

role

選填:string

建立訊息的實體身分。支援下列值:

  • user:表示訊息是由真人傳送,通常是使用者產生的訊息。
  • model:表示訊息是由模型生成。

在多輪對話中,model 值用於將模型訊息插入對話。

如果不是多輪對話,這個欄位可以留空或不設定。

parts

part

由多個有序部分組成的單一訊息。不同部分可能會有不同的 IANA MIME 類型。

如要瞭解輸入內容的限制 (例如詞元數量上限或圖片數量),請參閱「Google 模型」頁面的模型規格。

如要計算要求中的權杖數量,請參閱「取得權杖數量」。

零件

這類資料類型包含多部分 Content 訊息中的媒體。

參數

text

選填:string

文字提示詞或程式碼片段。

fileData

選填:fileData

儲存在檔案中的資料。

functionCall

選用:FunctionCall。

其中包含代表 FunctionDeclaration.name 欄位的字串,以及結構化 JSON 物件,內含模型預測的函式呼叫參數。

請參閱「呼叫函式」。

functionResponse

選用:FunctionResponse。

FunctionCall 的輸出結果,包含代表 FunctionDeclaration.name 欄位的字串,以及含有函式呼叫輸出的結構化 JSON 物件。做為模型的背景資訊。

請參閱「呼叫函式」。

最佳做法

以下各節概述準備監督式微調資料的最佳做法。

使用實際工作環境資料維持一致性

資料集中的範例應與預期的實際工作環境流量相符。如果資料集含有特定格式、關鍵字、操作說明或資訊,則實際工作環境資料的格式應相同,並包含相同的操作說明。

舉例來說,如果資料集的範例包含 "question:" 和 "context:",則實際工作環境流量的格式也應包含 "question:" 和 "context:",且與在資料集範例顯示的順序相同。如果排除內容,即便資料集中的範例出現一個確切的問題,模型也無法辨識模式。

將微調資料集上傳至 Cloud Storage

如要執行調整工作,您必須將一或多個資料集上傳至 Cloud Storage bucket。您可以建立新的 Cloud Storage bucket,或使用現有 bucket 儲存資料集檔案。bucket 的區域並不重要,但建議您使用與模型微調Google Cloud 專案相同的 bucket。

值區準備就緒後,請將資料集檔案上傳至值區。

遵循提示設計的最佳做法

取得訓練資料集並訓練模型後,就可以開始設計提示。請務必在訓練資料集中遵循提示設計的最佳做法,詳細說明要執行的工作和輸出內容應呈現的方式。

後續步驟