Back to Weknora

需求构建指南

skills/preloaded/openmaic-classroom/references/requirement-builder.md

0.5.13.9 KB
Original Source

需求构建指南

将 WeKnora RAG 检索结果转换为 OpenMAIC 课程生成所需的 requirement 格式。

核心原则

OpenMAIC 的 requirement 字段需要是结构化的教学需求描述,而不是原始文档片段。构建时需考虑:

  1. 教学主题: 明确要教什么
  2. 目标受众: 面向谁教学(如:初学者、专业人士、学生等)
  3. 教学深度: 入门级、中级、高级
  4. 内容范围: 基于哪些知识源构建

转换模板

模板 1: 纯需求(无检索结果)

用户直接描述需求时,直接使用用户描述作为 requirement:

用户: "帮我创建一个关于量子力学的入门课程"
→ requirement: "Create an introductory classroom on quantum mechanics for beginners"

模板 2: 基于 RAG 检索结果

步骤:
1. 使用 knowledge_search 检索相关知识
2. 从检索结果中提取:
   - 核心主题/概念
   - 关键知识点
   - 文档来源信息
3. 构建结构化 requirement

构建格式:

基于以下知识内容,创建一个面向[目标受众]的[深度级别]课程:

核心主题:[从检索结果提取的主要概念]
关键知识点:
- [知识点1]
- [知识点2]
- ...
内容来源:[文档名称列表]

模板 3: 基于单个文档

基于文档《[文档名称]》的内容,创建一个面向[目标受众]的课程,
重点讲解以下方面:
- [用户指定的重点1]
- [用户指定的重点2]

模板 4: 基于多个文档/知识块

综合以下文档内容,创建一个系统的课程:

文档1《[名称1]》: [简要内容摘要]
文档2《[名称2]》: [简要内容摘要]
文档3《[名称3]》: [简要内容摘要]

要求:
- 教学深度:[级别]
- 目标受众:[描述]
- 重点覆盖:[关键主题列表]

示例

示例 1: 技术文档 → 课程

检索结果:
- 文档: "Kubernetes 部署指南.pdf"
- 关键内容: Pod 管理、Service 配置、Ingress 路由、存储卷

构建的 requirement:
"基于 Kubernetes 部署指南,创建一个面向 DevOps 工程师的中级课程。
重点涵盖:Pod 生命周期管理、Service 和 Ingress 网络配置、持久化存储卷管理。
课程应包含实践操作环节。"

示例 2: 产品手册 → 入门课程

检索结果:
- 文档: "产品使用手册 v2.0.pdf"
- 关键内容: 产品概述、快速开始、核心功能、常见问题

构建的 requirement:
"基于产品使用手册 v2.0,为新用户创建一个入门课程。
帮助用户快速了解产品核心功能,掌握基本操作方法,
并能够独立完成常见任务。课程语言为中文。"

示例 3: 研究论文 → 高级课程

检索结果:
- 文档: "Transformer 架构研究综述.pdf"
- 关键内容: Attention 机制、位置编码、多头注意力、训练技巧

构建的 requirement:
"基于 Transformer 架构研究综述,为具有深度学习基础的研究人员
创建高级课程。深入讲解 Attention 机制的数学原理、位置编码的
各种变体、多头注意力的设计动机,以及训练大模型时的实践技巧。"

可选功能配置建议

在构建 request 时,根据用户需求推荐可选功能:

场景推荐功能
技术培训enableWebSearch: true(补充最新技术动态)
产品介绍enableImageGeneration: true(生成产品截图/界面图)
市场营销enableImageGeneration: true, enableVideoGeneration: true
语言教学enableTTS: true(语音朗读)
学术研究默认配置即可(不需要多媒体)

多文档处理

当需要将多个独立文档分别生成课程时:

  1. 为每个文档单独构建 requirement
  2. 依次调用生成 API(不可并行)
  3. 每完成一个即返回 URL,继续下一个
  4. 最终汇总所有 Classroom URL

注意:OpenMAIC 托管模式每天最多 10 次生成配额,本地模式取决于 LLM Provider 配额。