面试表达
面试时怎么讲
一句话:我围绕「AI 数据分析系统(报表 / ECharts / 自动洞察)」做过从问题拆解、方案设计、工程落地到效果验证的闭环。
追问重点:为什么这么设计、指标怎么验证、失败案例如何定位、上线后怎么观测和回滚。
证据建议:准备 README、架构图、关键代码片段、评测表和 2 个坏例复盘。
你的重点方向:把 CSV/Excel/数据库数据转成自动分析、图表、HTML 报告和可解释洞察。
本地学习进度
只保存在当前浏览器,不上传服务器。
学习产出
进阶能力,P1。阅读时尽量把知识点转成可演示项目、面试回答和简历证据。
能回答
你为什么要学这门课 / 最终目标 / 产品形态(你最后要展示什么)
能交付
整理一页项目笔记,记录问题、方案、指标和取舍
下一步
把本篇总结成 90 秒面试讲述
面试表达
一句话:我围绕「AI 数据分析系统(报表 / ECharts / 自动洞察)」做过从问题拆解、方案设计、工程落地到效果验证的闭环。
追问重点:为什么这么设计、指标怎么验证、失败案例如何定位、上线后怎么观测和回滚。
证据建议:准备 README、架构图、关键代码片段、评测表和 2 个坏例复盘。
简历表达
围绕 AI 数据分析系统(报表 / ECharts / 自动洞察) 场景,完成「你的重点方向:把 CSV/Excel/数据库数据转成自动分析、图表、HTML 报告和可解释洞察。」相关能力建设,沉淀可复用工程方案、测试样本和面试表达材料。
AI 应用工程师不只是做聊天机器人。很多企业真正需要的是:把业务数据自动分析、自动生成报告、自动画图、自动解释异常。
这门课会把你从“会调模型”带到“能做一个可演示的数据分析 AI 产品”。
学完后你要能做出一个端到端项目:
这个项目建议最终做成一个可以在面试现场打开的 Web Demo:
面试时你可以这样开场:
我做的是一个 AI 数据分析系统,不让大模型直接编数字,而是让模型规划分析步骤,真正的计算交给 pandas/SQL 工具,最后由模型生成可解释报告和图表说明。
| 层级 | 学什么 | 产出 |
|---|---|---|
| L1 | Python 数据处理 | pandas 清洗与聚合脚本 |
| L2 | 图表生成 | ECharts JSON 配置 |
| L3 | LLM 结构化输出 | 分析计划、图表建议、报告大纲 |
| L4 | FastAPI 服务化 | 上传数据、生成报告、查询结果 |
| L5 | Agent 化 | 自动规划分析步骤、调用工具、修正错误 |
用户上传 CSV/Excel
-> 文件校验与存储
-> 数据画像 profile_data()
-> LLM 生成分析计划(结构化 JSON)
-> 程序执行统计/聚合/趋势计算
-> LLM 选择图表类型与说明
-> ECharts option 生成
-> HTML 报告生成
-> 用户追问:基于 dataset_id + analysis_context 继续分析错误做法:
正确做法:
建议模型输出这种 JSON:
{
"intent": "trend_analysis",
"required_columns": ["date", "sales"],
"operations": [
{ "type": "group_by", "column": "date", "metric": "sales", "agg": "sum" }
],
"chart_type": "line",
"question_to_answer": "销售额随时间如何变化"
}ECharts 的 series.data 必须来自程序计算结果,不能由模型自由生成。
目标:让系统可靠读取用户文件。
建议字段:
| 字段 | 说明 |
|---|---|
| dataset_id | 数据集唯一 ID |
| filename | 原文件名 |
| row_count | 行数 |
| column_count | 列数 |
| uploaded_at | 上传时间 |
| schema_json | 字段类型画像 |
必须输出:
LLM 只拿到:
LLM 不直接拿全量原始数据,避免隐私和成本问题。
工具函数建议:
profile_data(dataset_id)aggregate(dataset_id, group_by, metric, agg)filter_rows(dataset_id, filters)detect_anomalies(dataset_id, metric, time_column)build_chart(analysis_result, chart_type)报告结构建议:
保存上下文:
{
"dataset_id": "ds_001",
"last_question": "最近 6 个月销售趋势如何?",
"last_analysis_id": "ana_001",
"chart_ids": ["chart_001"],
"available_columns": ["date", "region", "sales", "category"]
}这样用户问“刚才那张图里华东为什么下降?”时,系统知道“刚才那张图”指哪个 analysis。
data_profile.json。analysis_result.json,禁止让 LLM 直接计算关键数字。question -> required_columns -> operations -> chart_type -> explanation。/upload、/profile、/analyze、/report/{id}。profile_data、run_aggregation、build_chart 封装成 Agent tools。data-analysis-security.md。data-profile-demo。report.html + 追问截图。设计并实现 AI 数据分析系统,支持 CSV/Excel 上传、自动数据画像、LLM 结构化分析计划、pandas 计算执行、ECharts 图表生成与 HTML 报告输出;通过“模型规划 + 程序计算”的架构避免模型编造关键指标,并支持基于 dataset_id 的多轮追问。
如果有指标,可以补成:
amount 不知道是销售额还是订单数。