编程 用 PandaAI 做自然语言数据分析:数据源、可视化与自托管部署

2026-09-04 22:26:16

用 PandaAI 做自然语言数据分析:数据源、可视化与自托管部署

PandaAI 是一个基于 Python 的数据分析与自然语言处理工具,提供类似 ChatGPT 的问答式数据分析接口,也可以生成报告。核心组件包括基于 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 模型接口接入各种大语言模型,包括 OpenAI、Azure、Anthropic、Google、AWS、Hugging Face 等,默认使用 BambooLLM。

快速体验

在线平台

在线体验平台为 PandaBI,访问:

用邮箱注册免费账号后登录。开始提问前需要配置数据源:

  • 左侧的 “Datasets” 用于导入文件;
  • “Connectors” 用于连接数据库;
  • “API Keys” 用于生成 API 调用密钥,自行安装部署时会用到。

导入一份员工信息 CSV 文件后,可以直接提问“月薪最高的 5 名员工?”。

pip 安装

自行安装时,通过 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 gdp. Use different colors for each bar",
)

进一步使用可参考官方文档:

复制全文 生成海报 PandaAI 数据分析 Text2SQL Python LLM

推荐文章

程序员茄子在线接单