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
LangChain × Ollamaで学ぶLLM & RAG超入門
Search
dassimen
April 27, 2025
1
170
LangChain × Ollamaで学ぶLLM & RAG超入門
ローカルだけでLLMとRAGについて入門する資料
ソースコードサンプルは以下に配置
-
https://github.com/GitHiroki/LLM_Study_Introduction
dassimen
April 27, 2025
Tweet
Share
More Decks by dassimen
See All by dassimen
LLMとは(超概要)
dassimen001
0
68
RAGとは(超概要)
dassimen001
0
54
まるでChatGTP!?
dassimen001
0
36
LLMローカル動作方法(NvidiaGPU使用)
dassimen001
0
88
🎭Playwright 超入門
dassimen001
0
44
LLMローカル動作方法
dassimen001
1
74
ベクトル変換について
dassimen001
1
49
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
33k
A Tale of Four Properties
chriscoyier
161
23k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Side Projects
sachag
455
43k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Become a Pro
speakerdeck
PRO
29
5.6k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Context Engineering - Making Every Token Count
addyosmani
8
320
Documentation Writing (for coders)
carmenintech
76
5.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Transcript
LangChain × Ollama で学ぶLLM & RAG 超入門 Gemma3 + Ruri
Embeddings + Chroma + LangChain + FastAPI + Open WebUI LangChain × Ollama で学ぶLLM & RAG 超入門 © 2025 1
0. 目的 1. Retrieval-Augmented Generation (RAG )の動きを理解する 2. 完全ローカル環境で LLM
(Gemma3 )を使った検索付き QA API を構築 3. ブラウザ UI (Open WebUI )から RAG と対話して効果を体感する 対象読者は プログラミング経験者(Python ・Docker の基礎が分かる)で AI /LLM は初学者という前提です。 LangChain × Ollama で学ぶLLM & RAG 超入門 © 2025 2
1. 構成図 Ollama が LLM API と Embedding API を提供(Gemma3
・Ruri で推論) FastAPI が LangChain で RAG を実行し、OpenAI 互換エンドポイント /v1/chat/completions として公開 Open WebUI はフロントエンド。環境変数 OPENAI_API_BASE を FastAPI に向ける ことで RAG を UI から利用できる LangChain × Ollama で学ぶLLM & RAG 超入門 © 2025 3
2. システム要件 項目 推奨値・備考 OS Windows 11 + WSL 2
(Ubuntu 22.04) Docker Docker Desktop (WSL backend) GPU ( 任意) NVIDIA / CUDA 12 以上 (VRAM 8 GB+) CPU だけでも可(遅くなる) ポート 11434 (Ollama) / 8000 (FastAPI) / 3000 (WebUI) LangChain × Ollama で学ぶLLM & RAG 超入門 © 2025 4
3. ディレクトリ構成 . ├─ compose.yml ├─ rag_api/ │ ├─ Dockerfile
│ ├─ app.py # FastAPI + LangChain │ └─ docs/ # 検索対象ファイル(Markdown 等) └─ chroma_store/ # ベクトル DB(自動生成) 学習用のソースコードサンプルは以下に配置してます。 https://github.com/GitHiroki/LLM_Study_Introduction LangChain × Ollama で学ぶLLM & RAG 超入門 © 2025 5
4. セットアップ手順 1. リポジトリを clone ★リポジトリを用意しよう git clone https://github.com/GitHiroki/LLM_Study_Introduction.git; cd
LLM_Study_Introduction 2. Docker コンテナ起動 docker compose up -d 3. モデルをダウンロード(別ターミナル) docker exec -it ollama ollama pull gemma3:1b docker exec -it ollama ollama pull kun432/cl-nagoya-ruri-base 4. ブラウザでアクセス http://localhost:3000 へ モデル選択ドロップダウンで gemma-rag を選び、質問を入力 LangChain × Ollama で学ぶLLM & RAG 超入門 © 2025 6
5. 動作確認チェックリスト チェック 確認方法 RAG が呼ばれてい るか? Open WebUI の
DevTools → Network で POST /v1/chat/completions を確認 検索結果が変わる か? docs/ にファイルを追加→ docker restart rag-api → 再質問 ベクトル DB が永続 か? docker compose down → up -d 後も回答が保持される LangChain × Ollama で学ぶLLM & RAG 超入門 © 2025 7
6. 発展課題 1. ストリーミング対応 StreamingResponse で SSE を返し、WebUI の stream=on
を有効化 2. メタデータフィルタ store.as_retriever(filter={"source": "internal"}) で限定検索 3. LangSmith トレーシング LANGCHAIN_TRACING_V2=true で生成過程を可視化 4. 認証追加 FastAPI で Authorization ヘッダを検証し、Open WebUI 側に同じキーを設定 LangChain × Ollama で学ぶLLM & RAG 超入門 © 2025 8
7. まとめ Gemma3 (LLM ) + Ruri-base (日本語埋め込み) + Chroma
(ベクトル DB ) LangChain で RAG パイプラインを構築し、FastAPI で OpenAI 互換 API にラップ Open WebUI から完全ローカル RAG 環境と対話し、効果を体験 LangChain × Ollama で学ぶLLM & RAG 超入門 © 2025 9