Skip to content

環境構築

確認

事前準備 が完了していない場合は先にそちらを済ませて下さい

このセクションではpythonの実行環境を作っていきます。

ハンズオン当日はここから一緒に作業をしていきます。

リポジトリの取得

ハンズオンで使うリポジトリを取得します

bash
# リポジトリのクローン
git clone https://github.com/bucchi-kitamura/rag-hanzon.git
cd rag-hanzon

📁 作業ディレクトリ

以降の作業は全てこのディレクトリ内で行います。

Python環境の構築

ハンズオンで使うPythonの実行環境を構築します。

Python 3.13のインストール

bash
uv python install 3.13

仮想環境の作成

bash
uv venv --python 3.13

仮想環境の有効化

cmd
.venv\Scripts\activate
bash
source .venv/bin/activate

python --versionを実行して、同じバージョンであれば大丈夫です。

bash
python --version
Python 3.13.3

パッケージのインストール

ハンズオンで使うパッケージをインストールします。

インストールするパッケージはpyproject.tomlに定義しています。

bash
uv sync

今回は以下のパッケージを追加します。

  • ruff(静的コード解析ツール)
  • llama-index-embeddings-ollama
    • RAGのRetrieval(検索・取得)
    • 質問に関連するドキュメントやチャンクを検索・取得する
    • どの情報がユーザの質問に関連するかを見つけてくれる
  • llama-index
    • RAGのAugmented(拡張・増強)
    • 検索で取得した情報を整理して、コンテキストとして拡張・増強する
  • llama-index-llms-ollama
    • RAGのGeneration(生成)
    • 拡張したコンテキストを使って回答を生成する

ざっくりイメージ

モデルの役割

事前準備で用意してもらった2種類のモデル

llama-index-llms-ollamallama-index-embeddings-ollamaでそれぞれ必要になります

インストール確認

パッケージがインストールされたかを確認します

uv treeはパッケージの依存関係をツリー構造で表示するコマンドです

bash
uv tree
Resolved 87 packages in 1ms
rag-hanzon v0.1.0
├── llama-index v0.12.43
# 大量に出るので略

補足

  • 一覧見たい場合は uv pip list
  • 特定パッケージの情報が見たい場合は uv pip show llama-index

Ruffのコマンド

bash
uv run ruff format /src
bash
uv run ruff check /src
bash
uv run ruff check /src --fix

makeコマンド版

bash
make format
bash
make lint
bash
make lint-fix

これでハンズオンの準備が完了しました。次のセクションへ移りましょう👉