不只是刷题工具,也不只是一次性模拟面试。
TechSpar 把专项训练、简历面试、JD 备面、实时 Copilot 与录音复盘串成一个持续进化的技术面试闭环。
大多数面试产品有一个根本问题:无状态。
你今天答得差,系统知道。
但你明天再来,它又像第一次见你一样重新开始。
TechSpar 的目标不是“再生成一组题”,也不是只做一轮模拟面试,而是构建一个覆盖备面、模拟、实战辅助与复盘的持续演化闭环:
| 传统面试工具 | TechSpar |
|---|---|
| 每次练习从零开始 | 持久化用户画像,长期跟踪成长 |
| 固定题库或随机出题 | 结合画像、掌握度、知识库动态出题 |
| 只覆盖刷题或单轮模拟 | 覆盖专项训练、简历面试、JD 备面、实时 Copilot 与录音复盘 |
| 反馈停留在一句点评 | 逐题评分、薄弱点提取、改进建议 |
| 很难判断自己到底进步没 | 掌握度量化、趋势追踪、复习调度 |
| 练完就结束 | 训练 -> 评估 -> 画像更新 -> 下轮更精准 |
TechSpar 不是帮你“刷一轮题”,而是帮你建立一套从刷题到实战的 AI 技术面试训练系统。
直接体验:https://aari.top/
| Password | |
|---|---|
| admin@techspar.local | admin123 |
演示环境请不要上传真实简历、真实录音或任何敏感个人信息。
TechSpar 不从固定题库随机抽题,而是融合三层信息后生成下一轮问题:
- Session Context:简历、JD、知识库、最近训练记录
- Topic Mastery:领域掌握度、历史薄弱点、练习轨迹
- Global Profile:跨领域强项、弱项、思维模式、沟通风格
结果是:问题更少重复,更贴近真实短板,也更有连续性。
每次训练结束后,系统不会只给一句点评,而是继续向后推进:
- 逐题评估回答质量
- 提取薄弱点、强项和行为特征
- 更新领域掌握度与长期画像
- 用 SM-2 调度后续复习
- 把这次结果带入下一轮训练
这意味着:每次训练都会改变下一次训练。
TechSpar 不是单页 Demo,而是完整系统:
- 前端:React 19 + React Router v7 + Vite
- 后端:FastAPI + LangGraph 工作流
- 数据层:SQLite、用户隔离目录、长期画像、向量检索
- 外部服务:OpenAI 兼容 LLM、Embedding、阿里云 NLS、DashScope ASR、Tavily、Qiniu OSS
选择某个领域集中训练,系统根据画像和掌握度动态调整难度,优先命中历史薄弱点。
AI 读取你的简历,通过 LangGraph 状态机驱动完整流程:自我介绍 -> 技术问题 -> 项目深挖 -> 反问环节。
输入岗位描述后,系统会抽取 JD 重点,围绕岗位要求、简历经历和知识库内容生成更贴近真实岗位的问题。
先基于 JD、简历和历史画像做预处理,生成 HR 提问策略树与高危路径;进入实时模式后,系统会持续转写 HR 发言、预测下一步追问方向,并给出回答建议。
上传面试录音或粘贴面试文本,系统自动转写、结构化 Q&A,并输出逐题分析与改进建议。
- 逐题评分:不是只看整体感觉,而是逐题拆开评估
- 薄弱点提取:明确知道自己卡在哪,而不是笼统地“回答一般”
- 掌握度变化:跟踪某个领域到底是在进步还是原地打转
- 长期画像更新:系统会记住你的习惯性问题,而不是下一次重新开始
- 复习优先级:会根据遗忘风险安排后续训练重点
| 首页 | 个人画像 |
|---|---|
![]() |
![]() |
首页聚合训练入口、近期进度和学习概览,画像页集中展示训练统计、当前重点与近期信号。
| 核心知识库 | 题目图谱 |
|---|---|
![]() |
![]() |
知识库负责维护训练依据,图谱页帮助你从全局观察题目分布与掌握情况。
| 历史记录 | 领域详情与回顾 |
|---|---|
![]() |
![]() |
历史记录按训练类型回看过往复盘,领域详情页把单个训练方向的掌握度、阶段判断和持续薄弱点收拢在一起。
| JD 定向备面 | 录音复盘 |
|---|---|
![]() |
![]() |
除了围绕岗位描述定向训练,还可以在准备完成后进入 Interview Copilot 做实时辅助,或对真实面试录音做结构化复盘。
- 正在准备后端、算法、AI 应用、Agent、RAG 等技术岗位面试的人
- 已经刷了很多题,但训练缺乏连续性和复盘闭环的人
- 想围绕简历项目和 JD 做更接近真实面试练习的人
- 想长期跟踪自己能力变化,而不是做一次性问答的人
cp .env.example .env最小必填配置是 LLM + Embedding。Embedding 不是可选项,必须二选一:
EMBEDDING_BACKEND=api:默认方案,直接走兼容 OpenAI 的 embedding APIEMBEDDING_BACKEND=local:本地模型方案,需要额外安装依赖
默认推荐 api,配置示例:
API_BASE=https://your-llm-api-base/v1
API_KEY=sk-your-api-key
MODEL=your-model-name
EMBEDDING_BACKEND=api
EMBEDDING_API_BASE=https://your-embedding-api-base/v1
EMBEDDING_API_KEY=sk-your-embedding-key
EMBEDDING_API_MODEL=BAAI/bge-m3如果你使用官方 OpenAI embedding 接口,EMBEDDING_API_BASE 可以留空。
认证默认值如下,不配置也能启动:
JWT_SECRET=change-me-in-production
DEFAULT_EMAIL=admin@techspar.local
DEFAULT_PASSWORD=admin123
DEFAULT_NAME=admin
ALLOW_REGISTRATION=false如果你要改成本地 embedding,继续补全 .env.example 里的 LOCAL_EMBEDDING_*。
如果你要启用面试 Copilot 的独立模型、实时语音识别或联网搜索,还需要继续补全这些可选项:
COPILOT_API_BASE=
COPILOT_API_KEY=
COPILOT_MODEL=
NLS_APPKEY=
NLS_ACCESS_KEY_ID=
NLS_ACCESS_KEY_SECRET=
TAVILY_API_KEY=不填 COPILOT_* 时会回退到主 LLM;不配 NLS 时仍可使用 Copilot,但只能手动输入 HR 的问题。
如果你要启用录音转写,还需要继续补全这些可选项:
DASHSCOPE_API_KEY=
QINIU_ACCESS_KEY=
QINIU_SECRET_KEY=
QINIU_BUCKET=
QINIU_DOMAIN=.env.example 已经补齐了完整示例,可直接按需删改。
docker compose up --build启动后访问:
http://localhost
后端:
pip install -r requirements.txt
uvicorn backend.main:app --reload --port 8000如果你要使用本地 embedding,再额外安装:
pip install -r requirements.local-embedding.txt前端:
cd frontend
npm install
npm run dev访问:
http://localhost:5173
登录后可从侧栏进入 面试 Copilot,或直接访问:
http://localhost:5173/copilot
如果你是从无认证旧版升级:
python -m backend.migrate- Embedding 后端切换(API / 本地)
- 面试 Copilot(JD 预处理、策略树、高危路径、实时回答建议)
- Copilot 独立 LLM / 阿里云 NLS / Tavily 检索
- 题目图谱与领域回顾
- 运行中设置调整(LLM、专项训练参数、Copilot 预测 Agent)
- 录音上传与转写分析
- 七牛云 OSS 存储
- 多用户数据隔离
- 移动端响应式使用
| Component | Technology |
|---|---|
| Backend | FastAPI, LangChain, LangGraph, LlamaIndex |
| Frontend | React 19, React Router v7, Vite, Tailwind CSS v4 |
| Storage | SQLite, semantic embeddings |
| Auth | JWT, bcrypt |
| LLM | Any OpenAI-compatible API |
为了避免文档继续变成过时快照,这里只保留稳定结构:
backend/main.py:FastAPI 入口和主要接口backend/graphs/:简历面试、专项训练、JD 备面、录音复盘、Copilot 预处理等核心流程backend/copilot/:实时辅助相关的策略树、方向预测、回答建议、语音流处理backend/storage/:会话、Copilot prep 等持久化frontend/src/pages/:首页、训练、画像、图谱、题库、Copilot、设置、复盘等页面frontend/src/api/、frontend/src/contexts/、frontend/src/hooks/:接口封装、全局状态和实时交互逻辑data/users/{user_id}/:每个用户的画像、简历、知识库、题库和设置docker-compose.yml、requirements*.txt、.env.example:部署和运行入口
CC BY-NC 4.0











