做了一个ai项目,面试官追问两小时!

太长不看版:

一个面向金融面试的RPA开源项目:基于Skyvern改造,主打三维度权限、高危审批、LLM容错、双Agent,附带简历写法+面试QA+16天开发日志,代码+文档全开源,专治面试没得聊。

🌟 核心亮点速览(就三点):

  • 业务深度:银行真实权限模型+分级审批+审计留痕
  • 技术巧思:Action缓存降本60%、双Agent断点续跑、三层LLM容错
  • 面试加成:所有设计决策写在日志里,配套简历/QA手册,让你聊得深

👉 项目地址评论区自取,觉得有用给个Star就行~

正文开始:

做这个项目的起因很简单:我想要一个面试时真正能聊得深的项目。不是那种 CRUD 搭完就结束的 demo,而是一个完整的系统——有真实的业务场景驱动、有经得起追问的设计决策、有能跑通的端到端链路。最终我选择基于 Skyvern(用 LLM + 视觉理解驱动浏览器自动化的开源框架),针对金融行业做了一套企业级 RPA 平台的完整改造。现在把它完整开源出来,项目地址放在文末。

这个项目里有什么

一、完整的企业级功能

不是堆功能列表,每个模块都有明确的设计动机:

三维度权限体系(部门 × 业务线 × 角色)

为什么不用简单的 role?因为银行里对公信贷部的操作员不该看到个人金融部的任务,但风险管理部需要跨部门只读,合规审计部需要跨部门审批——单一维度的角色模型覆盖不了这些真实场景。operator 和 approver 在数据库层面强制互斥,对应金融行业的职责分离要求。

高危操作分级审批

转账、放款、核保这类操作不能让 AI 自主执行。我设计了两阶段识别(关键词预筛 + LLM 精准判断),命中后按风险等级路由给不同层级审批人,整个等待通过 Redis Pub/Sub 实现,不阻塞其他任务,超时自动拒绝。

全链路合规审计

每步操作前后截图上传私有化 MinIO(数据不出内网),敏感信息自动脱敏,完整操作时间线支持多维度检索。这不是"加个日志表"的事,是在架构层面设计的。

LLM 三层容错 + NEEDS_HUMAN 状态机

LLM 不是 100% 可靠的。Prompt 格式约束 → Pydantic 校验重试 → 超出重试转人工接管。为 NEEDS_HUMAN 设计了完整的处置流程:查看截图和 LLM 原始输出,选择跳过/手动执行/终止。

Planner + Executor 双 Agent 协作

将「规划」和「执行」解耦为两个独立 Agent,四种失败策略(retry / skip / abort / replan),子任务状态持久化支持断点续跑——银行日终批处理中途中断可以从上一个成功步骤继续。

可组合 Skill 库

7 个独立 Skill(登录、表单填写、表格提取等),统一接口,6 个金融工作流模板通过 Skill 组合实现。所有银行场景共享同一个 LoginSkill,登录页变化只改一处。

Action 缓存 + 模型路由

相同页面结构的重复执行跳过 LLM 调用,模型路由根据页面复杂度自动选择轻量/标准/重型模型,降低约 60% 调用成本。

二、面试能聊什么

列几个我在准备过程中觉得有深度的点,也是面试里容易被追问的方向:

  • 权限模型的选型理由:为什么三维度而不是简单 role?怎么处理风控部跨部门只读和合规部跨部门审批这种交叉需求?互斥约束为什么放在数据库层而不只是应用层?
  • 审批的异步实现:为什么用 Redis Pub/Sub 而不是数据库轮询或 Kafka?并发量、实时性、部署成本三者怎么取舍?
  • LLM 容错的分层设计:为什么不是一层 try-catch 搞定?Prompt 约束、解析重试、人工兜底各解决什么层次的问题?
  • 双 Agent 架构的失败策略:retry / skip / abort / replan 四种策略分别对应什么场景?replan 次数上限怎么定?
  • Action 缓存的 key 设计:DOM 哈希怎么剥除动态内容?缓存命中率和正确性之间怎么平衡?

这些问题在项目的 16 天开发日志(summaries/)里都有完整的推理过程,不是结论式的,是"我当时考虑了哪些方案、为什么排除了其他选项"这种记录。

三、工程完整度

不只是功能能跑,整个工程链路是通的:

  • 601 个测试(561 单元 + 40 端到端集成),85% 覆盖率,覆盖权限边界、租户隔离、审批路由、LLM 容错、缓存失效等场景
  • Docker Compose 一键启动(PostgreSQL + Redis + MinIO + Skyvern + UI),开发和生产双配置
  • Nginx 反向代理 + gzip + 安全头 + HTTPS 预留
  • 完整的 数据库迁移(Alembic)和 种子数据(16 个演示用户、6 个部门、4 条业务线)
  • 从登录认证 → 任务创建 → 风险识别 → 审批流转 → 审计留痕,整条业务链路可端到端走通

四、不只是代码

除了项目本身,仓库里还附带了几份可能对你有用的东西:

简历写法指南docs/resume_guide.md

三个版本:通用后端版、AI 强化版、全栈版。核心原则不是罗列技术栈,而是写清楚"你判断了什么问题、做了什么取舍、产生了什么结果"。可以直接参考格式往自己的简历上套。

面试 QA 手册docs/interview_qa.md

基于这个项目可能被追问的高频面试题,分项目深挖、系统设计、技术原理、金融场景四个维度。每道题给的是回答框架而不是背诵答案——因为背答案没用,面试官换个角度问你就卡住了。

16 天开发日志(每个 day 分支的 summaries/

每天做了什么、为什么这样设计、踩了什么坑、怎么解决的。不是流水账,是完整的技术决策记录。如果你想理解"一个系统是怎么从零长出来的",从 Day 1 的 summaries/day_1_summary.md 开始读。

技术栈一览

AI Agent 底座

Skyvern + Playwright

后端

FastAPI + Python 3.11 + SQLAlchemy 2.0

数据库

PostgreSQL 14

缓存 & 消息

Redis 7(Pub/Sub + 缓存)

对象存储

MinIO

前端

React 18 + TypeScript + ECharts

容器化

Docker Compose + Nginx

测试

pytest + Vitest

写在最后

我的bg不算出众,甚至可以说比较低,在座的各位想必都要比我优秀的多,但可能也会在春招里面临被拒和自我怀疑的困境,而陷入迷茫。

但与其花时间焦虑,不如把时间花在提升自己的道路上。

我深知这个项目尚不完美——Action 缓存还是内存实现,Skill 库只有 7 个,双 Agent 通信没有消息队列持久化——但它的每一行代码、每一个设计决策、每一 篇踩坑记录,都是在深思熟虑后写下的。面试的时候,它们可以帮你说清楚每个模块为什么存在、为什么这样设计、有什么不足和改进方向。我想,这或许可以为你带来一些其他教程和付费课给不了的底气。

项目完整开源,随意 fork 和参考。如果对你有帮助,希望能给个 Star。

祝各位春招顺利,大家都可以抵达梦想的远方。

#AI求职实录#
全部评论
项目地址: https://github.com/Musenn/finrpa-enterprise
3 回复 分享
发布于 03-11 15:44 广东
[牛[赞]
点赞 回复 分享
发布于 03-16 11:58 江苏
点赞 回复 分享
发布于 03-14 11:27 江西
太厉害了
点赞 回复 分享
发布于 03-13 13:41 天津
这个项目很牛哇
点赞 回复 分享
发布于 03-11 21:26 四川
存降本60%?老板狂喜
点赞 回复 分享
发布于 03-11 18:46 湖北
融RPA实战,哈哈哈可以这么说
点赞 回复 分享
发布于 03-11 18:45 山东
大佬这设计,省Token神器啊
点赞 回复 分享
发布于 03-11 18:45 广东
比轮询强
点赞 回复 分享
发布于 03-11 18:45 广东
这项目太硬核了!
点赞 回复 分享
发布于 03-11 18:45 陕西

相关推荐

04-20 14:03
已编辑
门头沟学院 Java
楼主福建人,26届秋招主攻厦门。目前投了厦门银行、两大国企(建发、象屿)和工行厦门,都在等后续消息。趁等结果的间隙,聊聊我对这几家的理解,欢迎补充。先说两大国企:建发、象屿。 都是世界500强,平台大、业务广,供应链和贸易领域很强。优势很明显:简历含金量高,跳槽认可度强,总包数字好看。但问题是,这两家都是强绩效导向,尤其贸易岗和供应链岗,压力大、加班多,内部竞争激烈,进去容易被边缘化。另外有个现实问题,国企那边背景和关系挺重要的,没资源的话晋升会比较慢。再说中国工商银行厦门分行。 国有大行,平台最稳。科技岗可以接触到核心系统,培训体系完善,跳槽认可度高。缺点是起薪不如建发,晋升看资历、熬年限,涨薪慢,技术氛围偏传统,容易把路走窄。最后说厦门银行。 很多人以为城商行工资比国企低,其实还真不一定。我打听了一下,厦门银行管培岗的薪资跟建发、象屿差不多,甚至可能更高。本质区别在于,建发、象屿那边感觉更像老牌国企讲究背景和资历,厦门银行更看重能力,靠本事吃饭。优势在于:第一,薪资不低,管培岗甚至比国企高,加上提供两年宿舍(地铁4站到公司),厦门房租你们懂的,实际到手很香;第二,总行在搞AI大模型,技术岗能学到东西。第三,总行管培轮岗机制清晰,新人成长路径更透明。劣势在于:厦门银行毕竟还是属于城商行,不知道长期发展天花板怎么样目前进度: 两大国企有的刚面完,工行在等后续通知,厦门银行AI面结束了,后续据说节奏比较快。有知道节奏的uu吗?个人倾向: 想攒大厂履历,两大国企更合适;想要最稳的平台和跳槽认可度,工行是选择;但看重实际到手+生活成本+工作成就感+能力导向的话,厦门银行性价比更高。投个票看看大家想法:A. 冲建发/象屿B. 冲工行厦门C. 选厦门银行D. 还在观望等消息
点赞 评论 收藏
分享
评论
9
39
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务