一个可运行的三阶段 AI 面试项目,支持 3 个 Agent 分工协作,并且每个 Agent 使用独立的 API 配置(API Key / Base URL / Model)。
- 三阶段面试流程
HR初面(第一轮)Comprehensive综合面(第二轮:专业+压力)Evaluation评审总结(第三轮:结构化评审)
- 每个 Agent 独立 API 配置
- 前端三页面切换
- 页面1:API 配置
- 页面2:岗位与候选人信息
- 页面3:对话面试(左右结构)
- 门禁逻辑
- API 未验证通过,不能进入页面2
- 岗位信息未填完整,不能进入页面3
- 简历上传解析(
PDF/DOCX/TXT) - 逐题问答(一次一题)
- 评审结果按 JSON Schema 校验
ai-interview-bot/
|-- app.py
|-- interview_bot.py
|-- resume_parser.py
|-- requirements.txt
|-- openai.yaml
|-- web/
| `-- app_with_resume_upload.py
|-- docs/
| |-- architecture.md
| `-- integration.md
|-- prompts/
| |-- hr_interviewer.md
| |-- comprehensive_interviewer.md
| |-- evaluation_reviewer.md
| `-- shared_rules.md
|-- schemas/
| |-- interview_state.schema.json
| `-- evaluation_result.schema.json
|-- examples/
| `-- candidate_session.json
|-- tests/
| `-- test_interview_flow.py
`-- screenshots/
|-- 01-api-config.png
|-- 02-interview-context.png
|-- 03-chat-interview.png
`-- 04-final-evaluation.png
pip install -r requirements.txtpython web/app_with_resume_upload.py浏览器访问:http://127.0.0.1:7860
- 在页面1填写 3 个 Agent 的 API 配置并点击“验证 3 个 Agent API 配置”。
- 进入页面2填写岗位信息和候选人背景(可上传简历自动填充)。
- 进入页面3点击“开始第一轮面试”,然后逐题提交候选人回答。
- 系统自动推进阶段并输出最终评审结果。
python app.py \
--hr-api-key <KEY_1> --hr-base-url <URL_1> --hr-model <MODEL_1> \
--comp-api-key <KEY_2> --comp-base-url <URL_2> --comp-model <MODEL_2> \
--eval-api-key <KEY_3> --eval-base-url <URL_3> --eval-model <MODEL_3> \
--job-position "Backend Engineer" \
--job-description "Build and maintain backend services" \
--candidate-background "2 years backend experience, Python, SQL"python -m unittest discover -s tests -p "test_*.py" -v-
对话区报
messages format错误
请确认运行的是当前仓库最新的web/app_with_resume_upload.py。 -
API 验证 401/404
优先检查Base URL、Model与供应商文档是否一致,再检查 API Key 是否有效。 -
点击“下一步”没有跳转
这是门禁逻辑:必须先通过 API 验证,且岗位信息必填项不能为空。 -
上传区文字看不清
当前版本已做高对比样式;如果浏览器装了全局深色插件,建议先关闭再看页面效果。



