# interview-agent **Repository Path**: MetaIntelink/interview-agent ## Basic Information - **Project Name**: interview-agent - **Description**: AI智能面试系统 - 支持多平台视频/语音面试 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-07 - **Last Updated**: 2026-04-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Interview Agent - AI智能面试系统 > 一款基于 Spring AI 的智能面试系统,支持微信、钉钉、飞书等多平台视频/语音面试。 ## 🎯 项目简介 Interview Agent 是一款企业级 AI 智能面试解决方案,通过大语言模型(LLM)实现: - 🤖 AI 智能面试官角色 - 📹 多平台视频/语音面试 - 📊 自动化面试评估报告 - 💰 Token 消耗精细化管理 ## ✨ 特性 ### 核心功能 - **智能面试**:基于 Spring AI 的自然语言对话面试 - **多平台支持**:微信、钉钉、飞书、Web 多端接入 - **实时互动**:WebSocket 实时通信 - **自动评估**:AI 生成面试报告与评分 ### 技术特性 - **高可用**:集群部署、多副本保障 - **高性能**:异步处理、缓存优化 - **高并发**:限流熔断、分库分表 - **安全**:JWT 认证、数据加密 - **可观测**:完整监控链路 ## 🏗️ 技术栈 ### 后端 - **框架**:Spring Boot 3.2 + Spring AI - **数据库**:PostgreSQL + ShardingSphere - **缓存**:Redis Cluster - **消息队列**:RabbitMQ - **实时通信**:WebSocket + STOMP ### 前端 - **框架**:Vue 3 + TypeScript - **UI**:Element Plus - **状态管理**:Pinia - **构建工具**:Vite ## 📁 项目结构 ``` interview-agent/ ├── interview-agent-backend/ # 后端服务 │ ├── src/main/java/com/interview/agent/ │ │ ├── config/ # 配置类 │ │ ├── controller/ # 控制器 │ │ ├── service/ # 服务层 │ │ ├── model/ # 实体模型 │ │ ├── repository/ # 数据访问 │ │ ├── security/ # 安全认证 │ │ ├── mq/ # 消息队列 │ │ └── websocket/ # WebSocket │ └── pom.xml │ ├── interview-agent-frontend/ # 前端应用 │ ├── src/ │ │ ├── views/ # 页面组件 │ │ ├── components/ # 公共组件 │ │ ├── router/ # 路由配置 │ │ ├── store/ # 状态管理 │ │ ├── api/ # API 接口 │ │ └── utils/ # 工具函数 │ └── package.json │ └── README.md ``` ## 🚀 快速开始 ### 环境要求 - JDK 17+ - Node.js 18+ - PostgreSQL 15+ - Redis 7+ - RabbitMQ 3.12+ ### 后端启动 ```bash cd interview-agent-backend # 配置环境变量 export OPENAI_API_KEY=your-api-key export DB_PASSWORD=your-db-password export JWT_SECRET=your-256-bit-secret # 启动服务 mvn spring-boot:run ``` ### 前端启动 ```bash cd interview-agent-frontend # 安装依赖 npm install # 启动开发服务器 npm run dev ``` ## 🔧 配置说明 ### application.yml 主要配置 ```yaml # AI 配置 spring: ai: openai: api-key: ${OPENAI_API_KEY} base-url: https://api.openai.com # 分库分表配置 spring: datasource: dynamic: primary: master datasource: master: url: jdbc:postgresql://localhost:5432/interview_master ``` ## 📊 Token 消耗管理 系统支持精细化的 Token 消耗管理: | 用户类型 | 每日免费额度 | 月度额度 | |---------|------------|---------| | 普通用户 | 100,000 | 3,000,000 | | 付费用户 | 自定义 | 自定义 | ## 🔐 安全措施 - JWT Token 认证 - 密码加密存储(BCrypt) - 请求限流(Bucket4j) - CORS 跨域控制 - SQL 注入防护 - XSS 防护 ## 📈 性能优化 - **数据库**:读写分离、分库分表 - **缓存**:Redis 多级缓存 - **异步**:MQ 异步处理 - **限流**:API 级限流保护 ## 🌐 API 文档 启动后访问:`http://localhost:8080/api/swagger-ui.html` ## 📝 License MIT License