generated from kgod/ai-review-template
自内部仓库剥离深度优化与 RAG 知识库后的交付版本: - Builder 对话式简历生成(FSM + 意图路由 LLM 兜底增强) - 条目级轻度优化:事实覆盖门禁 + STAR/bullet 修复链,功能/简介/成果与技术栈同级保护 - 简历导入:DOCX/PDF 解析、结构归一、手机号脱敏 - PostgreSQL 运行时 + Alembic 迁移链 Co-Authored-By: Claude <noreply@anthropic.com>
23 lines
891 B
Python
23 lines
891 B
Python
"""Skill group updates that preserve recommender-assigned categories.
|
|
|
|
apply_update_skill_groups lives in an over-limit module and keeps keyword-only
|
|
classification for manual patch edits; this wrapper reuses its cleaning and then
|
|
re-groups with the recommender's (LLM) categories, which win over keywords.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
from typing import Any
|
|
|
|
from .resume_document_mutations import apply_update_skill_groups
|
|
from .skill_classifier import classify_skills
|
|
|
|
|
|
def update_skill_groups(
|
|
content: dict[str, Any], skills: list[Any], preferred_categories: dict[str, str] | None = None
|
|
) -> dict[str, Any]:
|
|
result = apply_update_skill_groups(content, skills)
|
|
flat = [skill for group in result.get("skill_groups") or [] for skill in group.get("skills") or []]
|
|
result["skill_groups"] = classify_skills(flat, preferred=preferred_categories)
|
|
return result
|