コード不要!AIがSQLとグラフを自動生成するGenBIツール入門


コード不要!AIがSQLとグラフを自動生成するGenBIツール入門

Canner/WrenAI

2025-08-29

WrenAIは、以下のような点で、ソフトウェアエンジニアの助けになります。

WrenAIを使えば、SQLのクエリを手動で書く必要がなくなります。自然言語で「先月の売上トップ10の顧客を教えて」と入力するだけで、適切なSQLクエリが自動生成されます。これにより、単純なデータ抽出やレポート作成にかかる時間を大幅に削減できます。

新しいプロジェクトやサービスで、データベースのスキーマや内容がまだ頭に入っていない場合でも、WrenAIが強力な味方になります。たとえば、「ユーザーテーブルの登録日ごとのユーザー数をグラフにして」と頼めば、テーブル構造を完璧に把握していなくても、瞬時にグラフが生成されます。

WrenAIは、SQLクエリだけでなく、グラフ(Text-to-Chart)の生成も可能です。これにより、BIツールや可視化ライブラリのコードを書く手間が省けます。特定のデータセットを可視化したいとき、複雑な設定をすることなく、すぐにグラフを作成できます。

WrenAIの導入は、いくつかのステップで行います。まず、Pythonのパッケージとしてインストールし、接続したいデータベースの認証情報を設定します。

pip install wrenai

この例では、BigQueryに接続する設定をします。認証情報を含むJSONファイル(credentials.json)を用意してください。

import os
from wrenai.database import BigQueryDatabase

# サービスアカウントキーのJSONファイルへのパスを設定
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "/path/to/your/credentials.json"

# BigQueryのデータベース接続を初期化
db = BigQueryDatabase(
    project_id="your-gcp-project-id",
    dataset_name="your-dataset-name"
)

次に、データベース接続とLLM(大規模言語モデル)のAPIキーを使って、エージェントを初期化します。ここでは、GoogleのLLMを利用する例を示します。

from wrenai import Agent

# Google AI Studioから取得したAPIキーを設定
os.environ["GOOGLE_API_KEY"] = "your-google-api-key"

agent = Agent(db=db)

これで、WrenAIを使う準備ができました。

架空のラーメン店「麺屋エンジニア」のデータベースを使って、WrenAIがどのように役立つかをコント形式で見てみましょう。

状況

ラーメン屋の店主「ラオウ」(本当はソフトウェアエンジニア)は、お客さんがどのメニューをよく注文しているか知りたがっています。

コード

# 自然言語で質問
query = "各ラーメンメニューの総売上を、売上が高い順に並べて。"

# WrenAIにSQLクエリを生成させる
sql_query = agent.generate_sql(query)
print("--- WrenAIが生成したSQL ---")
print(sql_query)

# WrenAIにデータを実行させて、結果を取得
results = db.run_query(sql_query)
print("\n--- ラーメンの売上ランキング ---")
print(results)

WrenAIが生成するSQLの例

SELECT
  menu_name,
  SUM(price) AS total_sales
FROM
  orders
GROUP BY
  menu_name
ORDER BY
  total_sales DESC

ラオウの一言

「SQLを手で書かなくても、勝手にやってくれるなんて…!これで、ラーメン作りに専念できるぜ!」

状況

ラオウは、どの年代の顧客が一番多いのかを知りたくなりました。

コード

# 自然言語で質問
query = "顧客の年齢層別の顧客数を円グラフにして。"

# WrenAIにグラフを生成させる
chart = agent.generate_chart(query)
chart.save("customer_age_chart.html")
print("顧客の年齢層別データが、円グラフとして customer_age_chart.html に保存されました。")

ラオウの一言

「グラフまで自動で!?これはすごい!若いお客さんが多いのか、それともご年配が多いのか、一目でわかる!」

状況

ラオウは、売上データから何か新しい発見がないか、AIに尋ねてみることにしました。

コード

# 自然言語で洞察を求める
query = "最近の売上データから、何か面白い傾向や洞察を教えて。"

# WrenAIに分析と洞察を生成させる
insights = agent.generate_insights(query)
print("\n--- AIによるラーメン店の洞察 ---")
print(insights)

WrenAIからの返答(例)

「分析の結果、以下の洞察が得られました。

週末のランチタイム(12
00〜14
00)に、特に「特製つけ麺」の注文が急増しています。

雨の日は、「辛味噌ラーメン」の注文が増える傾向が見られます。

過去1ヶ月で、新規顧客の再来店率が上昇傾向にあります。」

ラオウの一言

「なるほど!雨の日に辛いものが食べたくなるのか…!よし、雨の日限定メニューを開発しよう!AI、ありがとう!」


Canner/WrenAI




セキュアなAI部隊を最速デプロイ!Amazon Bedrock Agentcore 実践ガイド

よし、兵士諸君!これより、AWSが公開している強力な武器、「amazon-bedrock-agentcore-samples」についての偵察報告と運用計画を説明する。これは単なるコードの集まりではない。生成AIエージェントを戦場(本番環境)で確実に、そして安全に運用するための「標準装備一式」だ。気合を入れて聞け!


【エンジニア向け】LLMを爆速で操る!dair-ai/Prompt-Engineering-Guide徹底攻略

まず、このガイド、ヤバいぞ。一言で言えば、「デカい言語モデル(LLM)を思い通りに動かすための裏ワザと基本が詰まった秘伝の書」だ!テメェがソフトウェアエンジニアなら、最近のアプリ開発で、AIチャットとか、文章生成、コード補完、データ分析の要約とか、LLMを使う機会が増えてるだろ?でも、適当に指示(プロンプト)出しただけじゃ、LLMはヘボい答えしか返してこねぇ。


AIの知性を飛躍させる「MemoriLabs/Memori」入門:記憶の保存と検索のアーキテクチャ

ご提示いただいたオープンソースの記憶エンジン「MemoriLabs/Memori」について、ソフトウェアエンジニアの視点から、その有用性、導入方法、そしてサンプルコードの例を、コントのお化け屋敷のように面白おかしく、しかし技術的に分かりやすく解説しますね!


【実録】LobeHub導入ガイド:MCP対応エージェントで開発体験を劇的に変える方法

正直なところ、LLM(大規模言語モデル)を仕事で使うとき、「ブラウザのチャット画面とエディタを行き来するのが面倒だな」とか「自分専用の最強アシスタントをサクッと作りたいな」と思ったことはありませんか?LobeChatは、まさにその「痒い所に手が届く」エンジニア垂涎のツールなんです。


Umami入門: エンジニアのためのモダンなウェブ解析ツール

Umamiは、Google Analyticsに代わる、プライバシーに配慮したモダンなウェブサイト解析ツールです。ソフトウェアエンジニアの視点から見ると、Umamiは単なるアクセス解析ツール以上の価値を提供します。Google Analyticsのような既存のツールは、非常に多機能な一方で、データの収集方法やプライバシー保護の観点から問題視されることがあります。特に、GDPR(EU一般データ保護規則)やCCPA(カリフォルニア州消費者プライバシー法)などの法規制が厳格化する中、ユーザーの同意なしにデータを収集することはリスクとなります。


現場で鍛えるAIエージェント!OpenPipe/ARTでマルチステップタスクを自動化

OpenPipe/ARTは、まるで熟練のシェフを育てるかのように、マルチステップのエージェントを実世界のタスクで訓練するための強力なツールなんです。特に、大規模言語モデル(LLM)のようなエージェントに「現場でのOJT(On-the-Job Training)」を施すことができるのが大きな特徴です。


現役エンジニア魔法少女が解説する「バイトボット」入門

今日は、最強の魔法ツール「バイトボット」について、ソフトウェアエンジニアの視点から、その秘密と使い方を特別に教えちゃうよ!バイトボットは、あなたのパソコンを自動で動かしてくれる、賢い魔法の使い魔みたいなもの。物語の始まりは、いつも忙しいソフトウェアエンジニアの魔法少女。バグ退治や新しい魔法の開発で毎日てんてこまい。


LLM開発を劇的に効率化!Unsloth AI がもたらす GPU メモリ70%削減の衝撃

unslothai/unslothは、大規模言語モデル(LLM)のファインチューニングと強化学習を超高速で行うためのライブラリです。「ファインチューニングって、GPUメモリを大量に消費して、時間もかかるし、もううんざりだ. ..」そう思っていませんか?私も同じです。しかし、unslothを使えば、その悩みが解消されます。