
2026/07/19 6:06
Ada:CSV と Excel から読み込むAI系ビジネスインテリジェンスソフトウェア(LLM も含まれますが、それ以上の機能です)
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
ADA は、生データの CSV、XLSX、または XLSM ファイルを対話型の Plotly ダッシュボードに変換し、平易な英語で質問に答えるオープンソースの自動データ分析ツールです。その核心的な革新は、決定論的なローカル計算(pandas を使用)、すべての回答背後にある数学を暴露する監査可能なクエリ計画、ラベル付けされた解釈、および高度なシナリオ向けのオプトイン AI の 4 つの明示的なレイヤーを通じて厳格な信頼性を維持することにあります。特に重要なのは、感度が高いデータセットに対する主要なプライバシー懸念に対処し、生レコードデータがユーザーのマシンを離れることはありません(オプションの AI レイヤーが使用される場合のみ、カラムスキーマと計算されたエビデンスがモデルに送られる)。
すべてのインサイトは、隠された「ブラックボックス」的な推論ではなく監査可能なクエリ計画を含まれ、すべての異常値、ドライバー、予測、およびエビデンスは生成されたテキストの中に埋め込まれるのではなく、エビデンス台帳において完全に検査可能に保たれています。ユーザーは複雑なビジネスインテリジェンスツールを設定することなく、ファイルをアップロードして優先順位の次回のアクションを受取るだけで済みます。アーキテクチャは、決定論的なビジネスロジックとオプションの AI モジュール(例:ai_insights.py が OpenAI Responses API を使用)を明確に分離しており、エビデンスペイロードごとにキャッシングを行います。
ADA はデフォルトでモデル gpt-5.6-luna を使用し、不確実な決定には高い推論コストが伴うものの gpt-5.6-terra が利用可能です。どちらも秘密または API キーなしでローカルで使用でき、クエリプランナーのフォールバックと戦略的なナラティブ合成のためだけにキーが必要です。このプロジェクトは Streamlit を通じてシームレスな自己ホスティングを支援し、GitHub Actions を使用した堅牢な CI/CD 統合、単位テスト(pytest/unittest)、および linting(ruff)をサポートしています。MIT ライセンスの下でリリースされていますが、ホストされたパフォーマンスには予測可能なファイル制限と行の上限が適用されます。将来の開発では、決定論的な指標の拡大、Ask ADA の質問形状の改善、スキーマ検出フィキサチャの強化、チャートのアクセシビリティの向上、および敵対テストデータセットの組み込みを目指しています。透明性があり、プライバシーが守られ、実行可能なデータインサイトが必要な企業にとって、エビデンス台帳によってすべての発見事項を完全に検査可能に保つ ADA は、安全な代替手段を提供します。
本文
ADA: CSV および Excel から得られる AI によるビジネスインテリジェンス
ビジネスデータをアップロードし、ダッシュボード、その裏づけとなる証拠、そして次のアクションを取得しましょう。
ADA は、BI ツールを設定する必要なく答えを得る必要があるオペレーター向けに設計されたオープンソースの自動化データアナリストです。 以下の機能を提供します:
- CSV、XLSX、または XLSM ファイルをアップロードすると、それをクリーニングし、ビジネススキーマを検出します。
- Plotly を使用してインタラクティブなダッシュボードを作成します。
- 異常な期間をフラグ付けし、慎重なベースライン予測(フォアキャスティング)を行います。
- 重要な変化を説明し、次に調査すべき項目を推奨します。
- データに関する平易な英語の質問には、各回答に伴う計算式も提示して応答します。
シンプルなユースケースに特化しています:たとえ初回利用者があっても、スプレッドシートをアップロードしただけでビジネスにおいて何が起きているかを理解できます。
ADA の主な動作
- ADA の動作を見る
- ビジネス上の質問を行う。数値とその計算式を取得します。
- セグメントに焦点を当てる。分析が自動的に再グループ化される様子を観察してください。
なぜ ADA は異なるのか
異常検知、予測、ドライバー(要因)、および証拠は、生成された文章の背後で消えてしまうのではなく、点検可能な状態で保持されています。製品背后的なアーキテクチャや失敗モードについては、「AI データアナリストを構築し、それがハルシネーション(虚偽)を起こすタイミングを知らせる仕組み」をご参照ください。
ADA は 4 つの層を明確に保ち続けています:
| 層 | 機能 | 信頼の範囲(トラスト境界線) |
|---|---|---|
| Calculation(計算) | トレンド、ドライバー、異常、集中度、関係性、例外、およびデータ品質を検出します。 | 決定論的かつ追跡可能 |
| Conversation(対話) | 平易な英語の質問を、ローカルで実行可能な監査可能な pandas クエリ計画に変換します。 | 全ての回答にその数学的根拠が表示されます |
| Interpretation(解釈) | 計算結果を優先順位のついた調査項目へと変換します。 | 明確なラベル付けあり;因果関係の証明ではありません |
| Optional AI(オプションの AI) | ルールで読めないクエリを計画し、計算された証拠に対する戦略的な読み物を執筆します。 | オプション機能;アップロードされた元の行データは決して送信されません |
すべての証拠カードとチャット回答は、その背後にある計算式を暴露しています。モデルが設定されているかどうかに関わらず、決定論的な製品自体が権威ある結果を提供し続けます。
他社製品との比較
| 機能 | Chat-with-CSV AI ツール | 従来の BI | ADA |
|---|---|---|---|
| セットアップ | アップロードとプロンプト入力のみ | データモデリング、数週間かかる場合あり | アップロードのみで十分 |
| 回答内容 | 説得力のある文章だが、論理は隠蔽されている | 正確だが、全てのチャートを手動で作成する必要がある | 数学式を示した決定論的な計算結果 |
| モデルに送信される行数 | 通常必要 | ベンダーによります | 決して送信されません — オプションの AI はスキーマと証拠のみを確認します |
| 異常検知と予測 | 要請時に、検証不可能 | 有料アドオン | 組み込まれており、検証可能なバックテスト誤差が表示されます |
| コスト | サブスクリプション | ライセンス費用 | 無料であり、MIT ライセンス済み |
アーキテクチャ
プロジェクトの各ファイル役割は以下の通りです:
: ストライトムの薄いオーケストレーションとセッション状態の管理app.py
: 範囲に限定された事前処理、クリーニング、スキーマ選択、ドリルダウン、および監査フレームワークpipeline.py
: 慎重なクリーニングとデータプロファイリングanalysis.py
: スキーマ検出、計算、証拠、および決定論的な推奨事項の生成business_insights.py
: 自然言語の質問 → 監査可能なクエリ計画 → ローカルでの実行nlq.py
: 期間集計値に対する堅牢なトレンドライン異常検出anomalies.py
: シーズナリティを考慮した慎重なベースライン予測、および可視化されたバックテストforecasting.py
: オプションのタイピングされた Responses API クエリ計画と証拠合成ai_insights.py
: 再利用可能なプレゼンテーションコンポーネントと Plotly スタイル定義ui.py
: ワークシート選択機能付きの検証済 CSV と Excel パーシングfile_io.py
: ユニットテスト、プライバシーカートラクト、パイプラインテストなどtests/
コードベースでは、純粋な分析関数とモデル境界における依存性注入を重視しています。これにより、Streamlit やネットワークアクセス、API クレジットを使用しなくても、ビジネスエンジン自体をテスト可能に保つことができます。
ローカルでの実行
プロジェクトを開始するためのコマンドは以下の通りです:
git clone https://github.com/saineshnakra/automated-data-analyst.git cd automated-data-analyst python -m venv .venv source .venv/bin/activate # Windows の場合は: .venv\Scripts\activate python -m pip install -r requirements.txt streamlit run app.py
秘密鍵(API キー)は必須ではありません。訪問者は、セッション専用のサイドバーフィールドに独自の API キーを入力できます。信頼できるプライベートなデプロイメントの場合は代わりに、環境変数または
.streamlit/secrets.toml に OPENAI_API_KEY を設定します:
# .streamlit/secrets.toml OPENAI_API_KEY = "your-key"
このファイルは決してコミットしないでください(既に無視設定されています)。パブリックなデプロイメントに、所有者資金のキーを置く場合は、認証と支出管理制御も追加することをお勧めします。
テストおよび開発環境での実行
開発環境の設定手順は以下の通りです:
python -m pip install -r requirements-dev.txt ruff check . python -m unittest discover -s tests -v
GitHub Actions は、すべてのプッシュとプルリクエストごとに linting、完全なテストスイート、およびバイトコードのコンパイルを実行します。
製品機能
- ゼロ構成の CSV および Excel アナリティクス:含まれる合成デモ付き。
- Ask ADA:平易な英語での質問に対し、計算式を示してローカルで回答します(集計値、ランク付け、細分化、トレンド、成長、カウント、時間およびセグメントフィルタ)。
- 異常レーダー:ロバストなトレンドラインバンドの外側に位置する期間が、チャート、証拠レジャー、および推奨アクションにフラグ付けされます。
- 慎重なベースライン予測:月間シカリティ(季節変動)、不確実性バンド、およびチャートの隣に表示されたバックテスト誤差を備えた予測。
- ドリルダウン焦点:セグメント値を分析し、自動的に次の有用な次元で再グループ化します。
- Movement waterfall:セグメント別の最新変化の照合と、セグメント別期間ごとの強度ヒートマップ。
- ワークシート選択器:マルチシート Excel ワークブックからの特定ワークシートの選択。
- 慎重なクレンジング:型推論、重複除去、および可視化されたクリーニング監査。
- 役員向けハイライン:4 つのビジネス KPI と平易な英語によるブリーフィング。
- 証拠レジャー:表示されるシグナルの背後にある計算式付き。
- 優先順位のついた推奨事項:決定論的な証拠にリンクされています。
- オプションの AI クエリプランナー:OpenAI Responses API を使用した構造化された戦略合成。
- ダウンロード可能な Markdown 役員向けブリーフィング とクレンジ済 CSV。
- 非技術ユーザー向けレスポンシブな Streamlit インターフェース。
- ホストパフォーマンスの予測性を高めるためのファイル制限と行数キャップ。
プライバシーおよびモデル設計
ADA は API キーなしで完全に動作します。決定論的なモードでは、モデルへの呼び出しは一切行われません — 「Ask ADA」の回答のうち、ルールベースパーサー自身が計画できる全ての回答も同様です。
キーが存在する場合、2 つの狭いモデル呼び出しが利用可能になります。両方ともタイピングされており、同じローカルエンジンに対して実行されます:
-
クエリプランナー
- 決定論的なパーサーで質問を処理できない場合にのみ使用されます。
- 列スキーマ(名前、型、役割)と質問自体を受け取り、タイピングされた QueryPlan を出力します。
- AI による計画された回答は可視化されたバッジで表示されます。
-
戦略的読み物
- カルキュレーションされたスキーマ、サマリー、証拠カード、推奨事項、およびユーザーが提供するコンテキストのみを受信します。
いずれの呼び出しも、アップロードされた行データやセル値をモデルプロンプトに含めません。
- レスポンスはタイピングされた Pydantic スキーマと一致しなければなりません。
- リクエストに対するストレージは無効化されており、安全制御のためにハッシュ化された匿名セッション識別子が使用されます。
デフォルトのモデルは
gpt-5.6-luna であり、効率的な戦略的読み物のために低い推論レベルを使用します。決定が曖昧でより高いコストを正当化する場合、中程度の推論を持つ gpt-5.6-terra も利用可能です。モデル呼び出しはボタントリガー式であり、証拠ペイロードごとにキャッシュされるため、偶発的な支出を防ぎます。
完全なデータ処理および秘密管理ポリシーについては、SECURITY.md をご参照ください。
FAQ
私のデータは外部に送られますか? いいえ。クリーニング、スキーマ検出、全てのチャート、全ての証拠カード、「Ask ADA」の回答は全て pandas を使用してローカルで計算されます。AI レイヤに参加した場合でも、送信されるのは列スキーマと計算された証拠のみであり、行データやセル値は一切送信されません。
OpenAI API キーが必要ですか? はい不要です。ADA はキーなしでも完全なアナリストとして機能します。キーは、異常な質問に対するクエリプランナーのフォールバックと戦略的なナラティブを追加するだけであります。
どの形式を分析できますか? CSV(カンマ、セミコロン、またはタブ区切り)、XLSX、および XLSM — マルチシートワークブックからの特定ワークシートの選択を含む — をサポートします。
チャットボットに CSV を貼り付けるのとどう違いますか? チャットボットは監査できない流暢な文章を提供し、あなたの行データがプロンプトの一部になります。ADA は質問を明確なクエリ計画に変換し、pandas を使用してローカルマシンの上で実行し、各回答の下に計算式を表示します。
自分でホストできますか? はい — スタンダードな Streamlit アプリです。
pip install -r requirements.txt && streamlit run app.py で実行するか、Python が動作する任意のホストにデプロイできます。
貢献
貢献を歓迎しています。特に以下の分野での貢献を期待しています:
- 新しい決定論的なメトリクス
- Ask ADA のための質問形状
- スキーマ検出のためのフィクチャ(テストデータ)
- チャートのアクセシビリティ
- ファイル形式
- 悪意のあるテストデータセット
「Good first issues」から始め、
CONTRIBUTING.md を読み、ロードマップから項目を選択するか、焦点を絞った提案を開発してください。
優れた貢献は、インサイトをもっと正確にし、説明可能にし、非技術ユーザーが行動しやすくします。各新しい推奨事項には、テストとその推奨を支持する計算式が含まれるべきです。
ADA が役に立つ場合は、他のオペレーターが見つけるために星(Star)をつけてください。
デプロイ
app.py を Streamlit 上でデプロイします。リポジトリにはアプリテーマ、依存関係マニフェスト、サーバーアップロード制限、ヘッドレス設定が含まれています。オプションの戦略レイヤを有効にする場合に限り、Streamlit の秘密マネージャーを通じて OPENAI_API_KEY を追加してください。
ライセンス
MIT