feat: update AI lesson plan modules

dev-QQq
chenyuan 4 weeks ago
parent 5af64c49bf
commit 4009e939ff

@ -0,0 +1,21 @@
const LESSON_PLAN_MODULES = [
"互联网产品开发基础认知",
"市场洞察与需求分析",
"产品规划与设计",
"产品开发与测试验证",
"产品上线与运营推广",
"综合实训",
];
function buildTeachingPlanPrompt(moduleName) {
return `请为“互联网产品开发实训课程”的“${moduleName}”模块生成一份实训教案。
请按以下结构输出
1. 教学目标
2. 实训任务
3. 实施步骤
4. 预期成果
5. 评价要点
内容应贴合互联网产品开发的真实业务场景并给出可直接用于课堂组织的说明`;
}
module.exports = { LESSON_PLAN_MODULES, buildTeachingPlanPrompt };

@ -21,20 +21,15 @@
</div> </div>
</template> </template>
<script setup> <script setup>
import * as scoreApi from "@/api/teacher.js"; import { LESSON_PLAN_MODULES, buildTeachingPlanPrompt } from "./lessonPlanPrompt.cjs";
import useUserStore from "@/store/modules/user";
const userStore = useUserStore();
const { proxy } = getCurrentInstance(); const { proxy } = getCurrentInstance();
const router = useRouter(); const router = useRouter();
const roleId = computed(() => { const dialogue = LESSON_PLAN_MODULES;
return userStore.userInfo.roleId;
});
const dialogue = ref(["市场需求挖掘", "产品规划", "产品投放测试", "供应渠道管理", "产品评估与考核"]); //
const col = ["#4db7c1", "#3169b5", "#d8a03b", "#6570e3", "#ed8989", "#46a8b2", "#2f66b1"]; const col = ["#4db7c1", "#3169b5", "#d8a03b", "#6570e3", "#ed8989", "#46a8b2", "#2f66b1"];
const generateTeachingPlan = (val) => { const generateTeachingPlan = (val) => {
proxy.$cache.session.remove("scoreList"); proxy.$cache.session.remove("scoreList");
proxy.$cache.session.remove("msg"); proxy.$cache.session.remove("msg");
proxy.$cache.session.setJSON("teachingPlan", `请生成一个电商互联网实训课程中${val}的实训教案`); proxy.$cache.session.setJSON("teachingPlan", buildTeachingPlanPrompt(val));
router.push("/ai/learning-situation-dialogue"); router.push("/ai/learning-situation-dialogue");
}; };
onMounted(() => {}); onMounted(() => {});
@ -108,4 +103,4 @@ onMounted(() => {});
} }
} }
} }
</style> </style>

@ -0,0 +1,25 @@
const assert = require("assert");
const {
LESSON_PLAN_MODULES,
buildTeachingPlanPrompt,
} = require("../src/views/analysis-of-students/lessonPlanPrompt.cjs");
const expectedModules = [
"互联网产品开发基础认知",
"市场洞察与需求分析",
"产品规划与设计",
"产品开发与测试验证",
"产品上线与运营推广",
"综合实训",
];
assert.deepStrictEqual(LESSON_PLAN_MODULES, expectedModules, "lesson-plan module selector must expose the six current modules");
const prompt = buildTeachingPlanPrompt("市场洞察与需求分析");
assert.match(prompt, /互联网产品开发实训课程/, "prompt must identify the course");
assert.match(prompt, /市场洞察与需求分析/, "prompt must identify the selected module");
for (const section of ["教学目标", "实训任务", "实施步骤", "预期成果", "评价要点"]) {
assert.match(prompt, new RegExp(section), `prompt must require ${section}`);
}
console.log("AI training lesson plan checks passed");
Loading…
Cancel
Save