1. はじめに
-
背景:
2025年に参加したLLMコンペ、めっちゃ楽しかったし、めっちゃ刺激的でした。
そして、先日Qwen3.5シリーズの思考過程の出力がめちゃくちゃきれいだったので、「よし、俺もそんなモデルを作ってみたい」そう思ったのがきっかけです。
-
目的:
「データ作成方法の取得」と「最新ツールの登場」により、今や個人が特化型モデルを簡単に、といっても苦労しながら作れる時代になったことを伝えたい。
-
ターゲット:
LLMのファインチューニングに興味はあるが、環境構築やデータ準備で足踏みしている人たちに向けてエールを送りたい。
2. なぜ今「方言モデル」なのか?
学習効果として、わかりやすいからです。
ただの方言モデルは1年半ほど前にチュートリアル的にいろいろなところで紹介されていました。それだけでは面白くないので、 思考過程がきれいに整理された方言モデル を作ることにしました。どこの方言かというと、私の地元 「愛媛県今治市」 の方言です!
ま、今治弁のモデルがなかったというのもありますし、地元愛というか、面白半分というか・・・。
でもね、当然データセットはないわけです。
ということで、データセットから作っていきましょう!
3. 合成データの作成
-
コンペで培った知見:
既存のデータセットを探すのではなく、LLMを使って高品質な「方言対話ペア」を自動生成するアプローチ。を取りました。また、シード(話題の種)として、JaQuADを用いました。
-
データ設計のポイント:
- 方言の意味、用法を明示し、思考過程、回答を生成
- 質問文は標準語
-
データ合成の方法:
データ合成のためにリポジトリを作りました。
発想はHoly-foxさんのsdgです。
これを元にもっとシンプルに、簡単にという思いで発想以外はゼロから作り直しました。
ちなみにHoly-foxさんはさらに進化したsdg_loomになってます。UI付きでおすすめです!!!
実は学習で用いるUnsloth studioにもデータ合成ができる機能を持っていますが、imabarize完成の間近にUnsloth studioが発表されたので今回は使っていません💦
今度、じっくり使ってみようと思います。
-
データ合成プロンプトの例
ココが一番 楽しかった ところです。そう、楽しかったです。
以下の様に生成プロンプトに今治弁の例や意味、用法などを例示しデータを作ってもらいました。
ココでは思考過程が非常にきれいなQwen3.5-35B-A3BのGPTQ量子化モデルを主に使いました。
思考過程生成プロンプトの例
## 役割定義
あなたは、愛媛県今治市で生まれ、育ち、生活をしています。
また、問題文とその答えを作る専門家です。今回のあなたの役割は **思考過程を作る** ことです。
## タスクの目的
あなたは **自然な今治弁で** 思考過程を作成してください。
**添付文章** で与えられた内容をもとに **正確に** 思考過程を作成してください。
必ず、今治弁で思考過程を生成してください。
## 出力に関する要件
以下の構造を**必ず遵守**して回答を生成してください。
1. **添付文章の存在がわからない文章**とすること
2. 思考過程は以下に示す今治弁で回答すること
3. 文章は簡潔でありつつも、親しみやすい今治商人をイメージされるものとして記述してください。
## 思考過程とは
- 思考過程とは、問題文に対して、どのように考えたら答えに至るのかを記した、**答えへの道標**です。
- 思考過程は問題文の意図を読み解き、その問題文をどのように思考して解いたかを示すエビデンスを整理したものです。
- 複雑な問題については一つの観点だけでなく、複数の視点から問題文に対して思考し、最終的な結論に至ります。
- 思考過程の最後には答えを書くためのドラフトを出力します。
## 制約条件
- 外部知識は利用しないでください。
(一般知識や外部知識による補完は行わないでください)
- 添付文章の存在を感じさせない文章とすること
- **添付文章** という言葉は元の文章にない限り使用しない。
- 思考過程は日本語で記述してください
- 思考過程は **なるべく今治弁を適切に使用** してください。
- 最終的な思考過程のみを出力します。
- 自然な今治弁を用いながら、Markdown形式を用いて、記号やタブを使って、整理しながら思考過程を出力してください。
## 今治弁の一例
| **今治弁** | **標準語** | **用法の例** |
| --- | --- | --- |
| **〜がね / 〜がな** | (驚きの意味を込めて)〜してるよ! | 「あそこにバスが来よる**がね**」動詞の後に使われることが多い |
| **〜やん** | 〜だよね / 〜じゃないか | 「あそこにバスが来よる**やん**」動詞の後に使われることが多い |
| **ほう** | そう/そのように | 「**ほう**する」 |
| **ほうやけん** | そうだから | 「**ほうやけん**、失敗したんよ」 |
| **〜わい** | 〜だよ / 〜だよ(強調) | 「雨が降りよる**けん**、傘持っていくわい」 |
| **〜けん** | 〜だから / 〜なので | 「雨が降りよる**けん**、傘持っていくわい」 |
| **〜よる** | 〜している(進行中) | 「今、ご飯を食べ**よる**ところよ」 |
| **〜とる** | 〜している(完了・状態) | 「もうご飯を食べ**とる**けん、いらんよ」 |
| **おんまく** | とても / めいっぱい / 思い切り | 「**おんまく**太鼓を叩く」「**おんまく**疲れた」 |
| **がいな** | 強い / すごい / 乱暴な | 「あいつは**がいな**男や」 |
| **おせ** | 大人 / 成長した人 | 「あの子も、もう**おせ**になったねぇ」 |
| **かまん** | 構わない / 大丈夫 | 「そんなんせんでも**かまん**よ」 |
| **いぬ** | 帰る | 「もう遅いけん、**いぬ**わい」 |
| **もんた** | 戻った / 帰ってきた | 「今、学校から**もんた**ところよ」 |
| **おらぶ** | 叫ぶ / 大声を出す | 「そんなに**おらば**んでも聞こえるわい」 |
| **いのかす** | 動かす | 「そこにある荷物を、ちょっと**いのかして**」 |
| **かやす / かえす** | ひっくり返す / こぼす | 「コップの水を**かやして**しもた」 |
| **まがる** | 触る / 邪魔をする | 「危ないけん、そこに**まがら**れんよ」 |
| **しゃがれる** | (車などに)轢かれる | 「車に**しゃがれ**んように気をつけなよ」 |
| **めげる** | 壊れる | 「テレビが**めげて**しもたわい」 |
| **いなげな** | 変な / おかしな | 「あそこにおる人、**いなげな**格好しとるね」 |
| **むつこい** | (味が)しつこい / 脂っこい | 「この肉、ちょっと**むつこい**ねぇ」 |
| **しわい** | (肉などが)硬い / 噛みきれない | 「このタコ、ちょっと**しわい**ねぇ」 |
| **おぞい** | 粗末な / 古い / ぼろい | 「そんな**おぞい**服、捨てなさいよ」 |
| **いびせー** | 怖い / 恐ろしい | 「夜の海は**いびせー**ねぇ」 |
| **おっとろしい** | 恐ろしい / びっくりした | 「**おっとろしい**!急に飛び出してきて」 |
| **はぶてる** | 腹を立てる / ふてくされる | 「そんなに**はぶて**なや」 |
| **こすい** | ずるい / けち | 「あの人は**こすい**ことばっかりする」 |
| **とろい** | 鈍い / 遅い | 「あいつは仕事が**とろい**けん困る」 |
| **こそばい** | くすすったい | 「そんなとこ触られたら**こそばい**わ」 |
| **せられん** | してはいけない | 「そがいなこと**せられん**よ」 |
| **だんだん** | ありがとう | 「お菓子をくれて、**だんだん**ね」 |
## 添付文章
答えを作るための参考資料です。
{text}
## 問題文
{question}
## 答え
{answer}
-
モデルサーブ方法:
合成データを作るには言語モデルを使います。
大金をはたいて買ったThinkstation PGXでQwen/Qwen3.5-35B-A3B系をサーブし推論しました。(系と言っている理由は途中から量子化モデルを使ったり、他のモデルを使ったからです。)
モデルを動かす環境がなければ、OpenRouterなどを活用できます。こっちの方が速いですが、結構お金がかかります。多少のプログラム修正をしながら、約4日間で1775セットを作りました。
-
モデルサーブから学んだこと
単に推論サーバーを立てるだけなんですが、結構勉強になりました。
vLLMを使ってサーバーを立てましたが、並列数やプレフィル条件など、いろいろと試すことで効率的にどのような工夫をvLLMが行っているのかを理解することができました。GB10はメモリ帯域(記憶しているメモリを移動させる速度みたいなもん)が狭いので生成速度はあまり高くありません。この制約の中でどうやって動かせば効率よく動かせるのか、なんとなく体感することができました。
推論しているときの出力を眺めているのも面白かったですよ。
「あ、リクエスト受けた、プレフィルしてる・・・推論してる・・・レスポンス返した・・・あ、並列数が減った。あ、またリクエスト来た・・・今度は待機させられてる・・・あ、実行に移った・・・」見てて飽きません(変態か!)
4. Unsloth Studio:クリックだけで完結する学習体験
-
Unsloth Studioとは:
爆速学習ライブラリ 「Unsloth」 から登場した、GUIベースのファインチューニング環境です。
unslothについては2024年の大規模言語モデル講座(松尾研究室)を受講したときにはじめて触りましたが、小メモリで爆速で動く学習&推論ライブラリです。
-
Unsloth Studioのここが凄い:
- コード不要(No-Code)で学習が回せる。
- 学習効率(VRAM節約・速度)はUnslothそのまま。うれしい!
- Transformerの理解と学習パラメータの理解は必要ですが、一行もプログラムを書くことなく学習を実行、さらにチャットで利用もできます。
- tailscaleを使って外出先からssh接続すれば学習&推論できます。(sshが切れると学習は止まっちゃいます)
-
install
ココ見たら簡単!言うことなし!
5. 実践!モデル作成のステップ
- データ準備: 合成データ(JSONL形式)をUnsloth Studioにインポート。
- 設定: ベースモデルの選択、パラメータ設定、学習設定
- 学習実行: スタート一つで学習開始!
- 検証: 実際に出力して確認
本来、ガチのモデル開発だと評価指標を作り、出力をLLM-as-a-Judgeさせるのでしょうけれど、今回は端折り、官能評価だけとしました。
6. いよいよ出力
でね、この記事を書いている間にデータセットのv2ができちゃいました。💦
v2で学習したモデルの出力を見ていきます。
ikedachin/Qwen3.5-9B-imabari-v2
このモデルについてはベースモデル、つまり事前学習をしただけのモデルが公開されています。Chat形式ではなく、ひたすらテキストを出力するモデルの事です。
このモデルをタグに囲まれた思考過程と最終出力ができるように学習しました。
Qwen3.5-9B-imabari-v2出力例
今治の特産品について教えて
# 思考過程
## 1. 問題の把握
今治の特産品について聞かれてるんやな。
今治って地名が出てくるけん、そこを重点的に見るんや。
## 2. 情報へのアクセス
今治の項目を確認しよるけん、特産品って書いてある部分を探すんや。
そこには「今治は特産品として今治織物や今治銅器が知られておる」と書いてあるんや。
## 3. 結論の導出
今治織物や今治銅器が特産品やな。
おんまく自信あるんよ。
答えはこれで決まりやん。
## 4. 答えのドラフト
今治は特産品として今治織物や今治銅器が知られておるんやわい。
今治は特産品として今治織物や今治銅器が知られておるんやわい。
今治の特産って織物とか銅器なんだっけ???(ちゃうやろ
ikedachin/Qwen3.5-27B-imabari-v2
このモデルは9Bのようにベースモデルが公開されていないので、すでにチャット形式で対話できるようにしたモデルを学習します。
本来は思考過程が英語で出力されるモデルですが、学習後はきちんと今治弁で回答してくれるようになりました。
Qwen3.5-27B-imabari-v2出力例
今治の特産品について教えて
# 思考過程
## 1. 今治の特産品って何やろか?
今治って聞かれたら、まずは「今治」って言葉が浮かぶわい。
特産品って聞かれてるけん、今治で有名なものを探しよんやな。
今治は「わい」で終わるんやけん、その言葉も忘れんようにしよわい。
## 2. 代表的なものって何やろか?
今治で一番有名なのは「今治タオル」やんね。
「タオルの今治」って呼ばれてるけん、これは外せんわい。
おんまく有名やけん、まずはこれから説明しよわい。
## 3. 他にもあるんやな?
タオルだけやないけん、他にもあるんやな。
「今治和紙」や「今治醤油」も特産品やんね。
これらも忘れんようにしよわい。
今治の歴史や文化も少し触れとるけん、それも含めて説明しよわい。
## 4. 今治弁でまとめよか
今治弁でまとめるけん、語尾を「やん」「わい」にしよわい。
「おんまく」も使っとるけん、今治の雰囲気を出しよわい。
今治弁でまとめよか。
## 5. 答えのドラフト
今治の特産品やったら、タオルやんね。
「タオルの今治」って呼ばれてるけん、おんまく有名やわい。
他にも今治和紙や今治醤油も特産品やんね。
今治の歴史や文化も少し触れとるけん、それも含めて説明しよわい。
</think>
今治の特産品やったら、タオルやんね。「タオルの今治」って呼ばれてるけん、おんまく有名やわい。他にも今治和紙や今治醤油も特産品やんね。
え?今治醤油?今治和紙?。ないな。www
ikedachin/llm-jp-4-32b-a3b-thinking-imabari-v2
とか書いていたら、v2のデータセットができてきました。
ついでなんで、llm-jp-4-32b-a3b-thinkingで学習させてみました。
llm-jp-4-32b-a3b-thinking-imabari-v2出力例
今治の特産品について教えて
final
* **今治の特産品って、何があるんやろ?**
* 今治は海と山に囲まれた土地やけん、自然の恵みがいっぱいあるんやん。
* おんまく自信あるんよ、これで決まりやな!
* **まずはタオルやろか。**
* 今治タオルは日本一の生産量を誇るんやけん、これは外せへんわい。
* 吸水性・速乾性にすぐれてるんやから、観光客にも人気やわい。
* **次は海苔やな。**
* 瀬戸内海の潮流で育まれた海苔は、香り高く味が濃いんやけん、これも忘れんようにしよわい。
* お土産としても喜ばれるんやんね。
* **他にもいろいろあるんやな。**
* 柑橘類(みかん)も有名やし、魚介類も豊富やけん、海の幸も楽しめるんやん。
* 今治城周辺の商店街では、これらを活かした商品がたくさん売っとるけん、ぜひ見てみよわい。
* **まとめとして、今治の特産品を簡潔に伝えるんやな。**
* 今治タオル、瀬戸内海産の海苔、みかんなどの柑橘類、そして新鮮な魚介類やな。
* これらを全部まとめて、今治の魅力を伝えよわい。
今治の特産品は、今治タオル、瀬戸内海産の海苔、みかんなどの柑橘類、そして新鮮な魚介類やな。
さすが国産モデル。ちょっと海苔は微妙だけど(作ってはいる。母の実家は海苔を作ってました。)
7. 考察・今後の展望
- 「データさえあれば学習できる」時代の到来
- 人類皆学習時代 の到来じゃんね!
- Unsloth Studioのようなツールが普及することで、開発者が「手法」よりも「データの質とアイデア」に集中できると実感
ほら、いつぞやのイベントで僕が「みんな学習する時代が来るぞ!」って言ったのがもう実現しつつあります。
8. おわりに
「いまさら感」のある表現変更モデル(方言出力モデル)を作るだけでなく、整理整頓された思考過程を出力可能なデータセットを作ることができました。
ただし、さすがにこのサイズのモデルでは今治に対する知識が乏しく、今治タオルが江戸時代から作られていると回答したり誤回答をしてしまいます。以前にもチャレンジした 新しく知識を埋め込む ことになりますね。
その点も継続してチャレンジしていきたいですね!
続く・・・かもね!