このトピックでは、PAIが提供するLarge Language model (LLM) のデータ処理、モデルトレーニング、およびモデル推論コンポーネントを使用して、LLMのエンドツーエンドの開発と使用を完了する方法について説明します。
前提条件
ワークスペースが作成済み。 詳細については、「ワークスペースの作成」をご参照ください。
MaxComputeリソースと共通コンピューティングリソースは、ワークスペースに関連付けられています。 詳細については、「ワークスペースの管理」をご参照ください。
データセット
入力トレーニングデータの各行には、次のフィールドに対応する質問と回答のペアが含まれている必要があります。
instruction: 質問フィールド。
output: 回答フィールド。
データフィールド名が要件を満たさない場合は、カスタムSQLスクリプトを使用してデータを前処理できます。 インターネットからデータを取得した場合、冗長データまたはダーティデータが存在する可能性があります。 LLMデータ前処理コンポーネントを使用して、予備データのクリーニングと並べ替えを行うことができます。 詳細については、「LLMデータ処理」をご参照ください。
手順
Machine Learning Designerページに移動します。
PAIコンソールにログインします。
左側のナビゲーションウィンドウで、[ワークスペース] をクリックします。 [ワークスペース] ページで、管理するワークスペースの名前をクリックします。
ワークスペースページの左側のナビゲーションウィンドウで、 機械学習デザイナーページに移動します。
パイプラインを作成します。
[Visualized Modeling (Designer)] ページで、[プリセットテンプレート] タブをクリックします。
[プリセットテンプレート] タブで、[大規模言語モデル (LLM)] タブをクリックします。 大言語モデル (LLM) タブのE2E開発とLLM: データ処理 + モデルトレーニング + モデル推論カードで、[作成] をクリックします。
[パイプラインの作成] ダイアログボックスでパラメーターを設定し、[OK] をクリックします。 パラメーターのデフォルト値を使用できます。
Pipeline Data Pathパラメーターの値は、パイプラインの実行時に生成される一時データとモデルのObject Storage Service (OSS) パスを示します。
パイプラインリストで、作成したパイプラインをダブルクリックしてパイプラインを開きます。
次の図に示すように、キャンバス上のパイプラインのコンポーネントを表示します。 システムは、プリセットテンプレートに基づいてパイプラインを自動的に作成します。
いいえ
説明
1
単純なデータ前処理は、エンドツーエンドのデモンストレーションのためにのみ実行されます。 データ前処理の詳細については、「LLMデータ処理」をご参照ください。
2
モデルトレーニングとオフライン推論が実行されます。 以下のコンポーネントが使用されます。
LLMモデルトレーニング
このコンポーネントは、QuickStartで提供されるLLMモデルをカプセル化します。 基盤となるコンピューティングは、ディープラーニングコンテナ (DLC) タスクに基づいて実行されます。 キャンバスの [LLMモデルトレーニング-1] ノードをクリックし、右側のウィンドウの [フィールド設定] タブでModel_nameを指定します。 このコンポーネントは、複数の主流LLMモデルをサポートします。 このパイプラインでは、qwen-7b-chatモデルがトレーニングのために選択される。
LLMモデル推論
このコンポーネントはオフライン推論に使用されます。 このパイプラインでは、オフラインバッチ推論のためにqwen-7b-chatモデルが選択される。
キャンバスの上部にあるをクリックしてパイプラインを実行します。
パイプラインが期待どおりに実行されたら、推論結果を表示します。 推論結果を表示するには、キャンバス上の [LLMモデル推論-1] ノードを右クリックし、
。
次に何をすべきか
同じ前処理データを使用して、複数のモデルのトレーニングと推論を同時に実行することもできます。 たとえば、次のパイプラインを作成してqwen-7b-chatモデルとllama2-7b-chatモデルを同時に微調整し、同じバッチのテストデータを使用して推論結果を比較できます。