本项目为前几天收费帮学妹做的一个项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。
一、项目描述
岗位-简历人岗匹配推荐系统
基于智联招聘真实岗位数据(8836 条)构建的人岗匹配推荐系统。用户提交或粘贴简历后,系统完成简历解析、质量评分、岗位推荐、岗位画像聚类,并通过智能问答 Agent 回答岗位相关问题,覆盖“数据采集—治理—建模—应用—部署”完整数据分析链路。
前端登录入口 http://127.0.0.1:8501 用demo/ demo123登录
二、项目功能
1. 简历解析:支持文本粘贴与 PDF 上传,自动抽取姓名、学历、工作年限、期望城市、技能列表等结构化字段;
2. 岗位推荐:基于六维加权匹配(技能 0.38、经验 0.18、地域 0.16、学历 0.12、薪资 0.10、专业证书 0.06)对全量 8836 个岗位打分,返回 Top-N 推荐及中文推荐理由;
3. 简历质量评分:规则六维分(主口径)+ XGBoost 模型分(对照口径)双口径输出;
4. 岗位聚类画像:K-Means 聚类 + 肘部法/轮廓系数定 K,展示各簇薪资、学历、技能画像;
5. 智能问答 Agent:大模型 Function Calling 编排本地 9 个工具(RAG 检索、结构化筛选、人岗匹配、聚类画像等),最多 6 轮调用,带缓存与调用上限,回答附数据来源;
6. 用户系统:注册登录(游客可用核心功能)、简历保存、岗位收藏、匹配与问答历史。
三、运行环境
Windows/Linux 均可;Python 3.11 + 虚拟环境;本地运行需约 2GB 磁盘(含模型缓存);服务端口:后端 8000、前端 8501(Streamlit)或 5173(Vue3);支持 Docker 部署。
四、项目技术
数据层:Selenium 爬虫采集、pandas 清洗、jieba 分词、薪资规范化;
建模层:scikit-learn / XGBoost(评分模型 4 个)、TF-IDF + 余弦相似度与加权公式(匹配)、K-Means + PCA/t-SNE(聚类);
大模型层:FAISS 向量检索 + 本地 BGE-small-zh-v1.5 嵌入(RAG)、智谱 GLM-4-Flash Function Calling(Agent);
工程层:FastAPI 提供 8 类 30+ 接口、Streamlit 与 Vue3 双前端、SQLite 用户库、pytest 接口测试、Docker 容器化。
以上系统源码经过技术整理与调试,确保能正常运行
五、项目截图