CONTEXT / 当时的问题
志愿填报高度依赖咨询老师的个人经验:翻往年分数线、记院校偏好、手工排梯度,一个学生要花几个小时,还容易漏掉「专业级差」「单科要求」这类细节。不同老师给的方案差异很大,机构也没法沉淀方法论。
APPROACH / 我们怎么做的
把数据与方法固化成系统:统一的院校专业库与历年录取数据;按学生分数、位次、选科、地域与专业偏好自动生成冲稳保三档候选;每条候选给出依据(往年位次、招生计划变化、专业要求);支持多套方案保存与横向对比,最终结果可导出给家长。
DETAIL / 更多细节
为什么志愿填报适合做成系统
志愿填报的本质是一个带约束的匹配问题:分数、位次、选科、地域、专业偏好、招生计划变化——这些条件都能量化,只是过去靠人脑记。
把条件量化、把数据统一,方法就能沉淀下来,不再依赖某位老师的记忆。
系统做了四件事
1. 统一数据底座
院校、专业、历年录取分数与位次、招生计划、选科要求,汇成一套结构化的库。数据是基础,数据不准,后面全错。
2. 自动分档(冲 / 稳 / 保)
按学生位次与目标院校往年位次做区间匹配,自动分成三档候选。每一档都给出依据,而不是给一个「推荐」了事——咨询老师要能对家长解释为什么。
3. 约束提醒
选科不符、单科成绩不达要求、专业级差、身体条件限制等,命中即提示。这些细节靠人记必漏。
4. 方案对比与导出
一个学生可以存多套方案,横向对比院校与专业;最终导出成家长看得懂的表格,附每条的推荐理由。
结果
咨询老师从「翻资料 + 记偏好」变成「调数据 + 做判断」,单个学生的方案时间大幅缩短,机构也能把优秀老师的判断标准沉淀成规则。
这类系统最难的地方
不是算法,而是数据治理。历年数据口径不一致、院校合并更名、专业目录调整——这些都要在建库阶段处理掉。我们在这个项目上花的力气,大半在数据清洗与口径统一。