这篇内容将从分层的角度,逐步拆解求职派的技术架构是怎么搭起来的。
先来看主要的技术选型。
| 维度 | 选型 | 版本 |
|---|---|---|
| 后端框架 | Spring Boot | 4.0.5 |
| Java 版本 | Java 21 | records、pattern matching、virtual threads |
| AI 接入 | Spring AI | 2.0.0-M4 |
| 智能体框架 | LangGraph4J | 1.6.0-rc4 |
| ORM | Spring Data JPA + Hibernate | — |
| 开发数据库 | H2(嵌入式) | — |
| 生产数据库 | MySQL + Liquibase | — |
| 任务调度 | JobRunr | 8.5.1 |
| 浏览器自动化 | Playwright | 1.52.0 |
| 认证 | JWT(Auth0 java-jwt) | 4.4.0 |
Spring AI 2.0.0-M4 是里程碑版本。选它是因为 Spring 生态的集成度高,大模型调用、工具注册、结构化输出、MCP 协议都有现成的封装。
LangGraph4J 是用来编排多步骤 Agent 工作流的。
求职派的岗位数据处理流程包括任务分类、数据采集、数据清洗、数据发布。
用 LangGraph4J 的状态图来编排,每一步都是图上的一个节点,节点之间有条件分支。比如采集结果为空就直接终止。
大模型处理网页链接时,简单的爬虫只能拿到 HTML 源码,遇到 JavaScript 动态渲染的页面就无能为力了。
Playwright 能启动真实的浏览器,等页面渲染完再抓取内容。求职派把它封装成了一个独立的插件模块,通过 MCP 工具协议暴露给大模型按需调用。 ...
回复