コード不要!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




自動化の未来:X-PLUG/MobileAgentが変える開発現場

今回は「X-PLUG/MobileAgent」について、俺たちソフトウェアエンジニアの視点から、カラオケのコント風に楽しく、そして分かりやすく解説していくぜ!(ガラガラと扉を開けて、カラオケボックスに入る二人。一人はノートパソコンを抱え、もう一人はスマホを片手にうろうろしている。)


「逆に」な開発者に捧ぐ!Alibaba WebAgent徹底解説

やあ、俺はベテランソフトウェアエンジニア、コードとコーヒーと「逆に」が三度の飯より好きなんだ。今日のお題は Alibaba-NLP/WebAgent か。フム…「逆に、これって何に使えるの?」って思ってるそこの君、いい質問だ!「逆に、AIがWebを自動で探索して情報を集めてくれるって、それ俺たちの仕事、無くなるってこと?」って思った? 安心してくれ、逆だ、逆! これは俺たちの強力なツールになるんだよ。


論理的な情報検索を実現:PageIndexによる次世代RAGシステムの構築

PageIndexは、従来のVector-Based RAG (Retrieval-Augmented Generation)とは一線を画す、新しい推論ベースのRAGフレームワークです。従来のRAGでは、ドキュメントを一定のサイズでチャンク(断片)に区切り、それをベクトル化(埋め込み)してデータベースに保存し、質問のベクトルと類似度の高いチャンクを検索していました。


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

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


MaxKBを活用した業務効率化:開発者向けAIツール

このツールをレストランに例えるなら、お客様(ユーザー)の質問に何でも答えてくれる、知識豊富なベテランシェフのような存在です。‍ソフトウェアエンジニアの視点から見ると、MaxKBは単なるチャットボット作成ツールではありません。知識ベースの自動応答システム構築


ACL 2024採択!LLaMA-Factoryが変えるAIモデル開発の常識

おっと、あなたはソフトウェアエンジニアさんですね!ここでは、「hiyouga/LLaMA-Factory」という、とっても強力なツールキットについて、恐怖の館. ..ではなく、知識の館で詳しくご紹介しましょう!「hiyouga/LLaMA-Factory」は、まるで高性能なお化け除けのお札のように、大規模言語モデル(LLMs)やマルチモーダルモデル(VLMs)のファインチューニングを効率的かつ統一的に行うための強力なフレームワークです。


コントで学ぶ oraios/serena の真実:未来のプログラミングツール

OrAIos/Serenaは、AIを活用したコーディングエージェントツールキットで、セマンティック検索とコード編集の能力を提供します。MCPサーバーとAgnoの統合により、開発プロセスを劇的に効率化する可能性を秘めています。ソフトウェアエンジニアの視点から、その魅力と活用法を分かりやすく解説しましょう。


Canvaの代わりになる?ローカルで動く多機能AIアシスタント「jaaz」

ねぇ、みんな、CanvaとかAdobe Fireflyとか、画像や動画をAIで作るツールって使ったことある?とっても便利なんだけど、作ったデータが全部インターネットの向こう側に行っちゃって、ちょっとプライバシーが心配…って思ったことはないかな?