完整版见
docs/04-简历项目描述(可直接粘贴).md和docs/05-面试问答手册.md
一、先说风险
不要虚构"在职期间做过"的项目。 最稳妥的做法:作为个人开源 / 业余技术实践写进项目经历, 面试时说明"基于工作中 Agent 相关实践的延伸与沉淀"。
二、技能栏(直接替换)
scss
AI / Agent: LangChain · LangGraph · LangChain4j · RAG · Function Calling / Tool Use
Prompt Engineering · MCP(了解) · Multi-Agent(了解)
向量 / 检索: Embedding · 向量数据库(PGVector / Chroma) · BM25 混合检索 · RRF 融合 · Rerank
大模型: OpenAI / DeepSeek / Qwen API · 流式输出(SSE) · Token 成本治理 · vLLM(了解)
后端: Python(FastAPI/Django) · Java(Spring Boot) · MySQL/PostgreSQL · Redis
前端: Vue3 · React · TypeScript · Pinia · Ant Design · ECharts · SSE/WebSocket
工程: Docker · Kubernetes · Git · 可观测(Trace/Token)
三、项目经历(可直接粘贴)
Enterprise Agent Platform(企业级智能体平台 / 个人开源项目)
技术栈 :Vue3 + TS + Pinia / Python + FastAPI + LangGraph + LangChain / Java17 + SpringBoot3 + LangChain4j / PgVector + BM25 + Redis + SQLite / Docker
项目描述 :面向企业研发效能与项目经营分析场景的智能体助手。用户自然语言提问, Agent 自动完成 知识库检索 → BI 数据查询 → 反思补数 → 带引用回答 → 高危动作人工确认 → 告警推送 闭环。 同一套能力用 Python(LangGraph)与 Java(LangChain4j)双栈实现。
核心工作:
- RAG 知识库 :Markdown 结构优先切分;向量 + BM25 混合召回 + RRF 融合 + 重排 + 低分兜底; 答案强制带引用编号,前端可溯源原文
- 多步 Agent 编排 :LangGraph 搭建 Plan→Execute→Reflect→Answer 状态图, 条件边控制"信息不足则补步骤";三道闸防死循环;框架缺失时可降级为内置状态机
- 工具调用与护栏 :ToolRegistry(JSON Schema + 风险分级); Text2SQL "生成→只读校验→执行→报错回炉修正" 闭环; SQL 白名单表、禁多语句、自动补 LIMIT;提示词注入检测 + PII 脱敏
- Human-in-the-loop:高风险工具调用前中断并弹确认卡,确认后才执行
- 记忆与可观测:窗口 + 摘要控制 token;自建 Tracer(Span/Token/JSONL/SSE 实时链路)
- 工程化 :LLM 适配层统一 OpenAI 兼容协议(DeepSeek/Qwen/vLLM 可切换),内置重试与降级; 向量库 memory/pgvector/chroma 一键切换;Mock LLM + 本地向量,无 Key 也能跑通全链路
四、面试高频 10 问(简版)
| 问题 | 一句话结论 |
|---|---|
| RAG 怎么做的? | 结构切分 → 混合召回 → RRF → 重排 → 阈值兜底 → 引用溯源 |
| 为什么混合检索? | 向量不擅长编号/金额/专有名词,BM25 补位 |
| 为什么用 RRF 不用加权? | 两个分数不同量纲,RRF 只看排名、零参数 |
| 为什么用 Agent 不用单轮调用? | 需要"查完再查"的闭环和失败自愈 |
| 怎么防死循环? | 迭代上限 + 补步上限 + 步数上限,三道闸 |
| 怎么保证 SQL 安全? | 白名单表 + 单句校验 + 关键字黑名单 + 自动 LIMIT + 只读连接 |
| 长会话怎么处理? | 最近 N 轮原文 + 更早内容摘要 |
| 怎么排查答错? | 看 trace:plan → 检索命中 → 工具返回 → reflect 判断 |
| 成本怎么控? | top-5 检索 + 记忆压缩 + 零调用重排 + 迭代上限 |
| Python 和 Java 怎么选? | 强管控用 LangGraph,快接入用 LangChain4j |
(完整 22 问见 docs/05-面试问答手册.md)
五、投递时的加分动作
- 附 GitHub 链接(多个 JD 明确要求"附作品链接")
- README 写清楚:一键启动 + 架构图 + 3 张效果截图(对话 / 执行链路 / HITL 确认卡)
- 录 2 分钟演示视频
- 简历里写 "能审查 AI 生成代码的边界条件与安全风险"(JD 原话)
六、反问环节(问这些显得懂行)
- 这个岗位是 0→1 建设,还是已有系统优化?服务内部还是外部客户?
- 技术栈偏 Python 还是 Java?有没有在用 Dify / LangChain4j / 自研框架?
- 模型接公有云还是私有化?数据出网有合规要求吗?
- 团队现在最痛的是效果不稳定、成本高,还是接入业务慢?
- 这个岗位怎么衡量做得好?准确率、自动化率,还是业务指标?
七、最后
简历只是门票,能讲清楚细节才是offer 。 把 blog/ 这 11 篇和 docs/ 里的问答过一遍, 确保每个技术点你都能说出"我为什么这么做、不这么做会怎样"。