Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI 技术面试系统

基于openai-agents-python 实现的面试智能体,通过多 Agent 协作实现从简历分析、面试规划到智能评分的全流程自动化。

✨ 特性

特性 说明
🎤 实时语音交互 语音识别 + 语音合成,营造真实面试氛围
📝 智能面试规划 基于简历自动生成面试问题和流程
🤖 多 Agent 协作 PlannerAgent(规划)→ InterviewAgent(提问)→ SummaryAgent(评分)
🔍 自主知识搜索 Agent 可实时联网查询不熟悉的技术概念
💬 实时对话展示 终端/UI 实时显示面试过程

📁 项目结构

.
├── terminal/                 # 终端版本(CLI)
│   ├── main.py              # 主入口
│   ├── printer.py           # 终端 UI
│   ├── prompts.py           # Agent 提示词
│   ├── tools.py             # 搜索工具
│   └── realtime_tts_player.py
│
├── qt/                      # QT 版本(GUI)
│   ├── main.py              # 主入口
│   ├── interview_worker.py  # 面试流程引擎
│   ├── interview_signals.py # Qt 信号系统
│   ├── prompts.py
│   ├── tools.py
│   └── realtime_tts_player.py
│
├── examples/
│   └── sample_resume.pdf    # 测试用简历
│
├── requirements.txt         # Python 依赖
└── README.md

🚀 快速开始

1. 安装依赖

pip install -r requirements.txt

2. 配置 API 密钥

在项目根目录创建 .env 文件:

# 阿里云 DashScope(通义千问 + 语音)
DASHSCOPE_API_KEY=your_dashscope_key
DASHSCOPE_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
MODEL_NAME=qwen-max

# Tavily(搜索)
TAVILY_API_KEY=your_tavily_key

# 可选:自定义模型
# EXAMPLE_BASE_URL=https://api.openai.com/v1
# EXAMPLE_API_KEY=your_openai_key

获取 API Key:

3. 运行

终端版本

python terminal/main.py

QT 版本

python qt/main.py

4. 使用方式

终端版本

  1. s 开始录音,对着麦克风说话
  2. 回答完成后,按 s 结束录音,自动提交给 AI
  3. AI 会根据简历内容提问,并进行追问
  4. 面试结束后自动生成面评总结
  5. q 退出

QT 版本

  1. 填写好 api_key, 选择好PDF简历,点击初始化面试等待
  2. 开始说话 开始录音,对着麦克风说话
  3. 回答完成后,按 停止 结束录音,自动提交给 AI

🎓 此外

本项目包含两套独立实现,便于对比学习:

版本 技术栈 特点
terminal/ asyncio + sounddevice + rich 纯 Python,无 GUI 依赖,代码简洁
qt/ PySide6 + QThread 跨线程通信,信号槽机制,事件驱动

核心业务逻辑(prompts.py、tools.py)在两套实现中复用,帮助学生理解:

  • 多 Agent 协作架构
  • 异步编程模式
  • 跨线程通信
  • UI 与业务分离

🏅 支持

如果你喜欢这个项目,可以通过以下方式支持我们:

About

An interview assistant built with OpenAI Agents SDK that can plan interview questions, ask questions, evaluate answers, and generate interview reports.

Resources

Stars

15 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages