graph LR
User([访问系统]) --> Input[输入账号密码]
Input --> Check{验证凭证}
Check -->|通过| Home[进入首页]
Check -->|失败| Error[提示错误]
Error --> Input
style User fill:#e8f4f8,stroke:#7fb3d5
style Home fill:#d4edda,stroke:#90c695
style Error fill:#f8d7da,stroke:#e8b4b8
style Check fill:#fff3cd,stroke:#e0c97f
| 角色 | 用户名 | 密码 | 权限说明 |
|---|---|---|---|
| 管理员 | admin | admin123 | 全部功能 |
| HR | hr | hr123 | 简历管理、条件配置、智能分析 |
| 只读用户 | viewer | viewer123 | 仅查看功能 |
- 打开浏览器,访问系统地址
http://localhost:3000 - 在登录页面输入用户名和密码
- 点击"登录"按钮
- 登录成功后自动跳转到首页
graph TD
Home[系统首页] --> Resume[简历上传筛选]
Home --> Talent[人才信息管理]
Home --> Config[筛选条件配置]
Home --> Analysis[智能分析问答]
Home --> Monitor[系统监控]
Home --> UserMgt[用户管理]
Resume --> R1[单个/批量上传]
Resume --> R2[实时进度]
Talent --> T1[详情查看]
Talent --> T2[状态更新]
style Home fill:#e8f4f8,stroke:#7fb3d5
style Resume fill:#d4edda,stroke:#90c695
style Talent fill:#d4edda,stroke:#90c695
style Config fill:#d4edda,stroke:#90c695
style Analysis fill:#d4edda,stroke:#90c695
style Monitor fill:#d4edda,stroke:#90c695
style UserMgt fill:#d4edda,stroke:#90c695
简历上传筛选是系统的核心功能,支持单个和批量上传简历,系统自动解析、提取信息并进行智能筛选。
graph TD
Start([开始上传]) --> Select[选择筛选条件]
Select --> Mode{上传方式}
Mode -->|单个文件| Single[选择文件]
Mode -->|批量文件| Batch[选择多文件]
Single --> Upload[上传处理]
Batch --> Upload
subgraph Process [系统自动处理]
Upload --> Parse[文档解析]
Parse --> Extract[信息提取]
Extract --> Filter[智能筛选]
Filter --> Save[结果存储]
end
Save --> Review{人工复核}
Review -->|通过| Pass[标记合格]
Review -->|不通过| Fail[标记淘汰]
style Start fill:#e8f4f8,stroke:#7fb3d5
style Process fill:#f8f9fa,stroke:#dee2e6
style Pass fill:#d4edda,stroke:#90c695
style Fail fill:#f8d7da,stroke:#e8b4b8
- 点击左侧菜单"简历上传筛选"
- 在"筛选条件"下拉框中选择预设的筛选条件
- 点击"选择文件"按钮,选择一份简历(PDF 或 DOCX 格式)
- 点击"上传"按钮
- 等待系统处理完成(约 3-5 秒)
- 查看处理结果,包括提取的信息和筛选结论
- 点击左侧菜单"简历上传筛选"
- 在"筛选条件"下拉框中选择预设的筛选条件
- 点击"选择文件"按钮,选择多份简历(最多 50 个文件)
- 点击"批量上传"按钮
- 系统显示上传进度条,实时更新处理进度
- 处理完成后,可在人才列表中查看所有结果
| 格式 | 扩展名 | 说明 |
|---|---|---|
| 推荐,解析效果最佳 | ||
| Word | .docx | 推荐,解析效果良好 |
| 旧版Word | .doc | 支持,但建议转换为 .docx |
- 单个文件大小不超过 10MB
- 批量上传最多支持 50 个文件
- 相同内容的简历会自动去重
- 处理过程中请勿关闭浏览器
人才信息管理模块用于查看、搜索和管理已上传的简历信息。
graph TD
List[人才列表页面] --> Search[搜索/筛选]
List --> View[查看详情]
List --> Batch[批量操作]
subgraph Filter [筛选维度]
Search --> F1[关键词]
Search --> F2[学历]
Search --> F3[技能]
Search --> F4[状态]
end
subgraph Detail [详情信息]
View --> D1[基本信息]
View --> D2[筛选理由]
View --> D3[简历原文]
end
subgraph Action [管理操作]
Batch --> A1[批量删除]
Batch --> A2[状态更新]
Batch --> A3[导出数据]
end
style List fill:#e8f4f8,stroke:#7fb3d5
style Filter fill:#d4edda,stroke:#90c695
style Detail fill:#fff3cd,stroke:#e0c97f
style Action fill:#e2d4f0,stroke:#b8a9d0
| 筛选条件 | 说明 |
|---|---|
| 关键词 | 搜索姓名、学校、专业等字段 |
| 筛选状态 | 合格/不合格/未筛选 |
| 学历 | 专科/本科/硕士/博士 |
| 技能 | 按技能标签筛选 |
- 在人才列表中,点击某条记录的"查看"按钮
- 进入详情页面,可查看完整信息:
- 基本信息:姓名、联系方式、学历等
- 工作经历:公司、职位、时间
- 项目经历:项目名称、角色、描述
- 技能列表:技能名称及熟练程度
- 筛选结果:是否合格及原因
- 简历照片:提取的照片
- 在人才详情页面,点击"编辑"按钮
- 修改筛选状态(合格/不合格)
- 点击"保存"按钮
- 在人才列表中,勾选需要操作的人才
- 点击顶部"批量操作"按钮
- 选择操作类型:
- 批量删除:软删除选中的人才
- 批量更新状态:修改筛选状态
- 确认操作
筛选条件配置模块用于创建和管理简历筛选规则,系统根据这些规则自动判断候选人是否符合要求。
graph LR
Condition[筛选条件] --> Info[基本信息]
Condition --> Rules[规则配置]
subgraph RuleDetails [规则详情]
Rules --> R1[学历要求]
Rules --> R2[技能要求]
Rules --> R3[工作年限]
Rules --> R4[院校层级]
end
style Condition fill:#e8f4f8,stroke:#7fb3d5
style RuleDetails fill:#d4edda,stroke:#90c695
系统支持复杂的布尔逻辑组合(AND/OR/NOT):
- AND: 所有条件必须同时满足(默认)。
- OR: 满足任一条件即可。
- NOT: 排除满足条件的候选人。
- 点击左侧菜单"筛选条件配置"
- 点击"新建条件"按钮
- 填写条件信息:
- 条件名称:如"Java开发工程师"
- 条件描述:详细说明筛选要求
- 学历要求:勾选要求的学历层次
- 技能要求:添加技能及熟练程度
- 工作年限:设置最低和最高年限
- 院校层级:勾选要求的院校层级
- 点击"保存"按钮
Java开发工程师筛选条件:
| 配置项 | 值 |
|---|---|
| 条件名称 | Java开发工程师 |
| 学历要求 | 本科、硕士 |
| 技能要求 | Java(精通)、Spring(熟练)、MySQL(熟练) |
| 工作年限 | 最低 3 年 |
| 院校层级 | 985、211 |
前端开发工程师筛选条件:
| 配置项 | 值 |
|---|---|
| 条件名称 | 前端开发工程师 |
| 学历要求 | 本科 |
| 技能要求 | Vue(熟练)、React(了解)、TypeScript(熟练) |
| 工作年限 | 最低 2 年 |
| 院校层级 | 无要求 |
- 编辑:点击条件列表中的"编辑"按钮,修改后保存
- 删除:点击条件列表中的"删除"按钮,确认后删除
智能分析问答模块基于 RAG 技术,支持使用自然语言查询简历库,获取智能分析结果。
- 异步任务处理:查询任务在后台执行,不阻塞页面操作
- 实时进度显示:显示任务处理进度(检索、分析、生成)
- 页面切换保持:可切换到其他页面,任务继续执行
- Markdown 渲染:分析结论支持标题、表格、列表等格式
- 结果导出:支持导出 Markdown 格式的分析报告
sequenceDiagram
participant User as 用户
participant System as 前端系统
participant Backend as 后端服务
User->>System: 输入查询条件
System->>Backend: 创建异步任务
Backend-->>System: 返回任务ID
System-->>User: 显示进度条
par 后台处理
Backend->>Backend: 向量检索
Backend->>Backend: LLM 分析生成
Backend->>System: WebSocket 推送进度
end
System-->>User: 显示最终分析报告
User->>System: 导出报告
| 问题类型 | 示例问题 | 返回结果 |
|---|---|---|
| 人才查询 | "有哪些5年以上经验的Java开发?" | 候选人列表+分析表格 |
| 统计分析 | "本科学历占比多少?" | 统计数据+图表 |
| 技能推荐 | "这个岗位还需要什么技能?" | 技能建议 |
| 对比分析 | "张三和李四谁更合适?" | 对比表格 |
- 点击左侧菜单"数据分析"
- 在输入框中输入查询条件
- 选择返回数量(5/10/15/20/50 条)
- 点击"开始分析"按钮
- 查看任务进度:
- 正在生成查询向量...
- 正在检索相关候选人...
- 正在生成分析结论...
- 任务完成后查看分析结果:
- 智能分析结论(Markdown 格式)
- 候选人概览表格
- 统计图表(学历分布、经验分布、热门技能)
- 候选人列表(含相似度评分)
- 点击"导出报告"下载 Markdown 文件
人才查询类:
- "有哪些5年以上工作经验的Java开发工程师?"
- "找出清华大学毕业的候选人"
- "有多少人精通Spring框架?"
统计分析类:
- "简历库中本科学历占比多少?"
- "平均工作年限是多少?"
- "最常见的技能有哪些?"
对比分析类:
- "比较张三和李四的技能"
- "哪个候选人的Java经验更丰富?"
在候选人列表中,点击"查看详情"按钮可查看完整信息:
- 基本信息:姓名、学历、学校、专业、工作年限
- 技能标签:候选人掌握的技能列表
- 简历内容:完整的简历文本
- 筛选信息:状态、日期等
点击"导出报告"按钮,可下载包含以下内容的 Markdown 文件:
- 查询条件
- 分析结论
- 候选人概览表格
- 统计数据
- 生成时间和任务 ID
系统监控模块用于查看系统运行状态和性能指标。
graph TD
subgraph Metrics [系统指标]
A[CPU 使用率]
B[内存 使用率]
C[磁盘 使用率]
end
subgraph Business [业务指标]
D[简历总数]
E[合格人数]
F[待筛选数]
end
subgraph Service [服务状态]
G[MySQL]
H[Redis]
I[MinIO]
J[ChromaDB]
end
style Metrics fill:#e8f4f8,stroke:#7fb3d5
style Business fill:#d4edda,stroke:#90c695
style Service fill:#fff3cd,stroke:#e0c97f
- 点击左侧菜单"系统监控"
- 查看实时系统指标:
- CPU 使用率
- 内存使用率
- 磁盘使用率
- 系统运行时间
在监控页面可查看各服务的健康状态:
- MySQL:数据库服务
- Redis:缓存服务
- MinIO:图片存储服务
- ChromaDB:向量数据库服务
- 点击"日志"标签页
- 可按日志级别筛选:
- DEBUG:调试信息
- INFO:一般信息
- WARNING:警告信息
- ERROR:错误信息
用户管理模块用于管理系统用户账户(仅管理员可访问)。
graph TD
subgraph Admin [管理员]
A[全功能访问]
end
subgraph HR [HR人员]
B1[简历管理]
B2[条件配置]
B3[智能分析]
end
subgraph Viewer [只读用户]
C1[简历查看]
C2[智能分析]
end
Admin --> HR
HR --> Viewer
style Admin fill:#e8f4f8,stroke:#7fb3d5
style HR fill:#d4edda,stroke:#90c695
style Viewer fill:#f8f9fa,stroke:#dee2e6
- 点击左侧菜单"用户管理"
- 点击"新建用户"按钮
- 填写用户信息:
- 用户名(唯一)
- 密码
- 邮箱
- 角色
- 点击"保存"按钮
- 在用户列表中,点击"编辑"按钮
- 修改用户信息
- 点击"保存"按钮
- 在用户列表中,点击"禁用"或"启用"按钮
- 确认操作
可能原因:
- 文件格式不正确
- 文件损坏
- 文件内容为空
解决方案:
- 确认文件格式为 PDF 或 DOCX
- 尝试重新打开文件确认内容正常
- 如果是 .doc 格式,转换为 .docx 后重试
可能原因:
- 网络连接中断
- 服务器处理繁忙
解决方案:
- 刷新页面重新上传
- 减少批量上传文件数量
- 检查网络连接
可能原因:
- 简历库中没有相关数据
- 问题表述不清晰
解决方案:
- 确认简历库中有数据
- 尝试换一种方式提问
- 使用更具体的关键词
可能原因:
- 用户角色权限不够
- 账户被禁用
解决方案:
- 联系管理员确认账户状态
- 确认访问的功能是否在权限范围内
可能原因:
- MinIO 服务异常
- 简历中没有照片
- 照片格式不支持
解决方案:
- 检查 MinIO 服务状态
- 确认简历中包含照片
- 联系技术支持
| 快捷键 | 功能 |
|---|---|
| Ctrl + F | 搜索框聚焦 |
| Esc | 关闭弹窗 |
| Enter | 确认提交 |
| Ctrl + S | 保存(编辑页面) |
如遇到其他问题,请联系技术支持:
- 提供问题描述和截图
- 提供操作步骤
- 提供浏览器版本信息