Token导航 LogoToken导航TokenDH.com
Generative AI-Powered Job Recommender System with MCP logo
运维云端stdio官方级别未说明来源级核验

Generative AI-Powered Job Recommender System with MCP

MCP Server

一个基于Python的职位推荐系统,结合生成式AI和模型上下文协议(MCP),提供个性化的、可解释的职位推荐。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
Python机器学习云端部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

armster01

提供方

armster01

最后核验

2026/5/17 20:23

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

基于MCP的生成式人工智能作业推荐系统

一个基于Python的工作推荐系统,将生成式人工智能与模型上下文协议(MCP)相结合,以生成个性化、可解释的工作推荐。该存储库包含用于数据预处理、模型训练/推理、评估的代码、示例和工具,以及用于提供建议的轻量级API。

注:存储库标题中的“MCP”是指项目的模块化组件管道,用于组合数据处理、候选排名和生成解释模块。如果您更喜欢MCP的不同扩展,请在文档中替换它。

状态:原型/研究——适应和扩展生产。

特性

  • 使用机器学习和检索技术进行候选人生成和排名
  • 生成性解释模块,为每个推荐的工作创建清晰、个性化的理由
  • 用于混合和匹配组件的模型上下文协议(MCP):特征化器、检索器、排名器和解释器
  • 离线测试的评估指标和实用程序
  • 用于训练、推理和运行REST API的示例脚本

目录

  • 项目结构
  • 快速开始
  • 安装
  • 配置和环境变量
  • 数据准备
  • 训练
  • 运行推理/API
  • 评估
  • 开发笔记
  • 贡献
  • 许可证
  • 联系

项目结构(建议)

  • data/--原始和处理的数据集(未签入)
  • src/-包含模型、管道和API代码的Python包

- src/pipeline/--MCP组件(检索器、排序器、解释器) - src/models/——模型定义和包装器(ML/排名/生成) - src/utils/--助手:预处理、指标、持久性 - src/api/——FastAPI/Flask服务器提供推荐

  • 笔记本电脑/-EDA和模型原型
  • 测试/--单元/集成测试
  • 需求.txt
  • README.md
  • configs/--示例配置文件

快速启动(本地开发)

  1. 克隆仓库
   git clone https://github.com/armster01/Generative_AI-Powered_Job_Recommender_System_with_MCP.git
   cd Generative_AI-Powered_Job_Recommender_System_with_MCP
  1. 创建并激活虚拟环境(推荐)
   python -m venv .venv
   source .venv/bin/activate   # macOS/Linux
   .\.venv\Scripts\activate    # Windows (PowerShell)
  1. 安装依赖项
   pip install -r requirements.txt

如果您还没有需求文件,典型的软件包包括:

- fastapi/uvicorn - 变压器/句子变压器 - scikit学习 - 熊猫/numpy - faiss cpu(或faiss gpu) - 火炬/张量流(取决于模型) - pytest

配置和环境变量

  • OPENAI_API_KEY:(可选)用于使用OPENAI生成模型
  • APIFY_API_TOKEN:用于从NAUKRI&LINKEDIN中提取信息
  • HF_API_TOKEN:(可选)适用于抱脸私人模特
  • MLFLOW_ACKING_URI:(可选)如果使用MLFLOW进行实验
  • DATABASE_URL:(可选)用于持久化

在shell或.env文件中设置变量。例子:

export OPENAI_API_KEY="sk-..."
export HF_API_TOKEN="hf_..."

数据准备

  1. 将原始职位发布和用户交互放在data/raw/中。
  2. 运行预处理以创建特征和候选索引:
   python -m src.utils.preprocess --input data/raw/jobs.csv --output data/processed/jobs.parquet
   python -m src.pipeline.build_index --jobs data/processed/jobs.parquet --index-dir data/indexes/
  1. 示例脚本/笔记本显示了预期的格式(job_id、标题、描述、技能、位置、posted_date)和用户事件(user_id、job_id、event_type、时间戳)。

训练

  • 训练排名模型或微调编码器:
  python -m src.models.train_ranker --config configs/ranker.yaml
  • 微调句子编码器以进行检索:
  python -m src.models.train_encoder --data data/processed/train.parquet --output models/encoder

推理(CLI)

  • 运行一个简单的离线推理来获得前K名推荐:
  python -m src.pipeline.recommend --user-id 123 --top-k 10 --index data/indexes/ --model models/ranker
  • 输出是一个JSON/CSV,带有推荐的作业ID、分数和生成解释(如果启用)。

运行API(使用FastAPI的示例)

  1. 启动API服务器(如果不同,请替换入口点):
   uvicorn src.api.main:app --host 0.0.0.0 --port 8000 --reload
  1. HTTP请求示例:

POST/推荐

   {
     "user_id": 123,
     "context": {
       "current_title": "Data Analyst",
       "skills": ["sql", "python", "tableau"]
     },
     "top_k": 5,
     "explain": true
   }

回复包括推荐的工作、排名分数和每个工作的自然语言解释。

生成性解释模块

  • 解释者使用以下方式构建个性化的理由:

- 用户资料信号(技能、头衔、历史) - 职位发布内容和标签 - 排名特征和分数细分

  • 它可以使用本地模型(Transformers)或外部API(OpenAI/拥抱脸)。在环境变量中配置API键。

评估

  • 支持的离线指标:

- 排名:NDCG@k地图,Precision@k, Recall@k - 多样性和新颖性指标 - 可解释性:可选的人工评估或自动启发式

  • 运行评估:
  python -m src.utils.evaluate --predictions outputs/preds.json --ground-truth data/processed/gt.parquet --metrics ndcg@10,precision@5

开发笔记

  • 保持组件模块化:

- 检索器:使用向量相似性或词汇过滤器生成候选项 - Ranker:结合特征的监督模型 - 解释者:基于模板或生成模型

  • 为每个组件的测试添加单元测试
  • 在数据/样本/中使用小样本数据进行快速迭代

最佳实践和提示

  • 使用嵌入和ANN(FAISS)进行可扩展检索;为大型语料库保持索引分片
  • 记录实验(流量/权重和偏差)并持久化模型伪影
  • 对生成模型的输入进行消毒,以避免产生幻觉;包括接地背景
  • 限制解释长度,确保敏感信息不泄露

贡献

  • 发现错误或想要功能?通过以下方式打开问题:

- 复制步骤 - 最小数据集/样本输入 - 错误日志

  • 拉请求:fork→ 特性分支→ 打开PR。保持更改较小,并包括测试。
  • 在docs/和示例笔记本中添加或更新文档。

致谢

  • 受推荐系统和可解释人工智能研究的启发。
  • 使用开源库:拥抱脸、模糊、scikit-learn、FastAPI等。

联系

  • 维修人员:armster01
  • 如有疑问或合作想法,请打开问题或通过GitHub个人资料与我联系。

接下来要添加什么

  • Dockerfile+docker-compose用于一个命令运行
  • 用于测试和除尘的CI管道
  • 示例数据集和可重复实验笔记本
  • 更强大的评估工具(A/B模拟、在线指标)

如果你愿意,我可以:

  • 生成starter requirements.txt和示例配置文件
  • 为数据摄取和培训创建示例笔记本
  • Dockerfile草案和一个小型FastAPI应用程序支架

告诉我你接下来想要什么,我会准备文件的。

目录标签

目录标签

Python机器学习云端部署AI推荐本地部署职位推荐个性化推荐可解释AI

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP