Vanna: Your AI Business Intelligence Assistant

Vanna: Your AI Business Intelligence Assistant

Vanna AI · コーディング

Vannaは、ふだんの言葉で書いた質問をSQL・グラフ・短い回答に変えるオープンソースのSQLエージェント。どの言語モデル、どのデータベースにも接続できる。

Vanna: Your AI Business Intelligence Assistant の画面プレビュー

Vanna: Your AI Business Intelligence Assistant について

About

Vannaとは

VannaはPythonのフレームワークと、ホスティング版のサービスの2つで構成される。人間に聞くのと同じ調子で質問を打ち込むと、クエリ、表、グラフ、そして数行の要約が一度に返ってくる。プロジェクトは2023年、検索拡張を使うtext-to-SQLライブラリとして始まり、GitHubのスターは2万を超えた。2025年11月のバージョン2.0ではアーキテクチャを全面的に作り直し、権限管理、ストリーミング応答、既存サイトに埋め込めるチャットUIを持つエージェントフレームワークへと姿を変えた。

解こうとしているのは待ち時間だ。マーケティング担当が先四半期の解約率をプラン別に見たいと言い、データチームは手一杯で、依頼はチケットの列に3日並ぶ。Vannaはその担当者の手元に、データウェアハウスにつながったチャット欄を置く。答えられる範囲で答え、実行したSQLを見せ、管理者がロジックを確認できるようにする。

導入前に押さえておきたい制約は2つある。Vannaはエンジニア向けの道具であり、インストール、データベースドライバの設定、モデルの選択、ユーザーの識別方法の定義まで自分で行う。ドラッグ&ドロップの画面はない。もう1つ、SQLの質はエージェントが学んだ量に左右される。大きなスキーマにいきなり接続するなら、しばらく付き合う覚悟がいる。半日ではなく1週間を見込んでおきたい。

使い始める

  1. 仮想環境を作り、必要な追加パッケージと一緒にインストールする。例は pip install 'vanna[anthropic,fastapi]'。Python 3.9以上が必須だ。
  2. データベースとモデルを接続する。PostgreSQL、MySQL、Snowflake、BigQuery、SQLite、Oracle、SQL Server、DuckDB、ClickHouseに対応し、モデル側はOpenAI、Anthropic、Gemini、Azure、Bedrock、Mistral、そしてOllama経由のローカルモデルが使える。
  3. ユーザーの識別方法を決める。リクエストのcookie、JWT、OAuthトークンを読み取り、ユーザーIDと権限グループの一覧に変換するリゾルバを書く。
  4. エージェントが呼べるツールを登録する。クエリはRunSqlToolが担い、独自のツールはToolクラスを継承して作る。メール送信や社内APIの呼び出しなどが典型だ。
  5. チャットをページに置く。<vanna-chat>コンポーネントを任意のページに貼り、サーバーのストリーミング用エンドポイントを指定する。React、Vue、素のHTMLのいずれでも動く。
  6. 様子を見て調整する。最初の数日は監査ログを読み、権限グループを直し、質問とSQLの組をメモリに蓄積させる。定型の問い合わせはこれで回り始める。

AIツール情報

Vanna: Your AI Business Intelligence Assistantの料金、対応プラットフォーム、性能を簡単に確認できます。

無料プランはい
有料プラン$50 - $500/mo
プラットフォームWeb, Python library
開発元Vanna AI
カテゴリコーディング
リリース日May 2023
最終更新Feb 2026
サイト訪問数25.7K
サイト世界ランキング1M
API提供状況はい

こんな人におすすめ

このツールが最も力を発揮するユーザー、タスク、シーン。

ユーザー

  • データ基盤やプラットフォームのエンジニア:ツール登録、ライフサイクルフック、FastAPIやFlaskへの組み込みまで揃ったエージェントを、土台から自作せずに手に入れられる。その代わりスキーマの説明と権限設定に時間を割くことになる。
  • 非技術者が多いプロダクトチーム:アナリスト、運用担当、顧客担当がSQLを書かずに数値を引き出せる。行レベルのフィルタがあるので、各自の範囲からはみ出さない。導入自体は技術者が担う。
  • マルチテナントの管理画面を作るSaaS開発者:ユーザーリゾルバと個人別の割当で、多くのエージェント事例が飛ばしがちな分離をカバーできる。認証基盤は自前で用意する。
  • ホスティング型のSQLエージェントを求める小さなデータチーム:クラウドのプランならサーバーを持たずにチャット画面が使える。1日の質問数に上限はある。

タスク

  • 繰り返し発生する業務の問い合わせへの回答:「先週トライアルから課金に移ったのは何件か」といった問いはメモリに型として残り、2回目以降は素早く返る。未知の質問は調査に時間がかかる経路をたどる。
  • 営業チームへのダッシュボード提供:コンポーネントが表とPlotlyのグラフをストリーミングするので、商談前に自分で数字を用意できる。
  • 顧客による共通ウェアハウスの照会:所属グループがどの行を見られるかを決め、監査ログが全クエリを記録する。コンプライアンス確認にそのまま出せる。
  • 社内ツールへの検索窓の埋め込み:既存のcookieやJWTをそのまま使うため、2つ目のログイン画面を作らずに済む。

シーン

  • チケットを切らずに週次の数字を見る:マネージャーがチャットで聞いて表とグラフを受け取り、データチームに連絡する必要がない。
  • 外部顧客向けのデータ製品の構築:エンタープライズ版にはSAML SSOとユーザー管理用の管理APIが付く。外部に提供するときに足りなくなりがちな部分だ。
  • 大きなスキーマを検索可能な状態に保つ:実行が成功するたびにメモリが育つので、利用開始から数か月で精度は目に見えて上がる。

主な機能

クエリ単位のユーザー権限

リクエストに入った身元情報が、最後のクエリまで一貫して引き継がれる。リゾルバがそれをグループ付きのユーザーオブジェクトに変換し、ツールは実行前にグループを確認する。結果はさらに絞り込まれ、地域担当マネージャーには自分の担当地域の行しか見えない。単独ユーザー前提のフレームワークに後から足そうとすると、結局は書き直しになる。

エージェントメモリ

うまくいった質問とSQLの組は保存され、似た質問が来ると例として呼び出される。モデルの再学習もプロンプトの書き換えも不要で精度が上がる。メモリはプロセス内、ChromaDB、Pineconeから選べ、保存期間の要件に合わせられる。

ストリーミングするチャットUI

長い文章の塊ではなく、表、グラフ、要約の順にサーバーから送られ、<vanna-chat>が受け取るそばから描画する。SQLは既定で管理者にだけ表示され、一般ユーザーには見えない。画面はすっきりしたまま、回答の根拠は追える。

モデルもデータベースも固定しない

どちらの端でもベンダーに縛られない。サービスクラスを差し替えればOpenAIからAnthropicやOllamaのローカルモデルへ移れ、SQLツールは別のドライブに向けられる。SnowflakeやBigQueryをすでに使っているチームは移行の手間が省け、本番のtext-to-SQL案件で選ばれる理由もそこにある。

行レベルセキュリティと監査ログ

権限グループはSQL層まで届き、絞り込みは表示側ではなくクエリ側で行われる。すべてのクエリがユーザー単位で記録され、コンプライアンスの問いにも、数字が合わないときの調査にも使える。

独自ツールとライフサイクルフック

エージェントはSQLの実行だけに留まらない。ツールを定義し、アクセスグループを割り当てれば、エージェントが使うようになる。フックは各リクエストの外側に付き、割当の確認、ログ、内容フィルタを受け持つ。モデル用ミドルウェアはキャッシュとコスト把握を担う。SQLチャットボットと社内データアシスタントの差はここで生まれる。

自前運用とマネージド

オープンソース版はMITライセンスで、自分のインフラ上だけで動く。選んだモデル提供元に送る内容のほかは、ネットワークの外に出ない。サーバーを持ちたくないなら、クラウドプランとエンタープライズ導入で同じフレームワークをホスティング、サポート、高い上限付きで使える。

メリットとデメリット

メリット

  • MITライセンスなのでフォークも監査もでき、社内ネットワーク内で完結させれば席位課金は発生しない。
  • 成長の道筋がつながっている:自前運用、マネージドクラウド、オンプレのエンタープライズまで同じフレームワークで扱えるので、初期の作り込みが無駄にならない。
  • 権限と監査ログが設計に組み込まれている。デモ用エージェントに後付けするより数か月早い。
  • チャットUIは既製品で、React、Vue、素のHTMLに入る。フロントエンドはほぼ完成しているに等しい。
  • モデルとデータベースの接続先が主要な企業構成をカバーし、独自のコネクタを書く手間が省ける。

デメリット

  • 設定は開発者の仕事である。Python、データベースドライバ、身元確認の仕組みが揃うまで、最初の有用な回答は出ない。
  • 技術者がいない買い手には向かない。小さなマーケティングチームなら、チャット機能を持つホスティング型BIのほうが手軽だ。
  • 無料枠は狭い。Explorerは1日20問で、試すには足りるが、チームの日常利用には物足りない。
  • 複雑な結合や雑然としたスキーマでは今もつまずく。信頼できる結果を得るには、テーブル説明とサンプルクエリをしっかり用意する必要がある。

よくある質問

VannaはSQLデータベースを自然言語で照会するためのものだ。クエリを生成して実行し、表、グラフ、短い回答を返す。SQLの資格情報を配らずに、非技術者の同僚がウェアハウスを自分で調べられるようにする用途が多い。