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
ローカルLLMを用いた簡単なLLMアプリを作ってみた / Building a Simple ...
Search
ryu-ki
July 11, 2025
0
16
ローカルLLMを用いた簡単なLLMアプリを作ってみた / Building a Simple LLM App with Local LLM
ryu-ki
July 11, 2025
Tweet
Share
More Decks by ryu-ki
See All by ryu-ki
Claude Codeに要件をヒアリングしてもらった体験がかなり良かった
ryuki0947
21
10k
10分でオブザーバビリティを知る
ryuki0947
0
37
AWSとゼロから始めるデジタル名刺生活~深夜テンションでドメイン買っちゃった編~
ryuki0947
0
80
令和のミニ四駆!? AWS DeepRacer で強化学習に入門してみた
ryuki0947
1
260
新着ニュースを毎朝メール通知する仕組みを作ってみた
ryuki0947
2
330
DuckDBを用いたS3上のALBアクセスログの探索
ryuki0947
0
69
Amazon Bedrock Flowsで ニュース記事のおすすめ度を測ってみた
ryuki0947
0
130
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Embracing the Ebb and Flow
colly
86
4.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Side Projects
sachag
455
42k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How GitHub (no longer) Works
holman
314
140k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Building Applications with DynamoDB
mza
95
6.5k
Transcript
ローカルLLMを用いた 簡単なLLMアプリを作ってみた 2025/05/15(木) 部内 生成AI勉強会
はじめに ┃本日お話しすること 2 ローカルLLMについて 作成したアプリについて
はじめに ┃本日お話しすること 3 ローカルLLMについて 作成したアプリについて ・Ollama ・使い方(導入方法) ・RAG ・行われている処理(デモ) ・LLMアプリの監視(Langfuse)
4 ローカルLLMとは?
ローカルLLM ┃インターネット接続なしで自分のコンピューター上で 直接実行できる大規模言語モデル ┃特徴 ‐ データプライバシーとセキュリティの確保 ‐ コスト予測可能性 ‐ ネットワーク依存性の排除
5 企業内システムなどの閉じた環境と相性がよく 需要があると考えられる
6 ローカルLLMはどうやって使う?
┃LLMを簡単にローカル環境で実行できるように してくれるOSS ‐ 今回は公開されているDockerイメージを利用 • ollama/ollama - Docker Image |
Docker Hub[2] Ollama[1] 7 ダウンロードしたモデルを管理・呼び出し [1] https://ollama.com/ [2] https://hub.docker.com/r/ollama/ollama
┃Gemma(Google) ‐ 軽量(ノートPC・CPUのみでの動作可能) ┃Llama(Meta AI(旧Facebook)) ‐ 完全オープンソース[4] ┃Qwen(Alibaba Cloud) ‐
多言語対応(日本語でも高い性能) Ollamaで利用できるモデル例[3] 8 [3] https://ollama.com/library [4] https://github.com/meta-llama/llama-models
クラウドとローカルの比較[5] 9 [5] https://qiita.com/ksonoda/items/f3c703fb7b689fd65868
10 ローカルLLMを導入してみる
Ollama導入|検証環境 ┃PCスペック ‐ OS:Windows 11 Home ‐ CPU:AMD Ryzen 5
4500 6-Core Processor 3.60 GHz ‐ GPU:NVIDIA GeForce RTX 4060 Ti ‐ メモリ:16GB ┃使用ツール ‐ WSL2(Ubuntu 24.04.1 LTS) ‐ Docker(Docker Desktop) 11
Ollama導入|手順 ┃以下を準備してOllamaを導入していきます 12 WSL2 Docker NVIDIA Container Toolkit
Ollama導入|WSL2の準備 ┃管理者としてpowershellを起動し、以下を入力 ┃システムを再起動し、Linuxユーザ情報を設定 ‐ ユーザ名・パスワードの設定 13
Ollama導入|Dockerの準備 ┃docker 公式サイト[6]よりダウンロード・インストール 14 [6] https://www.docker.com/
Ollama導入|GPU使用設定(スキップ可) ┃コンテナからGPUを使うためのツールを設定 ‐ ollama/ollama - Docker Image | Docker Hub
参照 15
Ollama導入|Ollamaコンテナ起動 ┃以下コマンドでOllamaコンテナを起動 ‐ GPUの設定をしていない場合は –gpus=all を省略 ┃Docker Desktopからも確認可能 16
17 ローカルLLMを使ってみる
Ollama利用|コンテナから利用 ┃以下コマンドでコンテナ内へ ┃ollama run コマンドでモデルを起動し対話 18
Ollama利用|コンテナから利用 ┃ollama run コマンドでモデルを起動し対話 19
Ollama利用|LangChainから利用 ┃ChatOllama で簡単に呼び出し可能(コード) 20
Ollama利用|LangChainから利用 ┃ChatOllama で簡単に呼び出し可能(コード) 21 この1行だけで呼び出せる! AWSやAzureでの呼び出し方
Ollama利用|LangChainから利用 ┃ChatOllama で簡単に呼び出し可能(実行結果) 22
Ollama利用|LangChainから利用 ┃ChatOllama で簡単に呼び出し可能(実行結果) 23 コードからでも問題なく応答できている
ローカルLLMまとめ ┃ローカルLLMとは、自分のコンピューター上で 直接実行できる大規模言語モデルのことである ┃ローカルLLMは閉じた環境と相性がよく、今後 需要が高まると考えられる ┃Ollamaを用いることで簡単にローカルLLMを 扱うことができる 24
25 作成したRAGアプリケーションについて
アプリ構成 26
アプリ構成|Document_loader 27
Document_loader 28
Document_loader 29 チャンク分割 ベクトルDBへの保存 Documentオブジェクトへ変換
アプリ構成|RAG 30
RAG|プロンプト 31 Langfuse上でプロンプトを管理
RAG|RAGチェーン 32
RAG|RAGチェーン 33 入力データの作成 LLMの出力の整形 プロンプトの取得 関連ドキュメントの検索・取得
┃Steamlitを利用 ‐ Pythonだけで簡単にウェブアプリケーションを作成できる オープンソースのフレームワーク ┃最近はMastraなども台頭してきている ‐ JavaScript/TypeScript製のオープンソースAIエージェント 開発フレームワーク ‐ 参考:The
Typescript AI framework – Mastra[7] RAG|アプリ部分 34 [7] https://mastra.ai/
35 実際にアプリの動きを見てみる
RAG|アプリデモ 36
RAG|アプリまとめ ┃使えなくないがある程度のマシンスペックがないと、 割とレスポンスが重いように感じる ┃ローカルLLMは盛んに進歩しているので今後の 性能向上には期待できる ┃特に企業の内部システムや専門領域での 活用においては有用ではないかと感じている 37
38 監視もしてみる
┃LLMアプリの監視と評価のためのオープンソース プラットフォーム ‐ 簡単に導入することができる ┃できること ‐ トレース ‐ コスト追跡 ‐
プロンプトの管理 など Langfuse[8] 39 [8] https://langfuse.com/
┃Docker composeで利用 ‐ 参考:Docker Compose (self-hosted) – Langfuse[9] ‐ http://localhost:3000で利用可能
Langfuse|導入 40 [9] https://langfuse.com/self-hosting/docker-compose
Langfuse|実装 41 コールバックハンドラーを作成 各ステップの情報を Langfuseに自動送信
42 実際に監視内容を見てみる
Langfuse|デモ 43
Langfuse|まとめ ┃Langfuseを用いると比較的簡単にLLMアプリの 監視をすることができる ┃監視だけでなく、様々な機能がある ┃なにかしらLLMアプリを監視できる仕組みを 用意しておくことは大事 44
おわりに|まとめ ┃本日お話ししたこと 45 ローカルLLMについて 作成したアプリについて ・Ollama ・使い方(導入方法) ・RAG ・行われている処理(デモ) ・LLMアプリの監視(Langfuse)
おわりに|まとめ ┃本日お話ししたこと 46 ローカルLLMについて 作成したアプリについて 比較的簡単に扱うことができる ローカルLLM × RAG の可能性
今後の発展にも注視
おわりに|感じたこと ┃技術的ハードルの低下 ‐ Ollamaなどのツールにより、ローカルLLMの導入が容易に ┃技術進歩の速さ ‐ どんどん性能が高いLLMが発表されている 47 基本的にはクラウドのLLMを利用すればよいが ローカルLLMに1度触れてみることはおすすめ