PandaAI:一個基于AI的對話式數據分析工具
PandaAI 是一個基于 Python 開發的自然語言處理和數據分析工具,支持問答式(ChatGPT)的數據分析和報告生成功能。
PandaAI 提供了一個開源的框架,主要核心組件包含用于數據處理的數據準備層(Pandas)以及實現 Text2SQL 功能的自然語言接口。
數據源
PandaAI 支持文件、數據庫以及大數據平臺等多種數據源連接,包括 Excel、CSV、MySQL、PostgreSQL、Oracle、Microsoft SQL Server、Databricks、Redshift、Snowflake、ClickHouse、Supabase、BigQuery、Salesforce 等。
自然語言查詢
用戶可直接用自然語言提問,例如“GDP 排名前五的國家是哪些?,PandaAI 會自動將問題轉化為 Python 代碼或 SQL 查詢,并返回結果。
可視化面板
PandaAI 支持生成多種圖表(例如柱狀圖、 餅圖、折線圖等)和分析報告,通過簡單指令即可實現數據可視化,無需手動編寫繪圖代碼。
團隊分享
PandaAI 支持用戶權限管理,可以將查詢結果分享給業務團隊或者其他數據團隊成員。
多語言模型
PandaAI 提供了 LiteLLM 模型接口,支持各種大語言模型(LLM),包括 OpenAI、Azure、Anthropic、Google、AWSHugging Face 等;默認使用 BambooLLM。
快速體驗
PandaAI 提供了一個免費的在線體驗平臺(PandaBI),輸入以下網址:
使用郵箱注冊一個免費賬號,然后登錄系統:
在輸入問題之前,我們需要配置數據源。左側的“Datasets”用于導入文件;“Connectors”用于連接數據庫;“API Keys”用于生成 API 調用密鑰,如果自行安裝部署需要使用這個密鑰。
我們使用文件導入功能導入一份員工信息數據 CSV 文件,然后提問“月薪最高的 5 名員工?”:
如果想要自行安裝,使用 pip 工具安裝 pandasai 模塊的方式如下:
pip install "pandasai>=3.0.0b2"
然后使用 PandaAI 回答問題:
import pandasai as pai
# Sample DataFrame
df = pai.DataFrame({
"country":["United States","United Kingdom","France","Germany","Italy","Spain","Canada","Australia","Japan","China"],
"revenue":[5000,3200,2900,4100,2300,2100,2500,2600,4500,7000]
})
# By default, unless you choose a different LLM, it will use BambooLLM.
# You can get your free API key signing up at https://app.pandabi.ai (you can also configure it in your .env file)
pai.api_key.set("your-pai-api-key")
df.chat('Which are the top 5 countries by sales?')
China, United States, Japan, Germany, Australia
或者生成可視化圖表:
df.chat(
"Plot the histogram of countries showing for each one the gd. Use different colors for each bar",
)
進一步使用可以參考官方文檔: