Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
RでローカルLLM
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
HIGUCHI, Chihiro
December 09, 2024
750
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RでローカルLLM
HIGUCHI, Chihiro
December 09, 2024
More Decks by HIGUCHI, Chihiro
See All by HIGUCHI, Chihiro
Singularity仮想化でバイオデータ解析
zgmfx20a
0
910
Featured
See All Featured
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
390
Statistics for Hackers
jakevdp
799
230k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
160
Ruling the World: When Life Gets Gamed
codingconduct
0
250
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Ethics towards AI in product and experience design
skipperchong
2
300
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
390
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
200
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Facilitating Awesome Meetings
lara
57
6.9k
Utilizing Notion as your number one productivity tool
mfonobong
4
320
Visualization
eitanlees
152
17k
Transcript
RでローカルLLM 医薬基盤・健康・栄養研究所 東京科学大学 樋口千洋 2024/12/10 統計数理研究所共同利用研究集会「データ解析環境Rの整備と利用」
2023年のローカルLLM利用事情 • 動かすだけでも高性能なGPU搭載PCが必要だった • A100クラスのGPUが何枚も必要とされた→1千万円以上? • RNNベースのRWKVモデルの登場 • https://note.com/shi3zblog/n/na991171b8fdd •
Transformerは計算量が膨大 • 本環境はたしかA6000無印 (48GB)を使用→それでも高額 • SLMと呼ばれる小規模な言語モデルの登場 • 量子化手法によるメモリ節約 • 16ビット浮動小数点精度を諦め8ビットで格納量を2倍にする • Bitnet(1.58bit)への淡い期待 …
2023年の研究集会で話したこと
2024年になると状況は一変 • Ollamaを使えば非GPU PCでも容易にローカルLLM利用可 • ほかにもLMstudioやvLLM、MLX(Apple silicon) • Ollamaで使えるLLMは https://ollama.com/libraryで公開
• 今春(2024/5)の大阪24時間AIハッカソンでollamaを使用 • https://note.com/shi3zblog/n/n1c5313748849 • 64GB搭載のMacBookProでCohereのCommand-Rモデル利用 • https://pc.watch.impress.co.jp/docs/column/nishikawa/1582380.html • レスポンスは問題なし • GPUがあるならあったほうが速いが、モデルがロードできないと意味がない • モデルサイズ59GBのCommandR+の利用は本環境では厳しい • CommandR-35Bは19GB→24GBVRAMのGPUでも厳しい? • コンシューマー用GPUは大きくてVRAM容量は16GB→8GB前後のモデルまで?
https://ollama.com/library/llama3.1 何故ローカルLLMにこだわるか? • 個人情報データ解析の現場ではインターネットが使えない • プロトタイプ試作時の頻繁な利用 • プロンプト(文脈内学習)の検証 • 大規模(パイプライン)なアクセス検証
• 公開されたローカルLLMの利用は無料 • トークン⾧(文脈内学習に大きく影響) • GPT-4oの最大トークン⾧は8192 • Geminiの最大トークン⾧はとても大きいがGemmaはそうでもない • Llama3.1の最大トークン⾧は128k • 128kのトークンを与えてちゃんと動くかどうかは別 • トークン⾧が多いと商用LLMの場合はAPI利用料が膨大 • ⾧文プロンプトによる文脈内学習(ICL)はRAGを凌ぐという報告も • RAG(Retrieval Augmented Generation) • 外部データベースによる情報から生成AIを使用しハルシネーションを抑制する試み
OllamaでローカルLLMを利用
Ollamaのインストールと起動(Ubuntu) • Ollamaのインストールとサービス起動 • シェル • Curl –fsSL https://ollama.com/install.sh |
sh • Sudo systemctl start ollama • Docker • docker run -d [--gpus=all] -v ollama:/root/.ollama -p 11434:11434 -- name ollama ollama/ollama • Singularity (上記Dockerイメージを変換) • sudo singularity build ollama.sif docker-daemon://ollama/ollama • singularity exec –nv ollama.sif ollama serve • http://XXX.XXX.XXX.XXX:11434/にアクセス
OllamaでLLMを利用 • スタンドアローンで利用 • ollama pull <model> (https://ollama.com/library) • ollama
run <model> • ネットワークを介しての利用 • curlでhttp://xxx.xxx.xxx.xxx:11434/をアクセス • Open WebUI • Python/JS (正式サポート) • LangChain、LlamaIndex • Dify、Replit、Bolt.new-multiLLM • Emacs • R! • Rollama/cranパッケージ • https://github.com/cran/ollamar→localhostだけしかアクセスできない? • 注意点 • LLMへ渡すトークン⾧が規定値2048→制限解除が必要(num_ctx)
rollamaパッケージ • ライブラリのロード • library (rollama) • 接続 • options
(rollama_server = “http://example.com:11434/”) • LLMの導入 • pull_model (“nemotron”) # ollama側でpullするので使わない • 導入したローカルLLMの一覧 • list_models () • モデルの指定 • options (rollama_model = “llama3.2-vision”) • options (rollama_model = “7shi/tanuki-dpo-v1.0”) • チャット • new_chat () • query (q = <プロンプト文字列>, model_params = list (num_ctx = XXXX))
GENIAC 松尾研 LLM開発プロジェクト • https://huggingface.co/weblab-GENIAC/Tanuki-8x8B-dpo-v1.0
https://www.docswell.com/s/KanHatakeyama/5YDDJE-2024-09-18-214202#p7 大規模言語モデル Tanuki-8x8Bの紹介と開発経緯など Ollamaでも提供
動作環境 • PC • DELL XPS 8950 / 32GB RAM
/ GeForce RTX 3070 (8GB) • OS • Ubuntu 24.04 LTS • Ollama • Version 0.4.5 • 一昨日ollama 0.5.0ローンチ • Json出力 • Llama 3.3 70b (42GB) → 本構成では実施不可
文脈内学習(In Context Learning) • Zero-shot • 具体例を与えず照会 • Few-shot •
具体例を一例与えて照会 • Chain of Thought (CoT) • 推論プロセスを指示 • 単語の中に特定の文字がいくつ含まれるかは1文字づつにして文字を調べる • Sapporo.RやYakitori.Rの中にRはいくつある?
ICLのrollamaパッケージによる実行例 • rollamaパッケージのvignetteから
マルチモーダル(llama3.2-vision)
マルチモーダル(Marco-o1)
でアブストラクトを翻訳
None
おわりに • (ローカル)LLMは身近になってきた • 身近どころか積極的に研究の道具として活用 • Rと組み合わせて新しい探索的研究 • RAGもやりたいがライブラリなしには厳しいかも •
reticulateパッケージを使う? • 文脈内学習で頑張る!
ご清聴 ありがとうございました