从B站专家UP主视频内容中蒸馏领域Skill,自动生成AIDP平台所需的专家级LLM评估题目。
# 1. 环境准备
python3.12 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
# 2. 配置API key
cp .env.example .env
# 编辑 .env 填入你的 AIHUBMIX_API_KEY
# 3. 运行Pipeline
# 从B站BV号运行(需要网络)
python -m src.pipeline --bv BV1xxx
# 从本地文本文件运行(无需网络)
python -m src.pipeline --file test_data/sample.txtoutput/skills/{date}_{label}.yaml— 蒸馏出的领域Skilloutput/questions/{date}_{label}.json— 生成的评估题目(含出题说明)
每段专家内容生成3种题型:
| 题型 | 描述 | 示例 |
|---|---|---|
| 分析决策类 | 二选一/多选一,选项各有优劣 | "A专业还是B专业?选哪个?" |
| 开放推荐类 | 描绘场景,模型自行推导筛选条件 | "帮我推荐适合的..." |
| How-to类 | 询问操作步骤,考察可执行性 | "该怎么一步步..." |
src/
├── crawler.py # B站视频爬取(公开API)
├── cleaner.py # 文本清洗(去时间戳/去重/合并)
├── skill_schema.py # Skill + Insight Pydantic Schema
├── distiller.py # LLM驱动的Skill蒸馏
├── question_generator.py # LLM驱动的题目生成
└── pipeline.py # 端到端串联入口
prompts/
├── distill.md # 蒸馏system prompt
└── generate.md # 出题system prompt
tests/ # 单元测试 + 集成测试
output/
├── skills/ # 生成的Skill YAML
└── questions/ # 生成的题目 JSON
.venv/bin/python3 -m pytest tests/ -v- LLM: Gemini 3.1 Flash Lite (via AIHubMix)
- 结构化输出: instructor + Pydantic v2
- 爬取: B站公开API(无需登录)
- 存储: YAML + JSON 文件