2025/05/29

Tableau LangChain: Tableau Server または Cloud 環境を拡張する柔軟性の高い AI アプリケーションの構築

AI を Tableau に統合し、信頼できるデータを使用して安全な AI エージェントとアプリを構築する方法をご確認ください。その構築に使用できるのが Tableau LangChain です。

Tableau LangChain は、Tableau のお客様が AI エージェントとアプリケーションを構築できるように設計されたオープンソースプロジェクトです。それらのエージェントとアプリケーションは、セキュリティ境界内で実行され、お客様が選択したモデルとモデルプロバイダーを活用し、お客様が選択した Tableau Server に接続することができます。Tableau LangChain を使用すると、Tableau 内の信頼されているデータを AI アプリケーション内で活用できるとともに、AI 機能を Tableau 製品に統合することができます。

主なメリット:

  • 構成可能: 固有のセキュリティおよび IT の制約に準拠します。
  • 柔軟: 選択したモデルを持ち込むことができます (ローカルにホストされているものかサードパーティープロバイダーからのものかは問いません)。
  • オープン: 既存のツールを基に構築し、#DataFam と連携して、改善点をコミュニティに還元します。

Tableau LangChain とは

Tableau_langchain により、LangGraph フレームワークで動作するように設計された Python クラスとメソッドのコレクションが実装されます。これらのクラスとメソッドは Tableau の API を Python 関数でラップし、LangChain と LangGraph 内で活用できるツールになります。

これは、AI エージェントや LLM が Tableau データと直接対話できるようにするツールキットのようなものだと考えることができます。たとえば、LangGraph 構文を使用して simple_query_datasource メソッドを実装することで LangGraph エージェントを簡単に作成し、VizQL データサービスツールを使用して、Tableau で公開されたデータソースにクエリできます。その他のツールには、search_datasource and get_pulse_insight があります。 

Tableau と LangChain の統合の詳細については、リード開発者でありコントリビューターでもある Joseph Fluckiger のブログ記事「Unleashing Tableau’s Semantic Layer with AI Agents (AI エージェントによる Tableau のセマンティックレイヤーの解放)」をご覧ください。

ツールは、AI エージェントの重要なコンポーネントです。それらによってエージェントは、LLM からの標準的な応答の範囲を超えるタスクを実行できるようになるからです。たとえば、ChatGPT の Deep Research 機能を試したことがあれば、ChatGPT が Web 検索をツールとして使用してより多くの情報を取得し、質問に対してより高品質で正確な回答を導き出しているのをご存じのはずです。

同様に、search_datasource および simple_datasource_qa ツールにアクセスできる LangGraph エージェントを構築すると、LLM は Tableau Server 上のデータソースを検索してクエリを実行できるようになります。Tableau Conference 2025 では、ダッシュボードユーザーが新しいデータを取り込む方法としてこのデモンストレーションを行いました。エージェントは、「オリンピックに関するデータはありますか?」というクエリの場合はデータソースを検索するツールを呼び出し、それに続くクエリ「国別のメダル数の内訳を出せますか?」についてはクエリデータツールを呼び出し、ダッシュボード拡張機能を介してデータを返します。

Tableau LangChain はコミュニティパートナーシップであるため、Tableau の開発者はコミュニティメンバーと協力して、エージェントツールと AI アプリケーションを構築し、開発しています。

Tableau Conference 2025 で取り上げられた例は次のとおりです。

  • ダッシュボードの拡張機能: 参照元データを動的にクエリして、ダッシュボードのデータに関するアドホックな質問に答えます。
  • ベクトル検索: セマンティックに関する理解を使用した、強化された検索機能です。たとえば、「ヘルスケア」を検索すると、「NHS 処方箋」に関するデータが取得されます。
  • レポートライター: データソースを分析し、データに関するレポートをローカルファイルに書き込むエージェントです。
Video Player is loading.
Current Time 0:00
Duration 0:00
Loaded: 0%
Stream Type LIVE
Remaining Time 0:00
 
1x
    • Chapters
    • descriptions off, selected
    • subtitles off, selected

      このプロジェクトは GitHub で公開され、LangChain への統合に関する規則に従って、langchain-tableau の下の PyPi レジストリに公開されます。

      Tableau LangChain の仕組み

      LangChain は、メタデータ API、Pulse REST API、VizQL データサービスなどの既存の Tableau API を活用することで、AI モデルが Tableau データと正確なインタラクションができるようにします。

      • メタデータ API: Tableau Server または Tableau Cloud 上のコンテンツを識別し、AI モデルに重要なコンテキストを提供します。これにより、利用可能な列とデータ構造を理解することで、クエリの正確性が保証されます。
      • Pulse REST API: トレンド分析、主要な推進要因、メトリクスの変化への貢献度に直接アクセスすることで、AI モデルのインサイト生成を効率化します。この統合により、一貫性のある効率的で正確な応答が可能になります。
      • VizQL データサービス (VDS): ビジュアライゼーションを必要とせずにプログラムによって Tableau データソースへのアクセスを提供します。これにより、自然言語クエリをプログラムによって正確なリクエストに変換することで、AI モデルがデータを直接取得できるようにします。

      これらの API を組み合わせると、Tableau からの信頼できるデータを使用して、ユーザーにとってまったく新しいエクスペリエンスを生み出すことができます。以下の例では、プロジェクトの主任開発者である Stephen Price が、チャットモジュールが組み込まれた Web サイトを構築したものです。ユーザーは AI に対してクエリを実行でき、メタデータ、Pulse、および VizQL データサービス API から取得した応答が表示されます。Embed Tableau でお試しください。


      Tableau LangChain を使い始めるにあたって

      Tableau Conference のハンズオントレーニングノートブックから始めることを強くお勧めします。ここでは、ローカルマシンで開発環境を準備する方法について詳しく説明しています。

      これらのノートブックを操作するには、Tableau Cloud または Tableau Server 2025.1 以降を使用することをお勧めします。この環境なら、VizQL データサービス API にアクセスでき、ノートブック 3 に示されているように Tableau データソース Q&A ツールを使用できます。Tableau Developer Program を使用すると、これらのノートブックを操作するのに最適な Tableau Cloud サンドボックス環境にアクセスできるようになります。

      次に、環境変数の .env ファイルを構成します。これらは、Tableau プラットフォーム上のコンテンツにアクセスするために使用されるキーです。.env.template ファイルを使用して、以下を更新する必要があります。

      • OPENAI_API_KEY: これは OpenAI の開発者ポータルから LLM を呼び出すための API キーです。
      • LANGCHAIN_API_KEY: AI エージェントの応答を追跡するための、LangSmith の APIです。
      • Tableau 環境内にあるすべてのもの: 接続済みアプリを作成し、Tableau Server または Tableau Cloud 環境上のデータソースの LUID (識別子) を見つける必要があります。

      データソースの LUID を見つける

      • Tableau Server/Cloud の左側メニューで [外部アセット] に移動します。
      • 画面の右上にある [クエリ メタデータ (GraphiQL)] をクリックして GraphQL インターフェイスに移動します。
      • 次の GraphQL クエリを入力すると、「Superstore」という名前のソースが検索されます。左上の再生ボタンを押してこのクエリを実行し、LUID を .env ファイルに記録します。検索クエリを変更すれば、興味のあるデータソースを検索できます。

      query Find_Datasources_LUID {

      tableauSites {

          name

              publishedDatasources(filter: { name: "Superstore"}) {

                  name

             projectName

                  description

                  luid

                  uri

                  owner {

                  username

                  name

                  email

                  }

                  hasActiveWarning

                  extractLastRefreshTime

                  extractLastIncrementalUpdateTime

                  extractLastUpdateTime

              }

          }

      }

      これで準備完了です。

      • [ノートブック 1] を実行して環境の準備ができていることを確認します
      • [ノートブック 2] は、オープンソースの LangChain と LangGraph フレームワークの概要を示しています
      • [ノートブック 3] では、選択したデータソースに対して Tableau データソース Q&A ツールを実行できます
      • [ノートブック 4] では、LangChain コミュニティのツールを使用してレポートライティングエージェントを作成する方法を示しています
      • [ノートブック 5] は、Slack LangChain ツールを使用して Slack との統合を作成するのに役立ちます

      Tableau LangChain コミュニティにご参加ください

      Tableau LangChain プロジェクトは、Tableau とコミュニティによるイニシアティブです。このプロジェクトは、コミュニティのコラボレーションと、直面している問題の理解によって進展していきます。さらに詳しく知るには、AI アプリケーションの構築を開始し、プロジェクトに参加してください。

      Tableau LangChain で皆様が何を生み出すのか、楽しみにしています。今すぐ参加して、Tableau Server と Tableau Cloud の AI 機能を拡張しましょう。