ClickHouse をバックエンドにした AI エージェントを Streamlit で構築する方法
このガイドでは、Streamlit を使用して、ClickHouse の SQL プレイグラウンド と ClickHouse の MCP サーバー、および Agno を操作するウェブベースの AI エージェントを構築する方法を学びます。
例としてのアプリケーション
この例では、ClickHouse データをクエリするためのチャットインターフェースを提供する完全なウェブアプリケーションを作成します。 この例のソースコードは、examples リポジトリ で見つけることができます。
前提条件
- システムに Python がインストールされている必要があります。
uv
のインストールが必要です。 - Anthropic API キー、または他の LLM プロバイダーからの API キーが必要です。
Streamlit アプリケーションを作成するために、以下の手順を実行できます。
ユーティリティファイルの作成
2つのユーティリティ関数を含む utils.py
ファイルを作成します。最初の関数は、Agno エージェントからのストリーム応答を処理するための非同期関数ジェネレーターです。2つ目の関数は、Streamlit アプリケーションにスタイルを適用するための関数です。
認証情報の設定
Anthropic API キーを環境変数として設定します。
別の LLM プロバイダーを使用する場合
Anthropic API キーを持っていない場合、他の LLM プロバイダーを使用したい場合は、Agno "Integrations" ドキュメント に認証情報を設定するための手順があります。
アプリケーションの実行
ClickHouse AI エージェントウェブアプリケーションを開始するには、ターミナルから以下のコマンドを実行します。
これによりウェブブラウザが開き、http://localhost:8501
に移動して、AI エージェントと対話し、ClickHouse の SQL プレイグラウンドで利用可能なサンプルデータセットに関する質問をすることができます。