PandaAI:一個基于AI的對話式數(shù)據(jù)分析工具
PandaAI 是一個基于 Python 開發(fā)的自然語言處理和數(shù)據(jù)分析工具,支持問答式(ChatGPT)的數(shù)據(jù)分析和報告生成功能。
PandaAI 提供了一個開源的框架,主要核心組件包含用于數(shù)據(jù)處理的數(shù)據(jù)準備層(Pandas)以及實現(xiàn) Text2SQL 功能的自然語言接口。
數(shù)據(jù)源
PandaAI 支持文件、數(shù)據(jù)庫以及大數(shù)據(jù)平臺等多種數(shù)據(jù)源連接,包括 Excel、CSV、MySQL、PostgreSQL、Oracle、Microsoft SQL Server、Databricks、Redshift、Snowflake、ClickHouse、Supabase、BigQuery、Salesforce 等。
自然語言查詢
用戶可直接用自然語言提問,例如“GDP 排名前五的國家是哪些?,PandaAI 會自動將問題轉(zhuǎn)化為 Python 代碼或 SQL 查詢,并返回結(jié)果。
可視化面板
PandaAI 支持生成多種圖表(例如柱狀圖、 餅圖、折線圖等)和分析報告,通過簡單指令即可實現(xiàn)數(shù)據(jù)可視化,無需手動編寫繪圖代碼。
團隊分享
PandaAI 支持用戶權(quán)限管理,可以將查詢結(jié)果分享給業(yè)務(wù)團隊或者其他數(shù)據(jù)團隊成員。
多語言模型
PandaAI 提供了 LiteLLM 模型接口,支持各種大語言模型(LLM),包括 OpenAI、Azure、Anthropic、Google、AWSHugging Face 等;默認使用 BambooLLM。
快速體驗
PandaAI 提供了一個免費的在線體驗平臺(PandaBI),輸入以下網(wǎng)址:
使用郵箱注冊一個免費賬號,然后登錄系統(tǒng):
在輸入問題之前,我們需要配置數(shù)據(jù)源。左側(cè)的“Datasets”用于導(dǎo)入文件;“Connectors”用于連接數(shù)據(jù)庫;“API Keys”用于生成 API 調(diào)用密鑰,如果自行安裝部署需要使用這個密鑰。
我們使用文件導(dǎo)入功能導(dǎo)入一份員工信息數(shù)據(jù) 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",
)
進一步使用可以參考官方文檔: