AI职位推荐系统

一个基于Streamlit和MCP工具的AI职位推荐系统,通过分析简历并提供职位推荐,适用于求职者和招聘场景。

  • by ArchanaChetan07
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 ArchanaChetan07/Real-time-Job-recommendation-system---MCP

使用说明

使用MCP工具的AI作业推荐器

流线型简历教练,通过代理循环进行计划,并通过MCP/Apify获取工作。


概述

求职者需要简历理解、技能差距指导和实时LinkedIn/Naukri列表,而无需为每个AI工具重建抓取器。

Streamlit UI提取PDF文本(PyMuPDF),调用OpenAI进行摘要/差距/路线图,并使用Apify actors进行作业;FastMCP服务器公开fetchlinkedin/fetchnaukri;src/agent实现了带有重试/超时和演示模式的planr/loop/HITL/tools。

文档化的架构,具有生产导向的配置、测试、Docker和MCP重用,可用于IDE/代理。

此存储库的维护方式为 注重生产的组合工作:清晰的架构、自动检查(如果有的话)和指标 可追溯到已提交的工件 (从未发明)。


建筑学

Streamlit上传PDF“助手提取文本”“OpenAI分析简历”“可选关键字”“job_api/Apify(也通过MCP)”“转义渲染”;代理循环计划工具与HITL/demo守卫一起使用。

flowchart TB
  U[User PDF] --> ST[Streamlit app.py]
  ST --> H[helper.py PDF + OpenAI]
  ST --> J[job_api.py Apify]
  MCP[mcp_server.py FastMCP] --> J
  ST --> A[src/agent loop/planner/tools]
  A --> H
  A --> J
sequenceDiagram
  participant U as User/Client
  participant S as Service/Pipeline
  participant E as Eval/Tools
  U->>S: request / job
  S->>E: execute
  E-->>S: results
  S-->>U: report / response

结果和存储库事实

仅列出在代码、配置、测试或生成的报告中找到的值。没有临床/ML准确度数字意味着 不 在repo中发布。

度量 值 来源
跟踪存储库文件 30 git tree
Python模块 19 git tree *.py
默认OPENAI_MODEL gpt-4o src/config.py
默认MAX_AGENT_STEPS 8 src/config.py
默认MAX_PDF_SIZE_MB 10 src/config.py
默认MAX_RESUME_CHARS 50000 src/config.py
默认默认值_JOB_ROWS 60 src/config.py
OPENAI_TIMEOUT_SEC默认值 60 src/config.py
APIFY_TIMEOUT_SEC默认值 120 src/config.py
跟踪的文件 30 git tree
Python模块 19 git tree
测试相关路径 6 git tree
CI工作流 是 .github/workflows
Docker存在 是 repo root
%%{init: {'theme':'base'}}%%
pie showData title Language composition (bytes)
    "Python" : 98
    "Dockerfile" : 2

主要特点

  • 通过大小/类型验证恢复PDF上传
  • 法学硕士总结、技能差距、学习路线图
  • 通过Apify获取LinkedIn+Naukri职位
  • 用于外部代理的MCP服务器工具
  • 按键丢失时的DEMO_MODE
  • HITL标志和有界代理步骤
  • LLM输出的XSS安全HTML转义

技术栈

层 技术
ui 流光灯
llm OpenAI
mcp FastMCP
工作 Apify(领英/Naukri演员)
pdf PyMuPDF
容器 Docker
ci GitHub操作

技能展示

Python·S·t·r·e·a·m·CI/CD·测试·自动化

关键字表面: Python·Python·机器学习·CI/CD·测试·API·Docker·自动化·数据科学·软件工程·系统设计·可观察性·LLM·云


项目结构

Real-time-Job-recommendation-system---MCP/
├── app.py / mcp_server.py
├── docs/ARCHITECTURE.md
├── src/{config,helper,job_api,tracing}.py
├── src/agent/{loop,planner,tools,hitl,types}.py
├── tests/
├── Dockerfile / requirements.txt / pyproject.toml / uv.lock
└── .env.example

安装和使用

git clone https://github.com/ArchanaChetan07/Real-time-Job-recommendation-system---MCP.git
cd Real-time-Job-recommendation-system---MCP
pip install -r requirements.txt
cp .env.example .env  # set OPENAI_API_KEY + APIFY_API_TOKEN or DEMO_MODE=1
streamlit run app.py
python mcp_server.py

运作原理

Config加载env键,如果缺少,则启用DEMO_MODE。UI提取简历文本,重试调用OpenAI,并可选地获取作业。MCP为Cursor/其他客户端提供相同的获取工具。Architecture.md详细介绍了数据流和安全选择(无持久性、HTML转义)。


未来的改进

  • 添加测量延迟/成本仪表板
  • 将HITL UX扩展到标志之外

许可证

请参阅存储库。


AI Job Recommender with MCP Tools
github.com/ArchanaChetan07/Real-time-Job-recommendation-system---MCP