本文へ
ハクソク

世界を動かす技術を、日本語で。

チャット用に作られたチャート

元記事: 原文(dbtcharts.com)

概要

  • dbt Charts は、ダッシュボードを宣言的に記述する新しい オープンソース言語 として公開
  • AIエージェントによる分析自動化 と ガバナンス の両立を実現
  • YAMLとSQL でダッシュボード全体を一元管理、監査や拡張が容易
  • dbtとの深い統合 により、モデルとチャートの同時管理やCI自動化をサポート
  • dbtCharts.com でホスティング、アクセス制御、会話型分析なども提供

dbt Charts:宣言的ダッシュボード言語のオープンソース化

  • dbt Charts の公開により、ダッシュボードを YAMLファイル 一つで宣言・管理
  • AIエージェント が生成したダッシュボードも 一元的にガバナンス 可能
  • HTML/CSS/JS など複数ファイルに分かれる従来手法の煩雑さを解消
  • SQLでデータ取得、 YAMLでビジュアル表現 を記述する設計
  • Markdown で説明文、 Jinja で変数やマクロも利用可能
  • CLIツール でSVG/HTML/PNG/PDF/ターミナル出力やWebサーバー化に対応
  • 1,100以上の設定項目、16種類のチャートタイプ、テーマ継承やレイアウト拡張もサポート
    • スタイルの継承 や ボードの拡張 で、標準レポートやハウススタイルを簡単に再利用

BIのアンバンドルとdbt Chartsの位置付け

  • 従来の BIツール はフルスタックで、データ取込・変換・計算・可視化を一括管理
  • モダンデータスタック の登場で、各レイヤーが専門ツールに分離
    • Fivetran によるデータ取込、 dbt による変換、 Big 5 による計算
  • BIツールは 可視化・インタラクティブ分析・セマンティック定義・認証管理 などに特化
  • 今後は チャート生成の主役が人からAIエージェントへ と移行
    • エージェントは コード・SQL・Git に強く、UI操作は不得手
  • チャートのコード化 で、AIとの親和性とガバナンス性を両立

dbtとの深い統合

  • dbtプロジェクト 内で models/ と隣接する charts/ ディレクトリにチャートを管理
  • モデル修正とチャート修正 を 同一ブランチ・CIパイプライン で一括運用
  • ref() でモデル参照、 manifest から自動解決、変更があれば PRでエラー検出
  • dbt Semantic Layer 対応予定、メトリクス定義をSQL再記述なしで利用可能

チャットエージェント向け設計

  • YAML/SQL/ビジュアルの厳格なバリデーション で、AIエージェントの出力品質を担保
  • 視覚化チェック でレイアウトや表現の問題を事前に警告
    • 例: 帯グラフの幅不足、 テーブルのカラムオーバーフロー など自動フィードバック

美しい一貫性のあるチャートシステム

  • RJ Andrews (データビジュアライゼーション専門家)による デザイン監修
  • スペース、サイズ、レイアウト を徹底設計、カードやボックスによるノイズを排除
  • 現代BIより一段上の統一感と美しさ を実現

dbtCharts.com:ホスティングと会話型分析

  • dbtCharts.com で ホスティング・アクセス制御・UI・会話型分析 を提供
  • ウェアハウス と接続し、 会話型分析・ビジュアルエディタ・バージョン管理・共有 を実現
  • Gitリポジトリ上のYAML が単一ソース、 ロックインなし でどこでも同じボードを利用可能
  • ClaudeやChatGPT のような会話型インターフェースで分析、途中からエディタで微調整も可能

dbt Chartsの導入とコミュニティ

  • Apache 2.0ライセンス のオープンソース、ローカルで自由に利用可能
  • CLIで簡単インストール :uv tool install dbt-charts
  • GitHub(github.com/dbt-labs/dbt-charts) と 公式ドキュメント(docs.dbtCharts.com) を公開
  • dbt Community Slack の #dbt-charts チャンネルで議論・フィードバック受付
  • バージョン0.x段階 で頻繁に仕様変更あり、ボードは自動マイグレーション対応
  • ベータ版の試用・意見募集、オープンなチャートレイヤー構築への参加呼びかけ

提供: ハクソク · 要約更新:

AIによる日本語要約です。内容は原文とあわせてご確認ください。

Hacker Newsの議論を読む

Hackerたちの意見

こんにちはHN、私はChartioの創業者デイブです(YC'10、今はアトラシアンアナリティクス)。今日はdbt Chartsを発表します。これはオープンソースのYAML方言とダッシュボードを宣言・レンダリングするツールです。claudeや他のエージェントを使ってダッシュボードを作ると、監査やスケールが難しい自由形式のアーティファクトがたくさんできちゃうんですよね。dbt Chartsは、チャートを宣言・レンダリングするシンプルなYAML方言です(ダッシュボード用のマークダウンみたいな感じ)。dbtと一緒にApache 2.0で、今日からスタートです。この言語とAIが、ダッシュボードを簡潔で監査可能なコードにして、BIの世界をもっとオープンにする手助けになることを願っています。ぜひ感想やフィードバックを聞かせてください!

└

発表おめでとう、デイブ!業界標準に挑戦する人が誰か気になっていました。広く採用されることを願っています。

これ、めっちゃいいですね。「BIのアンバンドリング」は、もっと多くの人がエージェントやコーディングエージェント、エージェントコンピュータを使うようになってきた今、まさに向かっている方向だと思います。知識作業ツール全体でこれが進んでいるのを見ています。最近、メールをBIの問題として扱うようになりました。GmailからETLして、いろんなビューやレポートを作成しています。ここにその考えを書いたので、見てみてください:https://housecat.com/blog/making-gmail-data-fast-for-humans-... このデータをチャットでどうやってより良く可視化するかが自然な次のステップですね。DBTのテーブルコンポーネントが役立ちそうです:https://docs.dbtcharts.com/charts/tables/

└

わお、https://github.com/dbt-labs/dbt-charts は素晴らしいチャットユーザー/エージェントコーディング体験がありますね。> dbt Chartsでこれを使ってチャートを作成します。まずは:uv tool install dbt-charts && dct skills intro > > 私の採用受信ボックスのダッシュボードを作成:候補者の名前/メール/ロケール、応募の質、応答の年齢 一発で作るダッシュボードが意外と良いです。

└

これ、めっちゃいいですね。 > 「BIのアンバンドリング」は、もっと多くの人がエージェントやコーディングエージェント、エージェントコンピュータを使うようになってきた今、まさに向かっている方向だと思います。 そうですね。bento[0]と組み合わせれば、スライドデッキ用のこのタイプのプロジェクトは非常に歓迎される発展だと思います。囲い込みや独自のソフトウェアスイートから離れる手助けになりますね。 [0] https://github.com/nyblnet/bento

└

データを可視化する理由は何ですか?グラフやチャートは、数学の授業での「作業を見せる」みたいなもので、強制的な共感覚のように感じます。ロケットは着陸するかしないか、期待通りに安全に着陸するかです。緑と赤のライトは抽象的なデータプロットです。文脈が焦点であるべきです。「ロケットは0.2/mps未満で着陸しなければならない」とその文脈フィルターにデータを流し込む、もっと減速、少なければ緑のライト。

いいけど、実際よりも革新的だと見せかけてる感じがする。BIはすでに他のすべてから切り離されているし、人々はAIを使ってExcelやPower BIのレポートを生成している。YAML/XML/JSONは関係ない。AIは指示されたことを何でも生成できるからね。だから、dbtの良い発展だけど、ブログ記事が言いたいほど革新的ではないと思う。それでも、特定のサークルでは人気が出るアイデアだと思います。プロのデータデザイナーを雇うのは良いアイデアだね。データビジュアライゼーションは間違いやすいから。

└

AIは確かに指示されたことを何でも生成できるけど、そのアーティファクトをその後どうするかが問題だよね。再利用可能にするには、きちんと定義された構造的なプロトコルや言語が必要だよ。もしチャートを説明するYAMLがあっても、それをエージェントに返して「これを読んでチャートを作って」と言うだけなら、最初に得たチャートとは全然違う結果になるよ。

└

同意すると思うけど、デイブがデータビジュアライゼーションのパラダイムシフトだと言ってるのはどこなんだろう?実際のところ、彼の主張の一つは、BIツールが流行する前の古い確立されたビジュアライゼーションパターンに基づいているから、常に素敵なチャートが得られるってことなんだ。もう一つの主張は、シンプルでメンテナンスしやすいってこと。時には、ツールやプロダクトは、既知のデザインスペースでうまく実行されたポイントとして役立つこともあるよね。これらはAIで全部できるけど、少しだけ使い勝手が悪くてメンテナンスも大変かも。[私はdbt/Fivetranで働いています]

すごい!このアイデアについて考えてたんだけど、vega-liteが面白いアプローチだと思ったよ。[0] これをセットクでアプリ生成に組み込むことを比較してみるつもり。今のところ、アプリはただのHTMLの塊で、あなたのClaudeが作成したものと、ライブデータを埋め込むための仕組みだけ。監査は難しいけど、オペレーターが内部アプリをClaudeで組み合わせるのにはかなり柔軟性があるね。とにかく、チャートはまあまあだけど、作成するモデルによってかなり依存するし、スタイルガイドに従ってるわけじゃない(例: https://demo.setoku.com/apps/a7a1240ae0bc202c5eefa1cc)。あなたのライブラリが一貫性をもたらして、グローバルスタイリングを可能にするかもね。[0]: https://vega.github.io/vega-lite/ [1]: https://setoku.com

面白いけど、Observable Framework(https://observablehq.github.io/framework/)とどう違うのかはよくわからないな。あっちの方がMarkdownとJSを使えるから好きなんだよね、YAMLとテンプレートで定義された言語よりも。

└

すぐに思いついたユースケースは、dbtチャートをMCPアプリのレンダリング方法として使うことだった。Observable FrameworkみたいにLLMクライアントにコード実行環境を与えたくないからね。dbtチャートは、データソースに送信されるSQLを含む全てのYAML入力を検証するみたい。だから、LLM/MCPクライアントを通じて動的に定義されてレンダリングできるデータビジュアライゼーションレイヤーが得られるってわけ。JSランタイム環境のサンドボックス化の面倒もないし。

Hacker Newsで議論の続きを見る