こんにちは!最近、AIや自然言語処理の分野で「大規模言語モデル(LLM)」という言葉をよく聞くようになりました。LLMは、膨大なテキストデータを学習して高度な言語理解・生成能力を獲得したAIモデルのことです。
そんなLLMを手軽に試せるツールとして、「ollama」が注目を集めています。ollamaを使えば、自分のPCでLLMを動かして対話を楽しめるんです。
今回は、日本語に特化した大規模言語モデル「LLM-jp-13B」を、ollamaを使って動かす方法をご紹介します。プログラミングの知識がなくても大丈夫。この記事を読めば、あなたもLLM-jp-13Bと対話できるようになりますよ!
LLM-jp-13Bって何?
LLM-jp-13Bは、国立情報学研究所(NII)のプロジェクト「LLM-jp」が開発した日本語特化型のLLMです。パラメータ数は130億個。ゼロから学習されたフルスクラッチモデルで、しかもオープンなライセンスで公開されているんです。
日本語LLMの選択肢はまだ少ないですが、LLM-jp-13Bは日本語の理解と生成に優れた性能を発揮します。フリーで使えるLLMを探している方におすすめのモデルですね。
ollamaって何ができるの?
ollamaは、LLMをローカルPC上で動かすためのツールです。GPUを搭載した高性能マシンがなくても、CPUだけで比較的大きなLLMを動かせるんです。
例えば、英語の有名LLMである「Llama 3」も、ollama run llama3
の一行コマンドで起動できます。手軽さが魅力ですね。
また、自分で用意したLLMも使えます。今回は、その機能を使ってLLM-jp-13Bを動かしていきます。
手順1:LLM-jp-13Bのモデルファイルを入手
まずは、LLM-jp-13Bのモデルファイルを手に入れましょう。といっても、ネットにいくつか転がっているので、そこからダウンロードするだけです。
おすすめは、有志のmmngaさんが公開している「GGUF形式」のファイルです。以下のリンクから、ファイル一式が入ったリポジトリにアクセスできます。
このリポジトリには、量子化のレベルが異なる複数のモデルファイルがあります。今回は「Q4_K_M」という中間レベルの量子化モデルを使いましょう。軽量化されつつ、品質もそこそこ保たれているはずです。
ファイルサイズは約8GB。ダウンロードにはしばらく時間がかかるので、まずはダウンロードを開始しておきましょう。
手順2:Modelfileを書く
モデルファイルが揃ったら、次は設定ファイル「Modelfile」を用意します。ollamaはこのファイルを読み込んで、指定されたパラメータでLLMを動かしてくれるんです。
Modelfileはただのテキストファイルなので、以下の内容をコピペして「Modelfile」という名前で保存しましょう。モデルファイルと同じフォルダに置いてくださいね。
FROM ./llm-jp-13b-instruct-full-ac_001_16x-dolly-ichikara_004_001_single-oasst-oasst2-v2.0-Q4_K_M.gguf
PARAMETER temperature 0.7
PARAMETER top_p 0.95
PARAMETER repeat_penalty 1.05
PARAMETER stop "<EOD|LLM-jp>"
TEMPLATE """{{ if .System }}{{ .System }}{{ end }}{{ if .Prompt }}
### 指示:
{{ .Prompt }}{{ end }}
### 応答:
{{ .Response }}<EOD|LLM-jp>"""
SYSTEM """以下は、タスクを説明する指示です。要求を適切に満たす応答を書きなさい。"""
ここで指定しているのは、モデルの基本的な動作パラメータです。例えばtemperature
は、言語生成時のランダム性を制御します。高いほど予想外の応答が出やすくなります。
TEMPLATE
のところは、LLMへの指示と応答の形式を定義しています。ChatGPTのようなロールプレイ形式の会話を行うために必要な設定ですね。ここは、LLM-jp-13B付属のchat_template
をそのまま使っています。
手順3:LLMを起動!
さて、準備が整ったところでLLMを起動しましょう。ollamaのコマンドは2ステップです。
まずはollama create
で、Modelfileを読み込んでollamaにモデル情報を認識させます。
ollama create LLM-jp-13b-chat -f ./Modelfile
LLM-jp-13b-chat
というのは、これから使うモデルに付ける名前です。自由に決めてOKです。
次にollama run
で、名前を指定してモデルを起動します。
ollama run LLM-jp-13b-chat
少し待つと、LLMとの対話が始まります。「>>>」と表示されたら、そこに質問や指示を入力しましょう。enterキーを押すと、LLMが応答を返してくれます。
例えばこんな感じです。
C:\Prj\__LLM_JP13B>ollama run llm-jp-13b-v2
>>> 今日のご飯を提案して
以下に、現在の食事ニーズに関する情報を入力してください。私がおすすめのレシピを提供します。
サラダチキンと卵のサラダサンドウィッチ風ライスボウルはどう?
>>> 今日の筋トレメニューを提案して
以下に、現在のフィットネス目標に関する情報を入力してください。私がおすすめのトレーニングプランを提供します。
>>> 適当に提案して
もちろん、ここにいくつかのアイデアがある:
1.1時間程度の短い散歩に出かける。自然や景色の良い場所を選んでもいいし、ショッピングモールでもいい。目的もなくぶらぶら歩くのは、実はとても健康的なことなのだ。歩くことは有酸素運動であり、心臓血管の健康維持に欠かせない。
2.室内で簡単なエクササイズをする。家にヨガマットや布団があれば、仰向けに寝て足を天井に向かって持ち上げる「飛行機」というポーズ、膝を胸の前で合わせて左右に倒すサイド・ベンド、腕立て伏せの姿勢から体を丸めるプランクなど、簡単なストレッチ運動ができる。
3.近くのジムに入会する。ジムでは、ランニングマシンやバイク、ウェイトトレーニング機器などの人気の有酸素運動や筋力増強エクササイズをすることができる。また、ヨガやピラティス、ダンスレッスンなどのグループワークアウトにも参加できます。
4.自宅で自重エクササイズに取り組む。腕立て伏せ、腹筋、スクワットなどのエクササイズは、ジムに通わなくても自分で行うことができる。腕立て伏せの姿勢から体を丸めるプランク、膝を胸の前で合わせて左右に倒すサイド・ベンド、腹筋運動などがその一例だ。これらのエクササイズは、筋肉をつけるだけでなく、全身のス
トレッチにもなる。
5.屋外でサイクリングやハイキングに出かける。屋外での運動は、新鮮な空気を吸いながら体を動かすので、気分転換にもなる。サイクリングなら、公園やトレイル、裏道を走ってみよう。ハイキングなら、近くの丘や森に出かけてもいい。自然を楽しみながら運動できる環境は、最高のフィットネス体験になる。
>>>
どうですか?思いついたメニューをさらさらと提案してくれたでしょう。
ちなみに、LLM-jp-13Bはレシピ以外にも、様々な話題について応答できます。プログラミングの質問や、文章の執筆、趣味の話など、色んな話題を振ってみてくださいね。思いがけない発見があるかもしれません。
LLM-jp-13Bの未来は?
LLM-jp-13Bは、大学や企業から500名以上が参加するプロジェクト「LLM-jp」の成果として生まれました。
自然言語処理と計算機システムの研究者たちが力を合わせ、日本発の大規模言語モデルの実現を目指しているんです。
LLM-jp-13Bはその第一歩に過ぎません。今後は、産業技術総合研究所や東京工業大学とも連携して、さらに大きな、そして賢いLLMの開発を進めるそうです。1750億パラメータ規模の「GPT-3級」モデルの構築計画も進行中とか。
日本語LLMの世界に、新しい風が吹いています。日本発の言語AIが、どこまで成長するのか。ワクワクしますね!
まとめ
- 大規模言語モデルLLM-jp-13Bを、ollamaを使って手軽に動かせる
- 必要なのは、モデルファイルとModelfileの2つだけ
- レシピ提案から雑談まで、LLM-jp-13Bは幅広い対話能力を備えている
- 日本発のLLM開発プロジェクト「LLM-jp」から目が離せない
以上、ちょっと興味をひかれた方は、ぜひ自分でもLLM-jp-13Bを動かしてみてください。きっと、驚きと楽しさに出会えるはずです!
プロジェクトの最新情報は、LLM-jpの公式サイト(https://llm-jp.nii.ac.jp/)でチェックできますよ。
みんなで日本の言語AIを盛り上げていきましょう!
コメント