AI闯关-功能实现
前景提示
MVP实现顺序:
- 后端
生成题库的功能跑通 - 前端闯关页面
- 报告生成页面
- 首页介入
核心功能实现
还是套用模板提示词
▼text复制代码你是一位专业的程序员和小程序开发者,我会给你提供一系列资源,请你帮我不遗余力地完成开发任务。 ## 提供的资源 @需求分析文档 @方案设计文档 @UI原型图 ## 需要完成的任务 请你帮我完成 MVP 核心功能的完整小程序前端 + Python 后端的开发 ## 注意事项 1)你必须完整阅读理解我给你的所有资源,有任何不确定的地方必须及时找我人工确认,才能进行下一步 2)给出你具体要执行的开发步骤,找我人工确认后,再进行开发 3)对于方案设计中提到的技术栈(比如 Taro、Zustand、LangChain),你必须通过 Context7 或者官方文档获取到最新的用法,确保编写的代码是正确的 4)UI 原型必须完全按照我提供的 UI 原型图来,不要自行发挥 5)你必须通过 TDD 自行测试所有的后端功能代码
采用plan模式,问题确认


▼text复制代码已更新记忆文件 [](file:///c%3A/Users/QC/AppData/Roaming/Code/User/workspaceStorage/b4443fcd2d07ec5adf52b8c774b71c04/GitHub.copilot-chat/memory-tool/memories/MDRkZTcxMzQtMTgwYi00NTgxLWEyYTUtNTA1MDkyNDg3Yjdm/plan.md) 已更新内存 读取记忆 [](file:///c%3A/Users/QC/AppData/Roaming/Code/User/workspaceStorage/b4443fcd2d07ec5adf52b8c774b71c04/GitHub.copilot-chat/memory-tool/memories/MDRkZTcxMzQtMTgwYi00NTgxLWEyYTUtNTA1MDkyNDg3Yjdm/plan.md) 已更新记忆文件 [](file:///c%3A/Users/QC/AppData/Roaming/Code/User/workspaceStorage/b4443fcd2d07ec5adf52b8c774b71c04/GitHub.copilot-chat/memory-tool/memories/MDRkZTcxMzQtMTgwYi00NTgxLWEyYTUtNTA1MDkyNDg3Yjdm/plan.md) 计划已更新完毕。以下是最终确认版: --- ## 计划:AI炼金小程序完整 MVP 开发 全功能开发(21 个页面状态),**核心价值优先顺序**,TDD 驱动后端逻辑。 --- ### 里程碑 1:后端「生成题库」链路跑通 **目标**:能接收文本/文件/URL → AI生成结构化题目 → 提交答案返回反馈 → 生成报告 **步骤(依赖顺序)**: 1. **0-A 后端脚手架** - 创建 `backend/`,Python 3.11+ 虚拟环境 - 安装:`fastapi uvicorn[standard] python-multipart pydantic python-dotenv langchain langchain-core langchain-deepseek pypdf python-docx httpx beautifulsoup4 lxml pytest pytest-asyncio` - 建目录:`app/{api/v1, core, schemas, services/chains, services/ingestion, tests}` - 创建 `.env.example`(DEEPSEEK_API_KEY) 2. **1-A Pydantic Schemas**(`schemas/`) - `session.py`:`StudySession, CreateSessionRequest, SessionStatus` - `question.py`:`Question, QuestionOption, QuestionType` - `answer.py`:`SubmitAnswerRequest, AnswerFeedback` - `report.py`:`Report, MasteryItem, WeakPoint, GraphNode, GraphEdge, KnowledgeGraphData` - `ingest.py`:`IngestURLRequest, IngestFileResponse` 3. **2-A LangChain 客户端**(先通过 Context7 获取 `langchain-deepseek` 最新 API) - 初始化 `ChatDeepSeek(model="deepseek-chat", temperature=0, max_retries=2)` 4. **2-B 三条 AI 链(TDD)**(先写 `tests/test_chains.py` mock ChatDeepSeek → 再写实现) - `KnowledgeExtractChain`:输出 topic / concepts / misconceptions / **graph nodes & edges(含 mastery 度)** - `QuestionGenChain`:输出 3-5 题(单选/多选/判断),含 trap_type 干扰项分析 - `ReportGenChain`:输出正确率 / 薄弱点 / 建议 / 每知识点掌握度 5. **2-C 质量校验器**:题目结构规则校验 + 结构化输出失败自动重试 6. **3-A/B/C 输入处理层(TDD)** - `TextProcessor`:清洗 + 截断 ≤5000字 - `FileParser`:PDF(pypdf)/ DOCX(python-docx)/ TXT;图片/视频返回 "暂不支持";**≤25MB** - `URLScraper`:httpx + BeautifulSoup4,提取 `<article>/<main>` 过滤广告,超时10s 7. **4-A/B/C API 端点(TDD)** | 端点 | 职责 | |---|---| | `POST /api/v1/sessions` | 创建会话 | | `POST /api/v1/sessions/{id}/generate` | 触发完整 AI 链(知识提取+出题)| | `GET /api/v1/sessions/{id}/questions` | 获取题目列表 | | `POST /api/v1/sessions/{id}/answers` | 提交答案 + 即时反馈 | | `GET /api/v1/sessions/{id}/report` | 生成报告(含图谱 nodes/edges)| | `POST /api/v1/ingest/url` | URL 正文提取 | | `POST /api/v1/ingest/file` | 文件解析(≤25MB)| - 内存 Session Store + 24h TTL - CORS 配置:允许 localhost:10086(微信开发者工具端口) **验收**:`pytest backend/tests/ -v` 全绿 --- ### 里程碑 2:前端闯关页面(可并行于里程碑1,先用 Mock 数据) **步骤(依赖顺序)**: 1. **0-B 前端脚手架**(通过 Context7 获取 Taro 4 最新初始化命令) - `npx @tarojs/cli@latest init frontend`(React + TypeScript) - 安装:`@nutui/nutui-react-taro zustand`(ec-canvas 在里程碑3安装) - alchemy-theme.css → `src/styles/theme.scss`(CSS变量转 SCSS) - 注册所有页面路由 `app.config.ts` 2. **1-B TypeScript Types**(`src/types/`,对应 Pydantic schemas) 3. **5-A/B/C 基础层** - Zustand stores:`sessionStore / quizStore(含 lives=3)/ profileStore(同步 wx.storage)` - API 客户端(`src/services/api.ts`,baseURL=localhost:8000) - 共享组件:`SpiritMeter(3态)/ OptionCard(4态)/ ProgressBar / AlchemistBubble` 4. **6-3 quiz 页面**(6 个状态,严格按原型) - 3-1 单选作答:灵韵仪悬浮右上角 + 题干卡 + 选项卡 + 提交 - 3-2 多选/判断:多选 checkbox 态 - 3-3 答对反馈:题干回顾 + 解析卡 - 3-4 答错反馈:对照双卡 + 写入错题本 + 扣 life - 3-5 灵韵耗尽:失败页(复活/重新/先看解析) - 3-6 通关成功:→ navigate report --- ### 里程碑 3:报告生成页面 1. **6-4 report 页面**(4 个视图) - 4-1 总览:环形图(SVG)+ 掌握度进度条 - 4-2 图谱:ec-canvas + ECharts 力导向图(通过 Context7 获取最新 ec-canvas + Taro 集成方式),节点颜色按掌握度映射(mint/sun/coral) - 4-3 薄弱点:分级列表 + 可执行建议 - 4-4 分享海报:Canvas 2D 绘制 → `Taro.canvasToTempFilePath` → `Taro.saveImageToPhotosAlbum` --- ### 里程碑 4:首页输入接入 1. **6-1 index 页面**(3 个状态) - 1-1 欢迎页:分类 grid + 两个 CTA - 1-2 输入页:textarea + 附件面板(wx.chooseMessageFile → Taro.uploadFile → `/ingest/file`;URL 自动检测 → `/ingest/url`) - 1-3 闯关设置:难度 segment + 题数 stepper → `POST /sessions` + navigate generating 2. **6-2 generating 页面**(4 个状态) - 2-1 进度动画(同步请求 `/generate`,前端模拟进度条) - 2-2 知识提取预览(概念 chips + 误区卡) - 2-3 题目预览卡 - 2-4 确认出发 3. **6-5 profile 页面**(4 个子页) - 5-1 个人中心(从 profileStore 读数据) - 5-2 错题本列表(分类筛选) - 5-3 错题详情(对照卡) - 5-4 VIP+设置(toggle 存 wx.storage) --- ### 相关文件 **后端** — backend/ **前端** — frontend/(待创建) --- 请确认此计划,确认后进入开发执行。
这里需要尤其注意,AI生成的计划不一定对,如果自身有一定的基础,可以结合自身的思想,来让AI生成的更加准确,手动调节计划。
比如直接使用前端Trao官方脚手架、LangChain脚手架这种,又快又准。
https://docs.taro.zone/docs/GETTING-STARTED
执行卡住了,需要人工介入修复



后端的内容:

前端的内容:

Step2:启动服务
启动前后端:

启动失败,开始解决问题。一步一步解决问题即可

前端死机了,先修复后端吧

全流程验证,并且自动修复

自动切线程agent

评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
内容推荐
Day 1✅ 今天做了:学了最基本的DFS,完成了洛谷上相关的4道题⏰ 明天计划:继续刷DFS,并且复习二分📚 今日感悟:码途遥远,道阻且长……
1
Day 38✅ 今天做了:1、扇贝英语单词打卡2、微信阅读15分钟3、英语听说读写4、编程导航学习⏰ 明天计划:待定📚 今日感悟:Keep going!
1
Day 115✅ 今天做了:学习了jdbc⏰ 明天计划:继续学习mysql
0
Day 39✅ 今天做了:1、扇贝英语单词打卡2、微信阅读15分钟3、英语听说读写4、编程导航学习⏰ 明天计划:待定📚 今日感悟:Keep going!
1
Day 116✅ 今天做了:学习了jdbc⏰ 明天计划:学完jdbc
0
