サンプルアプリケーションこの例では、ClickHouse のデータをクエリできるチャットインターフェイスを備えた Web アプリケーションを構築します。
この例のソースコードは、examples リポジトリ にあります。
前提条件
- システムに Python がインストールされている必要があります。
uvがインストールされている必要があります。 - Anthropic の API キー、または別の LLM プロバイダの API キーが必要です
1
ライブラリのインストール
以下のコマンドを実行して、必要なライブラリをインストールします。
2
ユーティリティファイルを作成する
2 つのユーティリティ関数を含む
utils.py ファイルを作成します。1 つ目は、
Agno エージェントからのストリーム応答を処理するための非同期ジェネレーター関数です。
2 つ目は、Streamlit
アプリケーションにスタイルを適用するための関数です。utils.py
3
認証情報の設定
Anthropic APIキーを環境変数として設定します。
別のLLMプロバイダーを使用するAnthropicのAPIキーをお持ちでなく、別のLLMプロバイダーを使用したい場合は、
Agno「Integrations」ドキュメントで認証情報の設定手順を確認できます
4
必要なライブラリをインポートする
まず、メインのStreamlitアプリケーションファイル (例:
app.py) を作成し、必要なライブラリをインポートします。5
agent のストリーミング関数を定義する
ClickHouse’s SQL Playground に接続し、レスポンスをストリーミングするメインの agent 関数を追加します。
6
同期ラッパー関数を追加する
Streamlit での非同期ストリーミングを処理するためのヘルパー関数を追加します。
7
Streamlit インターフェイスを作成する
Streamlit の UI コンポーネントとチャット機能を追加します。
8
アプリケーションを実行する
ClickHouse AI agent のWebアプリケーションを起動するには、ターミナルで
次のコマンドを実行します。これにより Web ブラウザーが開き、
http://localhost:8501 に移動します。そこで
AI エージェントと対話し、ClickHouse の SQL Playground で利用できる
サンプルデータセットについて質問できます。