ホームページ >テクノロジー周辺機器 >AI >テキスト分類用の微調整llama 3.1
このチュートリアルでは、メンタルヘルスセンチメント分析のためのllama 3.1-8b-itモデルの微調整を示しています。 モデルをカスタマイズして、テキストデータから患者のメンタルヘルスの状態を予測し、アダプターをベースモデルとマージし、ハグのフェイスハブに完全なモデルを展開します。 重要なことに、ヘルスケアでAIを使用する場合、倫理的考慮事項が最も重要であることを忘れないでください。この例は、説明のみを目的としています Kaggleを介してLlama 3.1モデルへのアクセスをカバーし、推論のためにトランスライブラリを使用し、微調整プロセス自体を使用します。 LLMの微調整を事前に理解すること(「微調整LLMSの入門ガイド」を参照)は有益です。
著者による画像
ラマ3.1 llama 3.1、Meta AIの多言語大手言語モデル(LLM)は、言語の理解と生成に優れています。 8B、70B、および405Bパラメーターバージョンで利用でき、最適化された変圧器を備えた自動回帰アーキテクチャに基づいています。 多様なパブリックデータについて訓練されており、8つの言語をサポートし、128Kのコンテキスト長を誇っています。 その商業ライセンスはすぐにアクセスでき、さまざまなベンチマークでいくつかの競合他社よりも優れています。
出典:llama 3.1(meta.com)
Kaggleの無料GPU/TPUを活用します。 次の手順に従ってください:
meta.comに登録します(Kaggleメールを使用)
llama 3.1 kaggleリポジトリとリクエストモデルアクセスへのアクセス。提供された「コード」ボタンを使用してKaggleノートブックを起動します
%pip install -U transformers accelerate
from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline import torch base_model = "/kaggle/input/llama-3.1/transformers/8b-instruct/1" tokenizer = AutoTokenizer.from_pretrained(base_model) model = AutoModelForCausalLM.from_pretrained(base_model, return_dict=True, low_cpu_mem_usage=True, torch_dtype=torch.float16, device_map="auto", trust_remote_code=True) pipe = pipeline("text-generation", model=model, tokenizer=tokenizer, torch_dtype=torch.float16, device_map="auto")
messages = [{"role": "user", "content": "What is the tallest building in the world?"}] prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True) outputs = pipe(prompt, max_new_tokens=120, do_sample=True) print(outputs[0]["generated_text"])
llama 3.1を使用して新しいKaggleノートブックを開始し、必要なパッケージ(、、
、データ処理:データセットをロードしてクリーン(あいまいなカテゴリを削除:「自殺」、「ストレス」、「人格障害」)、シャッフル、およびトレーニング、評価、およびテストセットに分割します(効率のために3000サンプルを使用)。 ステートメントとラベルを組み込んだプロンプトを作成します
モデルの読み込み:メモリ効率のために4ビット量子化を使用して、llama-3.1-8b-instructモデルをロードします。トークンザーをロードし、パッドトークンIDを設定します
ラベルを予測し、モデルのパフォーマンスを評価する関数を作成します(精度、分類レポート、混乱マトリックス)。 微調整前のモデルのベースラインパフォーマンスを評価します
を使用してモデルをトレーニングします。重みとバイアスを使用して進行状況を監視します。
SFTTrainer
マージと保存:
を使用してベースモデルをマージします。マージされたモデルをテストします。最終モデルとトークネザーを抱きしめる顔のハブに保存して押します。
PeftModel.from_pretrained()
model.merge_and_unload()
以上がテキスト分類用の微調整llama 3.1の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。