项目概述
本系统是一个基于 AI 智能体的 OKR 打分与培训平台,支持上传 OKR 文件、自动清洗、智能打分并导出结果。帮助企业标准化 OKR 评估并提供可操作的反馈。
技术架构
| 层级 | 技术 |
|---|---|
| 后端 | FastAPI, Uvicorn, SQLite |
| 前端 | Vue 3, Vite |
| 评分 | LLM(DeepSeek via DashScope)/ Coze API |
| 文档处理 | python-docx, openpyxl |
核心功能
文件处理
- 支持格式:docx / xlsx / xls
- 自动清洗:解析 O(目标)和 K(关键结果)结构,统一格式
- 批量处理:使用 ThreadPoolExecutor 并发分析多份简历
智能打分
系统采用 130 分制,难度系数最高 10 倍:
| 部分 | 占比 | 制度 | 上限 |
|---|---|---|---|
| O(目标) | 30% | 加分制 | 30 分 |
| K(关键动作) | 40% | 扣分制 | 40 分 |
| R1(结果) | 30% | 加分制 | 30 分 |
| R2(复盘) | 30% | 加分制 | 30 分 |
计算公式:min(O,30) + min(R1,30) + min(R2,30) + max(0, 40-min(K,40))
岗位定制
支持不同岗位的评分标准,通过配置文件自定义各维度的权重和评分细则。
项目结构
app/
main.py # Streamlit 入口(已废弃)
services/
okr_ingestion.py # 文件读取与记录归一化
okr_cleaning.py # O/K 解析与清洗
okr_scoring.py # 打分后端选择
okr_export.py # Excel/文档导出
api/
main.py # FastAPI 后端(流式接口)
frontend/
src/ # Vue + Vite 前端
API 设计
流式评分接口
@app.post("/api/analyze/stream")
async def analyze_stream(file: UploadFile):
async def generate():
async for progress in okr_analyzer.analyze_stream(file):
yield f"data: {json.dumps(progress)}\n\n"
return StreamingResponse(generate(), media_type="text/event-stream")导出接口
@app.post("/api/export")
async def export_results(results: List[AnalysisResult], format: str):
# 支持 Excel、CSV、DOCX 格式导出
return export_file(results, format)使用方法
# 安装依赖
pip install -r requirements.txt
# 启动后端
cd api && uvicorn main:app --reload
# 启动前端
cd frontend && npm run dev当前状态
生产可用,持续迭代优化中。
相关链接
最后更新: 2026-04-01