基礎モデルのチューニングのためのデータフォーマット
モデルを調整するために使用するプロンプトの例を準備する。 例題には、モデルが実行時に処理する必要のある入力の種類と、それに応答してモデルが生成する適切な出力が含まれていなければならない。
1つのファイルまたは1つの接続されたデータストアからトレーニングデータを追加することができます。
外部データストアのトレーニングデータを使用するには、まずデータストアへの接続を設定する必要があります。 以下の接続データストアがサポートされている:
トレーニングデータの要件
トレーニングデータを作成する際は、以下のガイドラインに従ってください:
100から1,000のラベル付き例を加える。
例はいくつでも使用できます。 ただし、接続されたデータストアからは最大10,000件の例を追加できます。 アップロードする例を含むJSONまたはJSONLファイルは、200MBを超えてはいけません。
トレーニングデータの言語は基盤モデルがサポートする言語でなければならない。
inputと'outputラベルは引き続き英語でなければならないことに注意。入力と出力の例は、実験で使用される最大トークン制限内に収めてください。 そうしないと、例のテキストは切り捨てられます。 詳細については、を参照してください トークン制限のファイン・チューニング設定。
トークンの数え方はモデルによって異なるため、トークンの数を推定するのは難しい。 基盤モデルベースの基盤モデルでは、256トークンはおよそ130~170語に相当し、128トークンはおよそ65~85語に相当すると見なせます。 詳しくは、トークンとトークン化を参照してください。
データを分類するために調整された基礎モデルを使用する予定の場合は、以下の追加ガイドラインに従ってください:
- クラス・ラベルの数を10個以下にする。
- 各クラス・タイプの例を同数含める。
Prompt Lab、トレーニング・データのサンプルを作成することができる。 詳しくは Prompt Lab.
代表的なサンプルを集めたら、そのサンプルをトレーニング用のセットと、テスト用の小さなセットに分けます。
ファイル形式の要件
トレーニング・データ・ファイルはこれらの要件を満たしていなければならない:
- 以下のいずれかの形式を使用してください:
- JavaScriptオブジェクト表記法 (JSON)
- JSON行(JSONL)フォーマット
- 許可される最大ファイルサイズは200MBです。
- 各例は、
inputとoutputのペアを1つずつ含まなければなりません。 - 入力または出力テキストに引用符が含まれている場合は、各引用符をバックスラッシュ(
\)でエスケープします。例えば、He said, \"Yes.\"のように。 - キャリッジリターンや改行を表すには、
\nエスケープシーケンスを使って改行を表すことができます。 例えば、...end of paragraph.\nStart of new paragraphのように。
JSONの例
次の例は、分類タスクのラベル付きプロンプトを含むトレーニングデータファイルからの抜粋をJSON形式で示しています。
[
{
"input":"Message: When I try to log in, I get an error.",
"output":"Class name: Problem"
},
{
"input":"Message: Where can I find the plan prices?",
"output":"Class name: Question"
},
{
"input":"Message: What is the difference between trial and paygo?",
"output":"Class name: Question"
},
{
"input":"Message: The registration page crashed, and now I can't create a new account.",
"output":"Class name: Problem"
},
{
"input":"Message: What regions are supported?",
"output":"Class name: Question"
},
{
"input":"Message: I can't remember my password.",
"output":"Class name: Problem"
},
{
"input":"Message: I'm having trouble registering for a new account.",
"output":"Classname: Problem"
},
{
"input":"Message: A teammate shared a service instance with me, but I can't access it. What's wrong?",
"output":"Class name: Problem"
},
{
"input":"Message: What extra privileges does an administrator have?",
"output":"Class name: Question"
},
{
"input":"Message: Can I create a service instance for data in a language other than English?",
"output":"Class name: Question"
}
]
JSONLの例
次の例は、JSONL形式の分類タスクのラベル付きプロンプトを含むトレーニングデータファイルからの抜粋です。
{"input":"Message: When I try to log in, I get an error.","output":"Class name: Problem"}
{"input":"Message: Where can I find the plan prices?","output":"Class name: Question"}
{"input":"Message: What is the difference between trial and paygo?","output":"Class name: Question"}
{"input":"Message: The registration page crashed, and now I can't create a new account.","output":"Class name: Problem"}
{"input":"Message: What regions are supported?","output":"Class name: Question"}
{"input":"Message: I can't remember my password.","output":"Class name: Problem"}
{"input":"Message: I'm having trouble registering for a new account.","output":"Classname: Problem"}
{"input":"Message: A teammate shared a service instance with me, but I can't access it. What's wrong?","output":"Class name: Problem"}
{"input":"Message: What extra privileges does an administrator have?","output":"Class name: Question"}
{"input":"Message: Can I create a service instance for data in a language other than English?","output":"Class name: Question"}
表形式データの要件
接続されているデータソースから直接、または接続されているデータソースのデータを使用して作成したデータアセットからデータを追加できます。
データは以下のようにフォーマットしなければならない:
- Prestoやwatsonx.dataのような表形式のデータベースからデータを選択する場合、テーブルにはヘッダー名
inputとoutputの2つの列がなければなりません。 カラムヘッダ名は小文字でなければならない。 たとえばInputやINPUTという名前のカラムは無視されます。 テーブルにはもっと多くのカラムを含めることができるが、余分なカラムは無視される。
表形式データの例
次の表は、分類タスクのためのラベル付きプロンプトを含むトレーニングデータがどのように構成されているかを示している。
| 入力 | 出力 |
|---|---|
| メッセージログインしようとするとエラーが出ます。 | クラス名:プロブレム |
| メッセージプランの料金はどこで確認できますか? | クラス名質問 |
| メッセージトライアルとペイゴーの違いは何ですか? | クラス名質問 |
| メッセージ登録ページがクラッシュしてしまい、新しいアカウントを作成できません。 | クラス名:プロブレム |
| メッセージどの地域に対応していますか? | クラス名質問 |
| メッセージパスワードを思い出せません。 | クラス名:プロブレム |
| メッセージ新規アカウント登録がうまくいきません。 | クラス名:Problem |
| メッセージチームメイトがサービスインスタンスを共有してくれたのですが、アクセスできません。 どうしたんだ? | クラス名:Problem |
| メッセージ管理者にはどのような特別な権限がありますか? | クラス名質問 |
| メッセージ英語以外の言語でデータ用のサービスインスタンスを作成できますか? | クラス名質問 |