クイック・スタート: ファウンデーション・モデルのチューニング
基盤モデルを調整するには、いくつかの理由があります。 多くのラベル付けされた例でモデルをチューニングすることにより、プロンプト・エンジニアリングのみと比較してモデルのパフォーマンスを向上させることができます。 同じモデル・ファミリー内のより大きなモデルと同様に動作するように基本モデルをチューニングすることにより、そのより小さなモデルをデプロイすることでコストを削減できます。
- 必須のサービス
- Watson Studio
- Watson Machine Learning
基本的なワークフローには、以下のタスクが含まれます:
- プロジェクトを開きます。 プロジェクトは、データを処理するために他のユーザーと共同作業できる場所です。
- データをプロジェクトに追加します。 接続を介して、データ・ファイルをアップロードしたり、リモート・データ・ソースからデータを追加したりすることができます。
- プロジェクトでチューニング・エクスペリメントを作成します。 このチューニング・エクスペリメントでは、 Tuning Studio エクスペリメント・ビルダーを使用します。
- エクスペリメントおよびチューニングされたモデルの結果を確認します。 結果には、損失関数グラフと調整済みモデルの詳細が含まれます。
- チューニングしたモデルをデプロイしてテストします。 プロンプト・ラボでモデルをテストします。
ファウンデーション・モデルのチューニングについて読む
プロンプト・チューニングは、モデルに渡されるプロンプトの内容を調整します。 基礎となる基盤モデルとそのパラメーターは編集されません。 プロンプト入力のみが変更されます。 必要な出力を返すように AI ファウンデーション・モデルをガイドするために、 Tuning Studio を使用してモデルをチューニングします。
このビデオを視聴して、ファウンデーション・モデルをチューニングする時期と理由を確認してください。
このビデオは、この資料の概念とタスクを学習するための視覚的な方法を提供します。
ファウンデーション・モデルのチューニングに関する動画を見る
このチュートリアルのステップをプレビューするには、このビデオをご覧ください。 ビデオに表示されるユーザー・インターフェースには若干の違いがある可能性があります。 このビデオは、作成されたチュートリアルのコンパニオンとなることを目的としています。
このビデオは、この資料の概念とタスクを学習するための視覚的な方法を提供します。
ファウンデーション・モデルを調整するためのチュートリアルを試す
このチュートリアルでは、以下のタスクを実行します:
- タスク 1: プロジェクトを開く
- タスク 2: 基本モデルのテスト
- タスク 3: プロジェクトへのデータの追加
- 作業 4: プロジェクトでチューニング・エクスペリメントを作成する
- 作業 5: チューニング・エクスペリメントを構成する
- タスク 6: 調整済みモデルのデプロイメント・スペースへのデプロイ
- 作業 7: チューニングしたモデルをテストする
このチュートリアルを完了するためのヒント
このチュートリアルを正常に完了するためのヒントを以下に示します。
ビデオ・ピクチャー・イン・ピクチャーの使用
以下のアニメーション・イメージは、ビデオ・ピクチャー・イン・ピクチャーおよび目次機能の使用方法を示しています。
コミュニティーでのヘルプの利用
このチュートリアルでヘルプが必要な場合は、 watsonx コミュニティー・ディスカッション・フォーラムで質問したり、回答を見つけたりすることができます。
ブラウザー・ウィンドウのセットアップ
このチュートリアルを最適に実行するには、1 つのブラウザー・ウィンドウで Cloud Pak for Data を開き、このチュートリアル・ページを別のブラウザー・ウィンドウで開いたままにして、2 つのアプリケーションを簡単に切り替えることができます。 2 つのブラウザー・ウィンドウを横並びに配置して、見やすくすることを検討してください。
タスク 1: プロジェクトを開く
このタスクをプレビューするには、 00:04から始まるビデオをご覧ください。
チューニング・エクスペリメントを保管するためのプロジェクトが必要です。 ビデオを視聴して、サンドボックス・プロジェクトを作成してサービスを関連付ける方法を確認してください。 次に、ステップに従って、既存のプロジェクトがあることを確認するか、プロジェクトを作成します。
既存のプロジェクトを検証するか、新規プロジェクトを作成します
watsonx のホーム画面で、 「プロジェクト」 セクションまでスクロールします。 プロジェクトがリストされている場合は、 Watson Machine Learning サービスの関連付けにスキップしてください。
プロジェクトが表示されない場合は、このビデオをご覧になり、ステップに従ってプロジェクトを作成することができます。
このビデオは、この資料の概念とタスクを学習するための視覚的な方法を提供します。
「サンドボックス・プロジェクトの作成」をクリックします。 プロジェクトが作成されると、 「プロジェクト」 セクションにサンドボックスが表示されます。
既存のプロジェクトまたは新規サンドボックス・プロジェクトを開きます。
Watson Machine Learning サービスとプロジェクトの関連付け
Watson Machine Learning を使用してファウンデーション・モデルを調整するために、以下の手順に従って Watson Machine Learning サービス・インスタンスをプロジェクトに関連付けます。
プロジェクトで、 「管理」 タブをクリックします。
「サービス」&「統合」 ページをクリックします。
このプロジェクトに Watson Machine Learning サービスが関連付けられているかどうかを確認します。 関連付けられたサービスがない場合は、以下の手順を実行します。
「サービスの関連付け」をクリックします。
Watson Machine Learning サービス・インスタンスの横にあるボックスにチェック・マークを付けます。
「関連付け」をクリックします。
必要に応じて、 「キャンセル」 をクリックして 「サービス」&「統合」 ページに戻ります。
詳細情報やビデオを見るには、 プロジェクトの作成 および プロジェクトへの関連サービスの追加を参照してください。
進行状況を確認してください
以下のイメージは、 「管理」 タブと関連サービスを示しています。 これで、サンプル・ノートブックをプロジェクトに追加する準備ができました。
タスク 2: 基本モデルのテスト
このタスクをプレビューするには、 00:19から始まるビデオをご覧ください。
プロンプト・ラボで、チューニングしたモデルをテストできます。 チューニングされたモデルをテストするには、以下の手順を実行します。
チューニングしたモデルを選択します。
- モデルのドロップダウン・リストをクリックし、 「すべてのファウンデーション・モデルを表示」を選択します。
- flan-t5-xl-3b モデルを選択します。
- 「モデルの選択」をクリックします。
「構造化モード」 ページで、 「命令」を入力します。
Summarize customer complaints
例とテスト入力を指定します。
入出力の例 入力例 出力例 最初のデートでは、Capital One を使用していたことを忘れていたので、この負債は彼らの手にあり、一度も完了していませんでした。 債権回収、副産物: クレジットカード債務、問題: 否定的または法的措置を取ると脅かされている 私は ID 窃盗の被害者で、この負債は私のものではありません。 ID 盗難レポートおよび法的宣誓供述書を参照してください。 債権回収、ダブ-製品、私には分からない、問題。 債務を回収しようとします 副発行負債は、身元の窃盗の結果であった 「Try」 テキスト・フィールドで、以下のプロンプトをコピーして貼り付けます。
After I reviewed my credit report, I am still seeing information that is reporting on my credit file that is not mine. please help me in getting these items removed from my credit file.
「生成」をクリックし、結果を確認します。
「作業の保存」>「名前を付けて保存」をクリックします。
「プロンプト・テンプレート」を選択します。
名前には、
Base model prompt
と入力します。「保存後にプロジェクトに表示」を選択します。
保存 をクリックします。
進行状況を確認してください
以下の画像は、プロンプト・ラボでの結果を示しています。
タスク 3: プロジェクトへのデータの追加
このタスクをプレビューするには、 01:12から始まるビデオをご覧ください。
トレーニング・データをプロジェクトに追加する必要があります。 「リソース・ハブ (Resource hub)」ページで、お客様の苦情データ・セットを見つけることができます。 このデータ・セットには、クレジット・レポートに関する一般的な顧客の苦情の架空のデータが含まれています。 リソース・ハブからプロジェクトにデータ・セットを追加するには、以下の手順を実行します。
- 「リソース・ハブ」ページの 「お客様の苦情データ・セット」 にアクセスします。
- プロジェクトに追加をクリックしてください。
- サンドボックス・プロジェクトを選択します。
- 追加 をクリックします。
- 「プロジェクトの表示」 をクリックして、プロジェクト内の資産を表示します。
進行状況を確認してください
以下のイメージは、プロジェクトに追加されたデータ資産を示しています。 次のステップでは、チューニング・エクスペリメントを作成します。
タスク 4: プロジェクトでのチューニング・エクスペリメントの作成
このタスクをプレビューするには、 01:32から始まるビデオをご覧ください。
これで、プロジェクトに追加したデータ・セットを使用するチューニング・エクスペリメントをサンドボックス・プロジェクトに作成する準備ができました。 以下のステップに従って、チューニング・エクスペリメントを作成します。
watsonx のホーム画面に戻ります。
サンドボックス・プロジェクトが選択されていることを確認します。
「ラベル付きデータを使用したファウンデーション・モデルの調整」をクリックします。
名前として、次のように入力します。
Summarize customer complaints tuned model
説明には、次のように入力します。
Tuning Studio experiment to tune a foundation model to handle customer complaints.
「作成」 をクリックします。 Tuning Studio が表示されます。
進行状況を確認してください
以下のイメージは、 Tuning Studioで開いている Tuning エクスペリメントを示しています。 これで、チューニング・エクスペリメントを構成する準備ができました。
タスク 5: チューニング・エクスペリメントの構成
このタスクをプレビューするには、 01:47から始まるビデオをご覧ください。
Tuning Studioで、チューニング・テストを構成できます。 チューニングするファウンデーション・モデルが自動で完成します。 以下のステップに従って、チューニング・エクスペリメントを構成します。
ファウンデーション・モデルを調整するには、 flan-t5-xl-3bを選択します。
プロンプトを初期化するメソッドの 「テキスト」 を選択します。 以下の 2 つのオプションがあります。
- テキスト: 指定したテキストを使用します。
- ランダム: チューニング・エクスペリメントの一部として生成された値を使用します。
「テキスト」 フィールドに、次のように入力します。
Summarize the complaint provided into one sentence.
以下の表に、各タスク・タイプのサンプル・テキストを示します。
タイトル タスク・タイプ 例 分類 各コメントの評判が肯定的か否定的かを分類します 生成 週に数日、従業員が自宅で仕事をできるようにするためのケースを作成します。 要約 ミーティングのトランスクリプトから主なポイントを要約する モデルで実行する内容に最も近いタスク・タイプの 「要約」 を選択します。 以下の 3 つのタスク・タイプがあります。
- 「要約」 は、テキストの本文で表される主なアイデアを説明するテキストを生成します。
- 「生成」 では、販売促進 E メールなどのテキストが生成されます。
- 「分類」 は、特徴量からカテゴリー・ラベルを予測します。 例えば、一連のお客様コメントがある場合、各ステートメントに質問または問題としてラベルを付けることができます。 分類タスクを使用する場合は、モデルで使用するクラス・ラベルをリストする必要があります。 チューニング・トレーニング・データで使用されているものと同じラベルを指定します。
プロジェクトからトレーニング・データを選択します。
- 「プロジェクトから選択」をクリックします。
- 「データ資産」をクリックします。
- 顧客苦情トレーニング data.json ファイルを選択します。
- 「資産の選択 (Select asset)」 をクリックします。
- 「チューニングの開始」をクリックします。
進行状況を確認してください
以下のイメージは、構成されたチューニング・エクスペリメントを示しています。 次に、結果を確認し、調整済みモデルをデプロイします。
タスク 6: 調整済みモデルのデプロイメント・スペースへのデプロイ
このタスクをプレビューするには、 03:17から始まるビデオをご覧ください。
エクスペリメントの実行が完了すると、調整済みモデルと損失関数グラフが表示されます。 損失関数は、各トレーニング実行での予測結果と実際の結果の差を測定します。 損失関数グラフおよび調整済みモデルを表示するには、以下の手順を実行します。
損失関数グラフを確認します。 下向き曲線は、モデルが期待される出力を生成する能力が向上していることを意味します。
グラフの下で、チューニングされたモデルの 「顧客のクレームの要約」 をクリックします。
モデルの詳細をスクロールします。
「デプロイ」 をクリックします。
名前には
Summarize customer complaints tuned model
デプロイメント・コンテナでは、デプロイメント・スペースを選択します。
「ターゲット・デプロイメント・スペース」で、既存のデプロイメント・スペースを選択します。 既存のデプロイメント・スペースがない場合は、以下の手順を実行します。
- 「ターゲット・デプロイメント・スペース」で、 「新規デプロイメント・スペースの作成」を選択します。
- デプロイメントスペース名には、次のように入力する:
Foundation models deployment space
と入力します - リストからストレージ・サービスを選択します。
- プロビジョンされた機械学習サービスをリストから選択します。
- 「作成」 をクリックします。
- 「閉じる」をクリックします。
- 「ターゲット・デプロイメント・スペース」で、 「ファウンデーション・モデル・デプロイメント・スペース」 が選択されていることを確認します。
「作成後にデプロイメント・スペースにデプロイメントを表示」 オプションにチェック・マークを付けます。
「作成」 をクリックします。
「デプロイメント」 ページで、 「顧客からの苦情を調整したモデルの要約」 デプロイメントをクリックして、詳細を表示します。
進捗状況を確認する
以下のイメージは、デプロイメント・スペース内のデプロイメントを示しています。 これで、デプロイされたモデルをテストする準備ができました。
タスク 7: 調整済みモデルのテスト
このタスクをプレビューするには、04:04から始まるビデオを見てください。
プロンプト・ラボで、チューニングしたモデルをテストできます。 チューニングされたモデルをテストするには、以下の手順を実行します。
モデルのデプロイメント・ページで、 「プロンプト・ラボで開く (Open in prompt lab)」をクリックし、サンドボックス・プロジェクトを選択します。 プロンプト・ラボが表示されます。
チューニングしたモデルを選択します。
- モデルのドロップダウン・リストをクリックし、 「すべてのファウンデーション・モデルを表示」を選択します。
- 「顧客からの苦情を要約する調整済みモデル」 モデルを選択します。
- 「モデルの選択」をクリックします。
「構造化モード」 ページで、 「命令」に
Summarize customer complaints
と入力します。「構造化モード」 ページで、例とテスト入力を指定します。
入出力の例 入力例 出力例 最初のデートでは、Capital One を使用していたことを忘れていたので、この負債は彼らの手にあり、一度も完了していませんでした。 債権回収、副産物: クレジットカード債務、問題: 否定的または法的措置を取ると脅かされている 私は ID 窃盗の被害者で、この負債は私のものではありません。 ID 盗難レポートおよび法的宣誓供述書を参照してください。 債権回収、ダブ-製品、私には分からない、問題。 債務を回収しようとします 副発行負債は、身元の窃盗の結果であった 「Try」 テキスト・フィールドで、以下のプロンプトをコピーして貼り付けます。
After I reviewed my credit report, I am still seeing information that is reporting on my credit file that is not mine. please help me in getting these items removed from my credit file.
「生成」をクリックし、結果を確認します。
進捗状況を確認する
以下の画像は、プロンプト・ラボでの結果を示しています。
次のステップ
以下の他のチュートリアルを試してください。
その他のリソース
詳しくは、 ビデオを参照してください。
リソース・ハブでサンプル・データ・セット、プロジェクト、モデル、プロンプト、およびノートブックを検索して、実地体験を得ることができます。
ノートブックをプロジェクトに追加して、データの分析やモデルの構築を始めることができます。
ノートブック、データセット、プロンプト、およびその他の資産を含むインポート可能なプロジェクト。
データセットをプロジェクトに追加して、モデルを改良、分析、構築することができます。
プロンプト 。プロンプト・ラボで基盤モデルのプロンプトを出すために使用できます。
プロンプト・ラボで使用できる
基盤モデル 。
親トピック: クイック・スタート・チュートリアル