ローカルLLMを始めると、すぐにGPUの壁にぶつかる。「どのGPUを買えばいいの?」——この質問にはっきり答える。予算が許すならVRAM最大のを買え。以上。
…で終わらせるわけにもいかないから、もう少し真面目に解説する。LLMの推論で一番重要なのはVRAM(ビデオメモリ)の容量だ。モデルのサイズがVRAMを超えると、どうあがいてもまともに動かない。
// コードと趣味の境界線上
ローカルLLMを始めると、すぐにGPUの壁にぶつかる。「どのGPUを買えばいいの?」——この質問にはっきり答える。予算が許すならVRAM最大のを買え。以上。
…で終わらせるわけにもいかないから、もう少し真面目に解説する。LLMの推論で一番重要なのはVRAM(ビデオメモリ)の容量だ。モデルのサイズがVRAMを超えると、どうあがいてもまともに動かない。
「LLMを動かすにはGPUが必要」——これは半分本当で、半分ウソだ。確かに速さを求めるならGPUだけど、llama.cppを使えばCPUだけでLLMが動く。これがどれだけすごいか、初めて知ったときは椅子から転げ落ちそうになった。
llama.cppはGeorgi Gerganov氏が作ったC++のLLM推論エンジン。当初はLlamaモデルをMacで動かすためのツールだったけど、今ではほぼ全てのオープンソースLLMを、ほぼ全てのプラットフォームで動かせるようになってる。
ローカルLLMの世界に入ると、必ず出会うのがGGUFファイル。`.gguf` っていう拡張子。「ただのモデルファイルでしょ?」って思ってたら、実はかなり奥深い仕組みだった。
GGUF(GPT-Generated Unified Format)は、llama.cppのために作られたモデルファイル形式。GGMLの後継で、2023年8月に登場した。それまでのPyTorchの`.bin`や`.safetensors`と違って、モデルの重みと設定を1ファイルにまとめられる。
「ローカルLLMを動かす」って聞くと、CUDAのインストール、Pythonの仮想環境、モデルの変換…と面倒なイメージがある。でもOllamaを知った瞬間、そのイメージは粉々になった。
$ ollama run llama3
これだけでLlama 3 8Bが動く。pip installもgit cloneも不要。macOSでもLinuxでもWindowsでも同じコマンド。このシンプルさが革命的だった。
2022年11月30日、ChatGPTが公開された。あれからまだ2年ちょっとしか経ってないのに、もはや「ChatGPT以前」の記憶が薄れ始めてる。この2年間、LLMの世界は目まぐるしく変わった。時系列で振り返ってみよう。
ChatGPTの登場はインターネット以来の衝撃だった。公開5日で100万ユーザー。2ヶ月で1億人。このペースは歴史上のどんなプロダクトより速い。世界が「AI」を意識し始めた瞬間だ。
ChatGPTのAPIを使えば済む話なのに、わざわざGPU買ってローカルでLLMを動かす。傍から見たら完全に酔狂だ。でもローカルLLMには、クラウドAPIにはない圧倒的な自由がある。
最初にローカルLLMに手を出したきっかけは単純で、「APIのレート制限にイライラした」から。GPT-4 API、1分間に何回も叩くとすぐ制限がかかる。大量のテキスト処理をしたいときにこれがストレスで、ローカルLLMを試し始めた。
「AIはビッグテックの独占物」ってイメージ、2023年まではそうだった。でも2024年、オープンソースLLMの進化がヤバい。MetaのLlama 3、Mistral、GoogleのGemma——無料で使えて、ローカルでも動いて、しかもかなり賢い。
僕はこの半年で主要なオープンソースLLMを片っ端から試した。RTX 3090(24GB VRAM)一枚でここまでできるのか、って感動と興奮の連続だった。
[Read more…] about オープンソースLLMの現状 — Llama, Mistral, Gemmaを全部試す
「Googleで検索して、青いリンクを10個眺めて、一個ずつ開いて読む」——この当たり前の検索体験が、AIによって根本から覆されようとしてる。その中心にいるのがPerplexityだ。
PerplexityはAI検索エンジン。質問を入れると、検索結果のリンク集じゃなくて、複数ソースを参照しまとめた回答を直接返してくる。しかも出典リンク付き。使ってみた初日、「これが検索の未来か」と素直に感動した。
LLMを使っていると「トークン制限」という壁に必ずぶつかる。でも「トークン」って何?文字数とは違うの?と思ったこと、ないだろうか。これ、LLMを深く理解する上でめちゃくちゃ重要な概念だ。
トークンとは、LLMがテキストを処理する最小単位。英語ならおおよそ「1単語≒1.3トークン」。でも日本語はそう単純じゃない。「りんご」は1トークンのこともあれば2トークンのこともある。漢字一文字で1トークンになることも。この言語間格差、地味にデカい。
ChatGPTが「それはお答えできません」と言うたびに、むず痒い気持ちになる。でもよく考えたら、この「拒否」の裏にはめちゃくちゃ深い問題が横たわってる。AIの価値観は誰が決めるのか?「安全」って何?という話だ。
AIアラインメント(整合性)とは、「AIの行動を人間の意図や価値観と一致させる」こと。簡単に言えば「暴走させない」「人間の役に立つように制御する」技術。でもここで問題になるのは「誰にとっての正しさか」だ。