midori290〜293 フォルダでは、日本語データセットを活用した Gemma3-1b-it モデルのファインチューニング手法と 推論ワークフローを段階的に整理しています。本ページでは、同梱している 2 つのノートブックを 最終成果物としてまとめ、すぐにダウンロード・参照できるよう整備しました。
midori290〜293 の各ディレクトリに同じ最新版ノートブックを配置しています。ここから直接ダウンロードするか、 ブラウザ上で内容を確認して Google Colab などにアップロードしてご利用ください。
データ加工〜学習〜保存までを一貫して実行できるファインチューニングノートブックです。 GPU/TPU いずれのランタイムにも対応し、途中再開や量子化保存もサポートしています。
ファインチューニング済みモデルをロードし、日本語チャット推論を行うためのフロントエンド付きノートブックです。 モデルの検出・選択、チャット UI、推論ログなどが自動化されています。
{
"ja_title_provisional_translate": "日本産キノコの新種発見",
"tags": "新種, キノコ, 日本",
"R3summary_1": "本研究では日本産の新種キノコを発見した。",
"R3summary_2": "形態学的特徴を詳細に記載した。",
"R3summary_3": "DNA解析により分類学的位置づけを行った。"
}
AI用プロンプト例:
<bos><start_of_turn>user
タイトル: 日本産キノコの新種発見
タグ: 新種, キノコ, 日本<end_of_turn>
<start_of_turn>model
本研究では日本産の新種キノコを発見した。
形態学的特徴を詳細に記載した。
DNA解析により分類学的位置づけを行った。<end_of_turn><eos>
{
"comparison_source": "Candida tanticharoeniae",
"comparison_target": "Candida savonica",
"sentence": "D1/D2領域に基づく分子系統解析で近縁",
"label": "分子系統解析/molecular_phylogenetic_analysis",
"common_or_different": 1
}
AI用プロンプト例:
<bos><start_of_turn>user
Candida tanticharoeniaeとCandida savonicaの共通点を教えてください(カテゴリ: 分子系統解析/molecular_phylogenetic_analysis)<end_of_turn>
<start_of_turn>model
D1/D2領域に基づく分子系統解析で近縁<end_of_turn><eos>
metadata や source_url)が追加されています。datasets.load_dataset(...) で取得し、利用したいカラムが存在するか、文字列型で取得できるかを必ず確認してから加工処理を適用してください。
<bos><start_of_turn>user ... <end_of_turn><start_of_turn>model ... <end_of_turn><eos>common_or_differentが1なら「共通点」、0なら「違い」を質問文にします。<bos><start_of_turn>user ... <end_of_turn><start_of_turn>model ... <end_of_turn><eos>本プロジェクトでは、2種類の日本語データセットを使い、AI(大規模言語モデル)が「質問→回答」の形で学習できるようにデータを整えています。
| ステップ | 内容例 |
|---|---|
| 元のデータ | |
| 加工後(QAペア) | |
| AI用プロンプト | |
| ステップ | 内容例 |
|---|---|
| 元のデータ | |
| 加工後(QAペア) | |
| AI用プロンプト | |
all_dataset = all_dataset.shuffle(seed=SEED) のように、結合直後に実施します(SEEDで再現性も確保)。.shuffle(seed=SEED) はデータセットの順番をランダムに並び替える処理です。seed=SEED を指定することで、毎回同じシャッフル結果となり、実験の再現性も保てます。
train_dataset = train_dataset.select(range(N)) のように、指定件数だけを抽出します。.select(range(N)) はデータセットの先頭からN件だけを選び出す処理です。