RAGの例
この例では、 pytidb (TiDBの公式Python SDK)を使用して最小限のRAGアプリケーションを構築する方法を示します。
このアプリケーションは、ローカル埋め込み生成にオラマ、Web UI にストリームリットリット、RAG パイプラインの構築にpytidbを使用します。
PyTiDBで構築されたRAGアプリケーション
前提条件
始める前に、以下のものを用意してください。
- Python (>=3.10) : Python 3.10以降のバージョンをインストールしてください。
- TiDB Cloud Starterインスタンス: TiDB Cloudで無料のTiDB Cloud Starterインスタンスを作成できます。
- Ollama :オラマからインストールします。
実行方法
ステップ1. 推論APIを準備する
Ollama CLIを使用して、埋め込みモデルとLLMモデルを取得します。
ollama pull mxbai-embed-large
ollama pull gemma3:4b
ollama run gemma3:4b
/embedおよび/generateエンドポイントが実行されていることを確認してください。
curl http://localhost:11434/api/embed -d '{
"model": "mxbai-embed-large",
"input": "Llamas are members of the camelid family"
}'
curl http://localhost:11434/api/generate -d '{
"model": "gemma3:4b",
"prompt": "Hello, Who are you?"
}'
ステップ2. リポジトリをクローンする
git clone https://github.com/pingcap/pytidb.git
cd pytidb/examples/rag/
ステップ3.必要なパッケージをインストールし、環境をセットアップする
python -m venv .venv
source .venv/bin/activate
pip install -r reqs.txt
ステップ4.環境変数を設定する
- TiDB Cloudコンソールで、私のTiDBページに移動し、ターゲットのTiDB Cloud Starterインスタンスの名前をクリックして、その概要ページに移動します。
- 右上隅の「接続」をクリックします。接続ダイアログが表示され、接続パラメータが表示されます。
- 接続パラメータに応じて環境変数を以下のように設定してください。
cat > .env <<EOF
TIDB_HOST={gateway-region}.prod.aws.tidbcloud.com
TIDB_PORT=4000
TIDB_USERNAME={prefix}.root
TIDB_PASSWORD={password}
TIDB_DATABASE=test
EOF
ステップ5. Streamlitアプリを実行します
streamlit run main.py
ブラウザを開いてhttp://localhost:8501にアクセスしてください。
トラブルシューティング
502 Bad Gatewayエラー
グローバルプロキシ設定を無効にしてみてください。
関連リソース
- ソースコード: GitHubでビュー
