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),输入以下网址:
https://app.pandabi.ai/
使用邮箱注册一个免费账号,然后登录系统:
在输入问题之前,我们需要配置数据源。左侧的“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",
)
进一步使用可以参考官方文档:
https://docs.getpanda.ai/v3/introduction