
用 ollama-python 搭 AI 简历筛选器手把手教程1000 份简历 10 分钟搞定【免费下载链接】ollama-pythonOllama Python library项目地址: https://gitcode.com/GitHub_Trending/ol/ollama-pythonHR 最怕的场景是什么一个岗位收 1000 份简历人工逐份看要熬 3 个通宵还容易漏掉黑马。ollama-python 是 Ollama 的官方 Python 库它能让你用几行代码调用本地大模型本文就带你用它的嵌入Embedding把文字变成可比较的数字向量接口搭一个本地 AI 简历筛选器1000 份简历从 3 天压到 10 分钟全程无需 API 密钥简历数据不出内网。读完本文你将带走 3 件事会用embed一个接口把简历变成向量算出和岗位 JD 的匹配分掌握批量嵌入 缓存两套提速技巧100 份简历提速 4 倍拿到可直接复制的 Docker 部署命令把筛选器上线到团队服务器先睹为快跑通后长什么样对比一下跑通前 vs 跑通后环节人工用 ollama-python 筛选1000 份简历初筛约 3 天约 10 分钟匹配依据凭经验、易遗漏每份简历都有 0~100 的量化匹配分数据流向简历外发在线工具本地模型推理数据不出内网最终你得到的是一份按分数排序的清单比如1. 张三_后端.docx —— 匹配度 92.4% 2. 李四_AI.docx —— 匹配度 87.1% 3. 王五_数据.docx —— 匹配度 81.6% ...HR 只需重点复核前 10% 的高分简历其余交给 AI 兜底。拆开看原理两个概念就够嵌入Embedding把一段文字转成一串数字向量。意思越接近的两段文字向量越贴近。ollama-python 的embed方法实现在 ollama/_client.py 第 406-427 行会把文本 POST 到本地 Ollama 的/api/embed接口返回这个向量最小示例就在 examples/embed.py第 1-4 行。余弦相似度用夹角衡量两个向量的接近程度取值 0~1越大越匹配。它不关心向量长短即不关心简历写得多啰嗦只看方向是否一致——这正是筛选需要的。整个流程就是三步JD 和每份简历各转成一个向量 → 两两算余弦相似度 → 按分数排序。原理就这么多下面直接跑通。三步跑通从安装到出结果第 1 步环境准备git clone https://gitcode.com/GitHub_Trending/ol/ollama-python pip install ollama ollama pull nomic-embed-text # 专用嵌入模型体积只有几百 MB简历筛选不需要大语言模型用专门的嵌入模型又快又准模型拉取也可以在代码里做参考 examples/pull.py。第 2 步核心两行代码把 JD 和简历都转成向量剩下的事交给向量本身from ollama import embed # 一次调用拿到 JD 向量embed 也接受列表见下节批量技巧 jd embed(modelnomic-embed-text, inputjob_description) resume embed(modelnomic-embed-text, inputresume_text)相似度用一行标准库就能算def cosine(a, b): dot sum(x * y for x, y in zip(a, b)) return dot / ((sum(x * x for x in a) ** 0.5) * (sum(x * x for x in b) ** 0.5))第 3 步批量跑并验证遍历resumes/目录下所有.txt简历逐份和 JD 算分、按分数降序输出即可。验证标准很简单把一份明显匹配Python NLP 经验和一份明显不匹配的简历放进目录前者分数应比后者高 15 分以上——方向对了就可以批量跑了。完整可运行示例可对照 examples/embed.py 的写法扩展响应类型定义见 ollama/_types.py。调优上生产提速 4 倍的三个开关1. 批量嵌入embed的input参数支持列表一次传 32 份简历请求数从 N 降到 N/32网络往返开销骤降。用法见 README.md 的 Embed (batch) 一节embeddings embed(modelnomic-embed-text, inputresume_texts[:32])2. 异步并发用AsyncClient并行发请求README.md Async client 一节有现成写法4 个并发下 100 份简历约从 1.3 分钟降到 20 秒左右。3. 缓存向量把简历文本的哈希 向量落盘JSON 即可同一批简历复筛、换 JD 对比时直接读缓存避免重复计算——向量只和文本内容有关与 JD 无关。部署到服务器用 Docker 最省事compose 文件里起 Ollama 和你的筛选脚本两个服务services: ollama: image: ollama/ollama:latest volumes: - ollama:/root/.ollama restart: always screener: build: . environment: OLLAMA_HOST: http://ollama:11434 depends_on: - ollama volumes: ollama:docker compose up -d客户端指向OLLAMA_HOST即可自定义 host 的写法见 README.md Custom client 一节简历数据始终在局域网内流动天然满足合规要求。举一反三同一套思路还能打这三场文本 → 向量 → 相似度排序这个骨架换个语料就是另一个工具内部知识库问答把员工手册、产品文档向量化候选人或新人提问时先检索最相关的 3 段再让模型作答参考 examples/chat.py 的对话写法。重复/近似内容去重工单、反馈、爬虫语料里相似度 0.95 的判重合并一个循环就能做。简历信息结构化筛完还要读简历时用结构化输出让模型直接吐 JSON技能、年限、学历看 examples/structured-outputs.py再配合 examples/chat-with-history.py 做多轮追问就能实现和 AI 讨论某位候选人是否合适。带走重点ollama-python 的核心优势一句话本地化、零密钥、几行代码。embed一个接口加上余弦相似度就足以把看简历这件苦力活变成一份量化榜单批量、异步、缓存三板斧让它从能跑变成跑得快Docker 一部署团队随时能用。下一步建议今天就按三步跑通搭一个最小版先拿 20 份真实简历验证分数是否合理再套上批量和缓存上量——现在就动手搭一个属于你的 AI 简历筛选器吧 ⚡【免费下载链接】ollama-pythonOllama Python library项目地址: https://gitcode.com/GitHub_Trending/ol/ollama-python创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考