
把 TypeWhale 做成“学习意图入口”,背后接一个“青岛中考知识库 + 检索 + 讲解 + 训练系统”。
但边界要立清楚:
可以做私有学习知识库;不要做公开传播教材 PDF / 试卷原文的平台。教材、教辅、真题很多有版权。你自己给孩子学习、在本地私有使用,风险低;如果做成公开产品,就必须处理授权问题。
一、这个知识库应该收集什么
建议分成 5 类数据:
数据类型 | 内容 | 用途 |
|---|---|---|
教材内容 | 语文、数学、英语、 物理、化学、生物、 地理、历史、道法 | 建立知识点主线 |
青岛中考试卷 | 近 5–10 年中考真题、 模拟题、会考题 | 建立题型和难度 |
考纲/政策 | 青岛中考科目、分值、 等级规则、考试说明 | 判断优先级 |
知识点标签 | 函数、几何、文言文、 力学、酸碱盐等 | 方便检索和训练 |
错题/学习记录 | 孩子做错的题、 不会的概念 | 个性化补弱 |
青岛 2026 年中考口径里,九年级考试包括语文、数学、英语、道法、历史、物理、化学、体育、艺术、实验操作;八年级考地理、生物、信息科技、生物实验等。语数英以分数计入,总分 360;其他科目更多按等级呈现。这个规则会直接影响知识库优先级:语文、数学、英语是第一优先级,物理化学和政史地生是等级保障层。
二、教材来源怎么处理
教材可以从正规渠道获取电子内容。国家中小学智慧教育平台有“教材”入口;人教社官网也有“教材电子版”相关入口,适合找统编语文、道法、历史以及人教版英语、生物、物理等内容。
青岛教材版本大致是:语文/道法/历史为统编人教,数学常用北师大版,英语人教版,地理湘教版,生物人教版,物理人教版,化学鲁教版。这个版本表之前我们已经查过,后续建库时必须按学校实际发书再校准一次。
我的建议是:
不要一开始追求“全量教材 PDF 入库”。
先做这几个核心包:
七上到九下数学,北师大版 七上到九下语文,统编版 七上到九下英语,人教版 八上到九下物理,人教版 九上九下化学,鲁教版 七八年级地理、生物 初中历史、道法全册 青岛近年中考真题、八年级地生会考题
三、知识库不是简单存 PDF,要结构化
真正有价值的结构应该是这样:
中考知识库
├── subject: 数学
│ ├── grade: 七年级上
│ ├── book: 北师大版
│ ├── chapter: 有理数
│ ├── section: 有理数的加减
│ ├── knowledge_point: 绝对值、相反数、数轴
│ ├── examples: 教材例题
│ ├── exam_links: 对应中考题
│ └── difficulty: 基础 / 中档 / 压轴每一条知识切片都应该带元数据:
{
"subject": "数学",
"grade": "七年级",
"semester": "上",
"publisher": "北师大版",
"chapter": "第二章 有理数及其运算",
"section": "有理数的加减",
"knowledge_points": ["有理数加法", "符号判断", "绝对值"],
"exam_relevance": "high",
"source_type": "textbook",
"source_file": "math_g7a_bsd.pdf",
"page": 38
}这样 TypeWhale 才能回答:
“我不会有理数加减,给我讲一下。”
“这个知识点青岛中考怎么考?”
“给我 5 道从简单到难的题。”
“我做错了这题,帮我判断是哪个知识点没掌握。”
“从加拿大回青岛,七年级数学先补什么?”
四、TypeWhale 应该怎么调阅
TypeWhale 不应该直接塞一堆 PDF 给模型。正确结构是:
TypeWhale 用户输入
↓
意图识别
↓
查询中考知识库
↓
RAG 检索相关教材/真题/知识点
↓
生成解释、练习、学习路线
↓
记录孩子不会的点举例:
用户输入:
青岛中考数学函数怎么学?TypeWhale 应该识别:
{
"intent": "exam_learning_guidance",
"region": "青岛",
"exam": "中考",
"subject": "数学",
"topic": "函数",
"task": "学习指导"
}然后知识库返回:
一次函数、反比例函数、二次函数
相关教材章节
近年青岛中考题
常见题型
难度分层最后 TypeWhale 生成:
你先学一次函数图像与性质,再学函数与方程、不等式结合题。
青岛中考里函数通常和几何、实际应用、压轴题结合。
今天先做这 3 类题……五、知识库的核心能力
这个系统不应该只是“搜索教材”,而应该做到:
1. 教材问答
七年级上册数学有理数主要讲什么?
八年级物理力学从哪里开始?
九年级化学酸碱盐怎么学?2. 中考题型映射
这个题考的是哪个知识点?
青岛中考这个知识点常怎么出?
这题属于基础题、中档题还是压轴题?3. 学习路线规划
从加拿大回青岛读初中,三个月怎么补?
语文文言文从哪里开始?
数学函数和几何怎么排优先级?4. 错题诊断
我这题错了,帮我分析原因。系统输出:
错误类型:概念不清
涉及知识点:一次函数斜率、图像交点
建议复习:八年级下一次函数第 2 节
推荐练习:3 道基础题 + 2 道中考题5. 个性化补弱
长期记录:
孩子经常错:
- 数学:几何辅助线、函数图像
- 语文:文言文实词、作文结构
- 物理:受力分析然后 TypeWhale 每次能给更贴合的建议。
六、技术架构建议
你可以按这个架构做:
/data/exam_knowledge_base/
├── raw/
│ ├── textbooks/
│ ├── exam_papers/
│ ├── answer_keys/
│ └── policy_docs/
├── parsed/
│ ├── textbook_chunks.jsonl
│ ├── exam_question_chunks.jsonl
│ └── knowledge_points.jsonl
├── index/
│ ├── vector_index/
│ └── keyword_index/
├── profiles/
│ └── student_profile.json
└── api/
└── query_service.pyTypeWhale 只调用 API,不直接读 PDF:
typewhale → exam-kb query API → 检索结果 → TypeWhale 生成指导这符合你现在的项目边界习惯:TypeWhale 是入口和调度,不应该把所有教材解析、题库清洗、向量索引都塞进 TypeWhale 本体。
七、最小可用版本怎么做
不要一上来做全国全科全教材。第一版就做:
地区:青岛
目标:中考
年级:七年级到九年级
科目:语文、数学、英语、物理、化学
资料:教材目录 + 章节内容 + 近年真题
功能:查询、解释、出题、错题归因优先级:
阶段 | 目标 |
|---|---|
第 1 阶段 | 建立教材目录和章节知识点 |
第 2 阶段 | 导入真题,按题目切片 |
第 3 阶段 | 建立“知识点 ↔ 真题”映射 |
第 4 阶段 | TypeWhale 调阅查询 |
第 5 阶段 | 加入孩子错题和学习画像 |
第 6 阶段 | 自动生成每日学习计划 |
八、版权边界必须注意
可以:
本地私有保存
孩子个人学习使用
做摘要、索引、知识点标签
记录页码和来源
检索后生成自己的讲解不建议:
公开提供教材 PDF 下载
公开展示整本教材内容
公开售卖未经授权的真题库
把出版社教材完整复制到线上服务所以技术上应该设计成:
私有本地知识库
只返回必要片段
优先生成讲解和学习指导
保留来源页码,但不大段复制原文
九、我建议把这个项目命名为
TypeWhale ExamBrain或者中文:
TypeWhale 中考大脑定位:
面向青岛中考的私有学习知识库与智能辅导系统。
整合教材、真题、考点、错题和学习画像,由 TypeWhale 调阅,为学生提供查询、讲解、训练和补弱计划。十、下一步最应该做什么
先不要写代码。先确定数据合同。
我建议你先建立这 4 个标准文件:
exam_kb_source_manifest.json
textbook_chunk_schema.json
exam_question_schema.json
typewhale_exam_query_contract.json其中最关键的是查询合同:
{
"query": "八年级物理力学怎么学",
"region": "青岛",
"exam": "中考",
"subject": "物理",
"grade": "八年级",
"task": "learning_guidance",
"student_level": "returning_from_canada"
}返回:
{
"answer": "先学力的概念、弹力、重力,再学二力平衡和摩擦力。",
"sources": [
{
"type": "textbook",
"subject": "物理",
"grade": "八年级",
"publisher": "人教版",
"chapter": "力"
}
],
"recommended_practice": [
"基础概念题",
"受力分析题",
"中考实验题"
]
}
TypeWhale 如果能从“输入工具”扩展成“个人学习/工作意图入口”,这个中考知识库就是一个很好的垂直场景。