|
@@ -1244,7 +1244,7 @@
|
|
|
v-model="item.task" />
|
|
|
<div class="outline_btn">
|
|
|
<el-tooltip effect="light" content="右键单击可配置提示词" placement="bottom">
|
|
|
- <button class="c_pub_button_confirm2" style="margin: 0px 0px 0px 5px;" @contextmenu.prevent="openAiDialog(1, 'aiOutlineDetail', index)" @click="openAiDialog(2, 'aiOutlineDetail', index)">{{ item.taskDetail2 ? "重新生成大纲" : "生成大纲"}}</button>
|
|
|
+ <button class="c_pub_button_confirm2" style="margin: 0px 0px 0px 5px;" @contextmenu.prevent="openAiDialog(1, 'aiOutlineDetail2', index)" @click="openAiDialog(2, 'aiOutlineDetail2', index)">{{ item.taskDetail2 ? "重新生成任务" : "生成任务"}}</button>
|
|
|
</el-tooltip>
|
|
|
<button class="c_pub_button_confirm2" style="margin: 0px 0px 0px 5px;" @click="addTaskBorder2(1, index)">在上面加入一个任务</button>
|
|
|
<button class="c_pub_button_confirm2" style="margin: 0px 0px 0px 5px;" @click="addTaskBorder2(2, index)">在下面加入一个任务</button>
|
|
@@ -4730,20 +4730,34 @@
|
|
|
}">
|
|
|
<div v-if="itemTask.eList && itemTask.eList.length" class="elist_input">
|
|
|
<div v-for="(eItem, eIndex) in itemTask.eList" :key="eIndex" class="elist_input_box">
|
|
|
- <span>评价维度:</span>
|
|
|
- <!-- <el-tooltip effect="dark" :content="itemTask.eList[eIndex].value || '填写评价维度'" placement="top" popper-class="text_tooltip2"> -->
|
|
|
- <input type="input" v-model="itemTask.eList[eIndex].value" placeholder="填写评价维度" />
|
|
|
- <!-- </el-tooltip> -->
|
|
|
- <!-- <span>评星等级:</span>
|
|
|
- <el-rate v-model="itemTask.eList[eIndex].score" @change="setEListStar()"
|
|
|
- disabled></el-rate> -->
|
|
|
- <div class="remove" @click="
|
|
|
- deletEList(
|
|
|
- unitIndex,
|
|
|
- itemTaskIndex,
|
|
|
- eIndex
|
|
|
- )
|
|
|
- "></div>
|
|
|
+ <div class="elist_inptu_text">
|
|
|
+ <span>目标:</span>
|
|
|
+ <input type="input" v-model="itemTask.eList[eIndex].target" placeholder="填写目标" style="width: 200px;"/>
|
|
|
+ <el-switch
|
|
|
+ style="margin-left: auto;"
|
|
|
+ v-model="itemTask.eList[eIndex].isai"
|
|
|
+ active-text="人工评分"
|
|
|
+ inactive-text="AI评分"
|
|
|
+ active-value="2"
|
|
|
+ inactive-value="1">
|
|
|
+ </el-switch>
|
|
|
+ </div>
|
|
|
+ <div class="elist_inptu_text">
|
|
|
+ <span>评价维度:</span>
|
|
|
+ <!-- <el-tooltip effect="dark" :content="itemTask.eList[eIndex].value || '填写评价维度'" placement="top" popper-class="text_tooltip2"> -->
|
|
|
+ <input type="input" v-model="itemTask.eList[eIndex].value" placeholder="填写评价维度" />
|
|
|
+ <!-- </el-tooltip> -->
|
|
|
+ <!-- <span>评星等级:</span>
|
|
|
+ <el-rate v-model="itemTask.eList[eIndex].score" @change="setEListStar()"
|
|
|
+ disabled></el-rate> -->
|
|
|
+ <div class="remove" @click="
|
|
|
+ deletEList(
|
|
|
+ unitIndex,
|
|
|
+ itemTaskIndex,
|
|
|
+ eIndex
|
|
|
+ )
|
|
|
+ "></div>
|
|
|
+ </div>
|
|
|
<div class="elist_inptu_text">
|
|
|
<span>维度描述:</span>
|
|
|
<!-- <el-tooltip effect="dark" :content="itemTask.eList[eIndex].detail || '填写维度描述'" placement="top" popper-class="text_tooltip2"> -->
|
|
@@ -4957,7 +4971,7 @@
|
|
|
<aiTips ttitle="基础资料" title="生成目标" :detail="aiJson.aiTarget2" pan="aiTarget2" @setAiJson="setAiJson" v-if="!yiKeTemplateArray.includes(templateid)"/>
|
|
|
<aiTips ttitle="基础资料" title="生成大纲按钮" :detail="aiJson.aiOutline" pan="aiOutline" @setAiJson="setAiJson" v-if="templateid != '61c628b9-3d96-11ef-b873-005056b86db5' && templateid != '4480d65a-1e48-11ef-bee5-005056b86db5' && templateid != 'cf5722a4-401b-11ef-b873-005056b86dc3'"/>
|
|
|
<aiTips ttitle="课程大纲" title="大纲任务生成" :detail="aiJson.aiOutlineTask" pan="aiOutlineTask" @setAiJson="setAiJson" v-if="templateid == '61c628b9-3d96-11ef-b873-005056b86db5'"/>
|
|
|
- <aiTips ttitle="课程大纲" title="大纲描述生成(重新生成大纲)" :detail="aiJson.aiOutlineDetail" pan="aiOutlineDetail" @setAiJson="setAiJson"/>
|
|
|
+ <aiTips ttitle="课程大纲" title="大纲描述生成(重新生成任务)" :detail="aiJson.aiOutlineDetail2" pan="aiOutlineDetail2" @setAiJson="setAiJson"/>
|
|
|
<aiTips ttitle="课程大纲" title="大纲描述优化" :detail="aiJson.aiDetail1" pan="aiDetail1" @setAiJson="setAiJson" v-if="templateid != '4480d65a-1e48-11ef-bee5-005056b86db5' || templateid == 'cf5722a4-401b-11ef-b873-005056b86dc3'"/>
|
|
|
<aiTips ttitle="cpote" title="概念群" :detail="aiJson.cpote1" pan="cpote1" @setAiJson="setAiJson" v-if="templateid == '4480d65a-1e48-11ef-bee5-005056b86db5' || templateid == 'cf5722a4-401b-11ef-b873-005056b86dc3'"/>
|
|
|
<aiTips ttitle="cpote" title="问题链" :detail="aiJson.cpote2" pan="cpote2" @setAiJson="setAiJson" v-if="templateid == '4480d65a-1e48-11ef-bee5-005056b86db5' || templateid == 'cf5722a4-401b-11ef-b873-005056b86dc3'"/>
|
|
@@ -7625,6 +7639,24 @@ export default {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
+ let _pan2 = 1
|
|
|
+ for (var k = 0; k < this.unitJson[0].chapterInfo[0].taskJson.length; k++) {
|
|
|
+ if(!this.unitJson[0].chapterInfo[0].taskJson[k].taskDetail2){
|
|
|
+ _pan2 = 2
|
|
|
+ this.$message.error(`请完善任务${k+1}的课程大纲`)
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ if(!this.unitJson[0].chapterInfo[0].taskJson[k].taskDetail3){
|
|
|
+ _pan2 = 2
|
|
|
+ this.$message.error(`请完善任务${k+1}的课程教案`)
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if(_pan2 == 2){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
const functionA = () => {
|
|
|
setTimeout(() => {
|
|
|
this.loading = false
|
|
@@ -9603,7 +9635,7 @@ export default {
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 1, //任务收起状态
|
|
|
+ isFold: 0, //任务收起状态
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -9629,7 +9661,7 @@ export default {
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 1, //任务收起状态
|
|
|
+ isFold: 0, //任务收起状态
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -9650,7 +9682,8 @@ export default {
|
|
|
},
|
|
|
fold(i, e) {
|
|
|
if (
|
|
|
- this.unitJson[this.unitIndex].chapterInfo[0].taskJson[i].isFold == 0
|
|
|
+ this.unitJson[this.unitIndex].chapterInfo[0].taskJson[i].isFold == 0 ||
|
|
|
+ this.unitJson[this.unitIndex].chapterInfo[0].taskJson[i].isFold == 2
|
|
|
) {
|
|
|
this.unitJson[this.unitIndex].chapterInfo[0].taskJson[i].isFold = 1;
|
|
|
} else {
|
|
@@ -10752,7 +10785,7 @@ export default {
|
|
|
this.aiJson.aiTarget = this.aiJson.aiTarget ? this.aiJson.aiTarget : '从用户提供的教案资料中,提取出课程目标(如不存在课程目标则返回“未提取到目标”。注意,在提取信息方面你绝对不能虚拟出不存在的东西。'
|
|
|
this.aiJson.aiSearchFile = this.aiJson.aiSearchFile ? this.aiJson.aiSearchFile : '请根据<关键词>,从你的相应知识库去检索5个最相关的信息。'
|
|
|
this.aiJson.aiTarget2 = this.aiJson.aiTarget2 ? this.aiJson.aiTarget2 : '请根据课程标题<课程标题>,从你的知识库去检索5个最相关的信息'
|
|
|
- this.aiJson.aiOutlineDetail = this.aiJson.aiOutlineDetail ? this.aiJson.aiOutlineDetail : '参考<课程名字>、<任务名>和<课程简要描述>的内容,为该序列生成任务详情。任务详情中需要包含教学目标,任务设计和评价标准。'
|
|
|
+ this.aiJson.aiOutlineDetail2 = this.aiJson.aiOutlineDetail2 ? this.aiJson.aiOutlineDetail2 : '请参考#参考资料,重新生成该任务,生成内容需包含任务名,任务设计,评价标准。注意,你绝对不能重复已有其他任务,也不要输出其他内容'
|
|
|
if(this.templateid == '61c628b9-3d96-11ef-b873-005056b86db5'){
|
|
|
this.aiJson.aiOutlineTask = this.aiJson.aiOutlineTask ? this.aiJson.aiOutlineTask : '请根据<课程名字>以及该课程的<课程简要描述>来为该课程生成100字以内的序列课程任务,序列任务要求彼此连结紧密且没有重复。'
|
|
|
this.aiJson.aiOutlineDetail = this.aiJson.aiOutlineDetail ? this.aiJson.aiOutlineDetail : '参考<课程名字>、<任务名>和<课程简要描述>的内容,为该序列生成任务详情。任务详情中需要包含教学目标,任务设计和评价标准。'
|
|
@@ -12737,7 +12770,7 @@ export default {
|
|
|
this.aiJson.aiTarget = this.aiJson.aiTarget ? this.aiJson.aiTarget : '从用户提供的教案资料中,提取出课程目标(如不存在课程目标则返回“未提取到目标”。注意,在提取信息方面你绝对不能虚拟出不存在的东西。'
|
|
|
this.aiJson.aiSearchFile = this.aiJson.aiSearchFile ? this.aiJson.aiSearchFile : '请根据<关键词>,从你的相应知识库去检索5个最相关的信息。'
|
|
|
this.aiJson.aiTarget2 = this.aiJson.aiTarget2 ? this.aiJson.aiTarget2 : '请根据课程标题<课程标题>,从你的知识库去检索5个最相关的信息'
|
|
|
- this.aiJson.aiOutlineDetail = this.aiJson.aiOutlineDetail ? this.aiJson.aiOutlineDetail : '参考<课程名字>、<任务名>和<课程简要描述>的内容,为该序列生成任务详情。任务详情中需要包含教学目标,任务设计和评价标准。'
|
|
|
+ this.aiJson.aiOutlineDetail2 = this.aiJson.aiOutlineDetail2 ? this.aiJson.aiOutlineDetail2 : '请参考#参考资料,重新生成该任务,生成内容需包含任务名,任务设计,评价标准。注意,你绝对不能重复已有其他任务,也不要输出其他内容'
|
|
|
if(this.templateid == '61c628b9-3d96-11ef-b873-005056b86db5'){
|
|
|
this.aiJson.aiOutlineTask = this.aiJson.aiOutlineTask ? this.aiJson.aiOutlineTask : '请根据<课程名字>以及该课程的<课程简要描述>来为该课程生成100字以内的序列课程任务,序列任务要求彼此连结紧密且没有重复。'
|
|
|
this.aiJson.aiOutlineDetail = this.aiJson.aiOutlineDetail ? this.aiJson.aiOutlineDetail : '参考<课程名字>、<任务名>和<课程简要描述>的内容,为该序列生成任务详情。任务详情中需要包含教学目标,任务设计和评价标准。'
|
|
@@ -12874,7 +12907,7 @@ export default {
|
|
|
this.aiJson.aiTarget = this.aiJson.aiTarget ? this.aiJson.aiTarget : '从用户提供的教案资料中,提取出课程目标(如不存在课程目标则返回“未提取到目标”。注意,在提取信息方面你绝对不能虚拟出不存在的东西。'
|
|
|
this.aiJson.aiSearchFile = this.aiJson.aiSearchFile ? this.aiJson.aiSearchFile : '请根据<关键词>,从你的相应知识库去检索5个最相关的信息。'
|
|
|
this.aiJson.aiTarget2 = this.aiJson.aiTarget2 ? this.aiJson.aiTarget2 : '请根据课程标题<课程标题>,从你的知识库去检索5个最相关的信息'
|
|
|
- this.aiJson.aiOutlineDetail = this.aiJson.aiOutlineDetail ? this.aiJson.aiOutlineDetail : '参考<课程名字>、<任务名>和<课程简要描述>的内容,为该序列生成任务详情。任务详情中需要包含教学目标,任务设计和评价标准。'
|
|
|
+ this.aiJson.aiOutlineDetail2 = this.aiJson.aiOutlineDetail2 ? this.aiJson.aiOutlineDetail2 : '请参考#参考资料,重新生成该任务,生成内容需包含任务名,任务设计,评价标准。注意,你绝对不能重复已有其他任务,也不要输出其他内容'
|
|
|
if(this.templateid == '61c628b9-3d96-11ef-b873-005056b86db5'){
|
|
|
this.aiJson.aiOutlineTask = this.aiJson.aiOutlineTask ? this.aiJson.aiOutlineTask : '请根据<课程名字>以及该课程的<课程简要描述>来为该课程生成100字以内的序列课程任务,序列任务要求彼此连结紧密且没有重复。'
|
|
|
this.aiJson.aiOutlineDetail = this.aiJson.aiOutlineDetail ? this.aiJson.aiOutlineDetail : '参考<课程名字>、<任务名>和<课程简要描述>的内容,为该序列生成任务详情。任务详情中需要包含教学目标,任务设计和评价标准。'
|
|
@@ -14947,7 +14980,7 @@ export default {
|
|
|
// this.aiText = `请根据${this.courseText}设计一个名为${this.courseName}的${sub.length ? sub.join(",") + "学科的" : ""},面向${this.getListClassC(this.checkboxList2)}的项目式学习课程设计序列教学活动(需要每个任务都需要至少50个token的详细描述),每个教学活动的活动设计(可以直接使用文件内容)以及每个教学活动的评价量规(学生能做到...)。`
|
|
|
this.aiText = this.aiJson.aiOutlineTask
|
|
|
this.aiText2 = this.aiJson.aiOutlineDetail
|
|
|
- } else if (type == "aiOutlineDetail") {
|
|
|
+ } else if (type == "aiOutlineDetail2") {
|
|
|
if (this.ttaskDetailLoading.indexOf('task-' + callback) !== -1) {
|
|
|
this.$message({
|
|
|
message: "请回答完毕后再次发送",
|
|
@@ -14962,7 +14995,7 @@ export default {
|
|
|
|
|
|
this.aitype = type
|
|
|
this.aiCallBack = callback
|
|
|
- this.aiText = this.aiJson.aiOutlineDetail
|
|
|
+ this.aiText = this.aiJson.aiOutlineDetail2
|
|
|
} else if (type == "aiTask") {
|
|
|
this.aitype = "aiTask"
|
|
|
var _text = ""
|
|
@@ -15054,6 +15087,7 @@ export default {
|
|
|
});
|
|
|
return;
|
|
|
}
|
|
|
+
|
|
|
this.aitype = "teacherDetail"
|
|
|
// this.aiText = `请根据${callback}\n重新设计该教案。其中包括但不仅限于该任务的教学目标,教学过程,师生研讨,拓展,学生任务单,相关知识点的练习或Qui以及答案等。`
|
|
|
this.aiText = this.aiJson.teacherDetail
|
|
@@ -15067,6 +15101,11 @@ export default {
|
|
|
});
|
|
|
return;
|
|
|
}
|
|
|
+ if(!this.unitJson[0].chapterInfo[0].taskJson[index].task){
|
|
|
+ this.$message.error('请输入任务名称')
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
this.aitype = "teacherDetail2"
|
|
|
// this.aiText = `请根据${callback}\n重新设计该教案。其中包括但不仅限于该任务的教学目标,教学过程,师生研讨,拓展,学生任务单,相关知识点的练习或Qui以及答案等。`
|
|
|
this.aiText = this.aiJson.teacherDetail2 ? this.aiJson.teacherDetail2 : '请根据<任务名>、<任务描述>,<课程简要描述>,为该任务设计详细的教案,教案需要包含该任务的教学目标,教学过程(包含分步骤的教师活动和学生活动,教师活动与学生活动应该一一对应),相关知识点的讲解,练习(练习需要包含示例答案)。'
|
|
@@ -15222,7 +15261,7 @@ ${target ? '课程目标:' + target.replaceAll('#','').replaceAll('*','').repl
|
|
|
detail输出不要输出成json,文本或者markdown都可以
|
|
|
|
|
|
# Format example
|
|
|
-[{"task": "任务名称1","detail": "${txt}"},{"task": "任务名称2","detail": "${txt}"}]`
|
|
|
+[{"task": "任务名称","detail": "${txt}"},{"task": "任务名称","detail": "${txt}"},{"task": "任务名称","detail": "${txt}"},{"task": "任务名称","detail": "${txt}"}]`
|
|
|
|
|
|
this.aiGet2(message, () => {
|
|
|
this.loading = false
|
|
@@ -15257,8 +15296,8 @@ ${target ? '课程目标:' + target.replaceAll('#','').replaceAll('*','').repl
|
|
|
this.loading = false
|
|
|
this.isOutline = true
|
|
|
})
|
|
|
- } else if (this.aitype == "aiOutlineDetail") {
|
|
|
- this.aiOutlineDetail(this.aiJson.aiOutlineDetail, this.aiCallBack)
|
|
|
+ } else if (this.aitype == "aiOutlineDetail2") {
|
|
|
+ this.aiOutlineDetail2(this.aiJson.aiOutlineDetail2, this.aiCallBack)
|
|
|
} else if (this.aitype == "aiTask") {
|
|
|
var _text = ""
|
|
|
for (var i = 0; i < this.unitJson[0].chapterInfo[0].taskJson.length; i++) {
|
|
@@ -15397,7 +15436,7 @@ ${(this.templateid == "4480d65a-1e48-11ef-bee5-005056b86db5" || this.templateid
|
|
|
${(this.templateid != "4480d65a-1e48-11ef-bee5-005056b86db5") ? '## 参考上下文\n'+'课程目标:'+target.replaceAll('#','').replaceAll('*','').replaceAll('-','').replaceAll('\n','') : ''}
|
|
|
|
|
|
## Format example
|
|
|
-[{"task": "任务名称1","detail": "教案输出为文本或markdown格式就行"},{"task": "任务名称2","detail": "教案输出为文本或markdown格式就行"}]`
|
|
|
+[{"task": "任务名称","detail": "教案输出为文本或markdown格式就行"},{"task": "任务名称","detail": "教案输出为文本或markdown格式就行"},{"task": "任务名称","detail": "教案输出为文本或markdown格式就行"},{"task": "任务名称","detail": "教案输出为文本或markdown格式就行"}]`
|
|
|
this.aiGet4(message, () => {
|
|
|
this.loading = false
|
|
|
this.isOutline2 = true
|
|
@@ -15759,7 +15798,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
// ],
|
|
|
// isShowTools: false,
|
|
|
// askCount: 1,
|
|
|
- // isFold: 2,
|
|
|
+ // isFold: 0,
|
|
|
// askTitle: "",
|
|
|
// askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
// checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -15870,7 +15909,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson[i].taskDetail2 = _task.detail
|
|
|
}else {
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson.push({
|
|
|
- task: _task.task,
|
|
|
+ task: _task.task.replaceAll('任务'+(i+1),'').replaceAll(':','').replaceAll(':',''),
|
|
|
taskDetail: "",
|
|
|
taskDetail2: _task.detail,
|
|
|
taskDetail3: "",
|
|
@@ -15888,7 +15927,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 2,
|
|
|
+ isFold: 0,
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -15903,7 +15942,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
for (var i = 0; i < dArray.length; i++) {
|
|
|
let _task = dArray[i]
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson.push({
|
|
|
- task: _task.task,
|
|
|
+ task: _task.task.replaceAll('任务'+(i+1),'').replaceAll(':','').replaceAll(':',''),
|
|
|
taskDetail: "",
|
|
|
taskDetail2: _task.detail,
|
|
|
taskDetail3: "",
|
|
@@ -15921,7 +15960,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 2,
|
|
|
+ isFold: 0,
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -16023,7 +16062,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
// ],
|
|
|
// isShowTools: false,
|
|
|
// askCount: 1,
|
|
|
- // isFold: 2,
|
|
|
+ // isFold: 0,
|
|
|
// askTitle: "",
|
|
|
// askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
// checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -16134,7 +16173,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
// _this.unitJson[0].chapterInfo[0].taskJson[i].taskDetail2 = _task.detail
|
|
|
}else {
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson.push({
|
|
|
- task: _task.task,
|
|
|
+ task: _task.task.replaceAll('任务'+(i+1),'').replaceAll(':','').replaceAll(':',''),
|
|
|
taskDetail: "",
|
|
|
taskDetail2: "",
|
|
|
taskDetail3: "",
|
|
@@ -16152,7 +16191,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 2,
|
|
|
+ isFold: 0,
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -16167,7 +16206,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
for (var i = 0; i < dArray.length; i++) {
|
|
|
let _task = dArray[i]
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson.push({
|
|
|
- task: _task.task,
|
|
|
+ task: _task.task.replaceAll('任务'+(i+1),'').replaceAll(':','').replaceAll(':',''),
|
|
|
taskDetail: "",
|
|
|
taskDetail2: "",
|
|
|
taskDetail3: "",
|
|
@@ -16185,7 +16224,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 2,
|
|
|
+ isFold: 0,
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -16278,7 +16317,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
// ],
|
|
|
// isShowTools: false,
|
|
|
// askCount: 1,
|
|
|
- // isFold: 2,
|
|
|
+ // isFold: 0,
|
|
|
// askTitle: "",
|
|
|
// askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
// checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -16389,7 +16428,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
// _this.unitJson[0].chapterInfo[0].taskJson[i].taskDetail2 = _task.detail
|
|
|
}else {
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson.push({
|
|
|
- task: _task.task,
|
|
|
+ task: _task.task.replaceAll('任务'+(i+1),'').replaceAll(':','').replaceAll(':',''),
|
|
|
taskDetail: "",
|
|
|
taskDetail2: "",
|
|
|
taskDetail3: "",
|
|
@@ -16407,7 +16446,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 2,
|
|
|
+ isFold: 0,
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -16422,7 +16461,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
for (var i = 0; i < dArray.length; i++) {
|
|
|
let _task = dArray[i]
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson.push({
|
|
|
- task: _task.task,
|
|
|
+ task: _task.task.replaceAll('任务'+(i+1),'').replaceAll(':','').replaceAll(':',''),
|
|
|
taskDetail: "",
|
|
|
taskDetail2: "",
|
|
|
taskDetail3: "",
|
|
@@ -16440,7 +16479,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 2,
|
|
|
+ isFold: 0,
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -16946,6 +16985,7 @@ ${this.courseText && this.aiCallback == 2 ? '注意,优化原有的<参考内
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson[index].chapterData = []
|
|
|
if(!_task.toolChoose || (_task.detail && _task.detail.length < 20) || !_task.detail){
|
|
|
console.log("error_________________JSON不对重新生成");
|
|
|
+ _this.$message.error('哎呀,网络波动了...小可正在为您重新生成中...')
|
|
|
_this.aiGet32(messages, index)
|
|
|
return;
|
|
|
}
|
|
@@ -17409,7 +17449,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
// ],
|
|
|
// isShowTools: false,
|
|
|
// askCount: 1,
|
|
|
- // isFold: 2,
|
|
|
+ // isFold: 0,
|
|
|
// askTitle: "",
|
|
|
// askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
// checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -17444,7 +17484,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
// ],
|
|
|
// isShowTools: false,
|
|
|
// askCount: 1,
|
|
|
- // isFold: 2,
|
|
|
+ // isFold: 0,
|
|
|
// askTitle: "",
|
|
|
// askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
// checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -17509,6 +17549,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
// dArray = JSON.parse(jsonString);
|
|
|
} catch (error) {
|
|
|
_this.aiGet4(messages, callback)
|
|
|
+ _this.$message.error('哎呀,网络波动了...小可正在为您重新生成中...')
|
|
|
console.log("error_________________" + error);
|
|
|
return;
|
|
|
console.log("error_________________" + error);
|
|
@@ -17530,7 +17571,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson[i].taskDetail3 = _task.detail
|
|
|
}else {
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson.push({
|
|
|
- task: _task.task,
|
|
|
+ task: _task.task.replaceAll('任务'+(i+1),'').replaceAll(':','').replaceAll(':',''),
|
|
|
taskDetail: "",
|
|
|
taskDetail2: "",
|
|
|
taskDetail3: _task.detail,
|
|
@@ -17548,7 +17589,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 2,
|
|
|
+ isFold: 0,
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -17562,7 +17603,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
for (var i = 0; i < dArray.length; i++) {
|
|
|
let _task = dArray[i]
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson.push({
|
|
|
- task: _task.task,
|
|
|
+ task: _task.task.replaceAll('任务'+(i+1),'').replaceAll(':','').replaceAll(':',''),
|
|
|
taskDetail: "",
|
|
|
taskDetail2: "",
|
|
|
taskDetail3: _task.detail,
|
|
@@ -17580,7 +17621,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 2,
|
|
|
+ isFold: 0,
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -17598,7 +17639,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson[i].taskDetail3 = _task.detail
|
|
|
}else {
|
|
|
_this.unitJson[0].chapterInfo[0].taskJson[i] = {
|
|
|
- task: _task.task,
|
|
|
+ task: _task.task.replaceAll('任务'+(i+1),'').replaceAll(':','').replaceAll(':',''),
|
|
|
taskDetail: "",
|
|
|
taskDetail2: "",
|
|
|
taskDetail3: _task.detail,
|
|
@@ -17616,7 +17657,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
],
|
|
|
isShowTools: false,
|
|
|
askCount: 1,
|
|
|
- isFold: 2,
|
|
|
+ isFold: 0,
|
|
|
askTitle: "",
|
|
|
askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
checkJson: [{ checkCount: [], checkPerent: [] }],
|
|
@@ -17628,6 +17669,7 @@ ${_this.unitJson[0].chapterInfo[0].taskJson[_this.taskCount].taskDetail3.replace
|
|
|
_this.$forceUpdate();
|
|
|
}
|
|
|
} catch (error) {
|
|
|
+ _this.$message.error('哎呀,网络波动了...小可正在为您重新生成中...')
|
|
|
_this.aiGet4(messages, callback)
|
|
|
console.log("error_________________" + error);
|
|
|
return;
|
|
@@ -17845,6 +17887,133 @@ ${target ? '课程目标:' + target.replaceAll('#','').replaceAll('*','').repl
|
|
|
评价标准:评价标准。 内容不要以markdown形式出现,只需要口语化的形式
|
|
|
`
|
|
|
|
|
|
+// -------- #补充参考资料和
|
|
|
+// ## 补充参考资料
|
|
|
+// - 补充资料:${url.join(",")}
|
|
|
+// - 补充描述:${_this.courseText2}
|
|
|
+ _this.taskDetailLoading.push(_tindex)
|
|
|
+ _this.ttaskDetailLoading.push(_tindex)
|
|
|
+ let _uuid = uuidv4();
|
|
|
+ // let params = JSON.stringify({
|
|
|
+ // // "model": "Chat",
|
|
|
+ // model: 'gpt-3.5-turbo',
|
|
|
+ // temperature: 0,
|
|
|
+ // max_tokens: 4096,
|
|
|
+ // top_p: 1,
|
|
|
+ // frequency_penalty: 0,
|
|
|
+ // presence_penalty: 0,
|
|
|
+ // messages: [{
|
|
|
+ // content: messages,
|
|
|
+ // role: 'user'
|
|
|
+ // }],
|
|
|
+ // uid: _uuid,
|
|
|
+ // mind_map_question: "",
|
|
|
+ // })
|
|
|
+ let params = {
|
|
|
+ assistant_id: 'f8e1ebb2-2e0d-11ef-8bf4-12e77c4cb76b',
|
|
|
+ message: [{"type":"text", "text":messages.replaceAll('\n', " ").replaceAll('*', "")}],
|
|
|
+ session_name: _uuid,
|
|
|
+ userId: _this.userid,
|
|
|
+ uid: _uuid,
|
|
|
+ file_ids: fileid.length ? [...fileid] : '',
|
|
|
+ }
|
|
|
+ // let params = JSON.stringify({
|
|
|
+ // message: {
|
|
|
+ // anthropic_version: "bedrock-2023-05-31",
|
|
|
+ // max_tokens: 4096,
|
|
|
+ // temperature: 0,
|
|
|
+ // top_p: 1,
|
|
|
+ // messages: [{
|
|
|
+ // "role": "user",
|
|
|
+ // "content": messages
|
|
|
+ // }] ,
|
|
|
+ // },
|
|
|
+ // uid: _uuid,
|
|
|
+ // model: "Claude 3 Sonnet" // Claude 3 Sonnet或者Claude 3 Haiku
|
|
|
+ // });
|
|
|
+ // _this.ajax.post('https://gpt4.cocorobo.cn/chat', params).then(function (response) {
|
|
|
+ _this.ajax.post('https://gpt4.cocorobo.cn/ai_agent_park_chat_new', params).then(function (response) {
|
|
|
+ // _this.ajax.post('https://claude3.cocorobo.cn/chat', params).then(function (response) {
|
|
|
+ console.log(response);
|
|
|
+ // let data = response.data.FunctionResponse
|
|
|
+ // if (data.choices && data.choices.length && data.choices[0].message) {
|
|
|
+ // console.log(data.choices[0].message.content);
|
|
|
+ // _this.unitJson[0].chapterInfo[0].taskJson[_tindex2].taskDetail2 = data.choices[0].message.content
|
|
|
+ // _this.$forceUpdate()
|
|
|
+ // }
|
|
|
+
|
|
|
+ if (converter(response.data.FunctionResponse.result) == converter("发送成功")) {
|
|
|
+ _this.unitJson[0].chapterInfo[0].taskJson[_tindex2].isTask2 = false
|
|
|
+ } else {
|
|
|
+ _this.$message.warning(response.data.FunctionResponse.result);
|
|
|
+ }
|
|
|
+
|
|
|
+ // _this.taskDetailLoading.splice(_this.taskDetailLoading.indexOf(_tindex), 1)
|
|
|
+ }).catch(function (error) {
|
|
|
+ _this.taskDetailLoading.splice(_this.taskDetailLoading.indexOf(_tindex), 1)
|
|
|
+ _this.ttaskDetailLoading.splice(_this.ttaskDetailLoading.indexOf(_tindex), 1)
|
|
|
+ console.log(error);
|
|
|
+ });
|
|
|
+ await _this.aiOutlineDetailgetAiContent(_uuid, _tindex, _tindex2)
|
|
|
+ },
|
|
|
+ async aiOutlineDetail2(msg, index) {
|
|
|
+ let _this = this
|
|
|
+ const _tindex = 'task-' + index
|
|
|
+ const _tindex2 = index
|
|
|
+
|
|
|
+ let fileid = _this.isFileSearch ? [..._this.fileIds] : []
|
|
|
+ if (_this.infoData.length) {
|
|
|
+ for (var i = 0; i < _this.infoData.length; i++) {
|
|
|
+ if(_this.infoData[i].fileid){
|
|
|
+ fileid.push(_this.infoData[i].fileid)
|
|
|
+ }else {
|
|
|
+ let _fileid = await _this.createFileid(_this.infoData[i].url)
|
|
|
+ if(_fileid){
|
|
|
+ _this.infoData[i].fileid = _fileid
|
|
|
+ _this.$forceUpdate();
|
|
|
+ fileid.push(_fileid)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ let url = []
|
|
|
+ if (this.infoData.length) {
|
|
|
+ for (var i = 0; i < this.infoData.length; i++) {
|
|
|
+ url.push(this.infoData[i].url)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ let target = _this.targetCourseText2 ? _this.targetCourseText2 : _this.targetcoursetext
|
|
|
+ let taskArray = []
|
|
|
+ for (var k = 0; k < this.unitJson[0].chapterInfo[0].taskJson.length; k++) {
|
|
|
+ // _text += `任务名称:${this.unitJson[0].chapterInfo[0].taskJson[i].task}`
|
|
|
+ if(k != index){
|
|
|
+ taskArray.push(this.unitJson[0].chapterInfo[0].taskJson[k].task)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ let messages = `NOTICE
|
|
|
+Role: 你是创建课程的老师,内容不要以markdown形式出现,只需要口语化的形式。
|
|
|
+Language: Please use the same language as the user requirement, if the user speaks Chinese, the specific text of your answer should also be in Chinese.
|
|
|
+ATTENTION: Use '##' to SPLIT SECTIONS, not '#'. Output format carefully referenced "Format example".
|
|
|
+Instruction: Based on the context, follow "Format example", write content.
|
|
|
+
|
|
|
+#Context
|
|
|
+## 要求
|
|
|
+${msg}
|
|
|
+
|
|
|
+## 参考信息
|
|
|
+课程名字:${_this.courseName}
|
|
|
+任务名称:${_this.aiCallBack.task ? _this.aiCallBack.task : _this.unitJson[0].chapterInfo[0].taskJson[_tindex2].task}
|
|
|
+${_this.courseText ? '课程简要描述:' + _this.courseText : ''}
|
|
|
+${target ? '课程目标:' + target.replaceAll('#','').replaceAll('*','').replaceAll('-','').replaceAll('\n','') : ''}
|
|
|
+${taskArray.length ? '其他任务大纲名字:' + taskArray.join(',') : ''}
|
|
|
+
|
|
|
+# Format example
|
|
|
+教学目标:教学目标。
|
|
|
+任务设计:任务设计。
|
|
|
+评价标准:评价标准。 内容不要以markdown形式出现,只需要口语化的形式
|
|
|
+`
|
|
|
+
|
|
|
// -------- #补充参考资料和
|
|
|
// ## 补充参考资料
|
|
|
// - 补充资料:${url.join(",")}
|
|
@@ -17928,6 +18097,9 @@ ${target ? '课程目标:' + target.replaceAll('#','').replaceAll('*','').repl
|
|
|
_mdText = _mdText.replace("_", "");
|
|
|
_source.close();
|
|
|
this.unitJson[0].chapterInfo[0].taskJson[_tindex2].taskDetail2 = _mdText;
|
|
|
+ if(!this.unitJson[0].chapterInfo[0].taskJson[_tindex2].taskDetail3 && this.isOutline2){
|
|
|
+ this.aiDetail52(this.aiJson['teacherDetail2'], _tindex2)
|
|
|
+ }
|
|
|
this.taskDetailLoading.splice(this.taskDetailLoading.indexOf(loading), 1)
|
|
|
this.ttaskDetailLoading.splice(this.ttaskDetailLoading.indexOf(loading), 1)
|
|
|
return;
|
|
@@ -18642,6 +18814,7 @@ ${(_this.templateid == "4480d65a-1e48-11ef-bee5-005056b86db5" || _this.templatei
|
|
|
// }
|
|
|
// _this.taskDetailLoading2.splice(_this.taskDetailLoading.indexOf(_tindex), 1)
|
|
|
if (converter(response.data.FunctionResponse.result) == converter("发送成功")) {
|
|
|
+ _this.unitJson[0].chapterInfo[0].taskJson[_tindex2].isTask3 = false
|
|
|
} else {
|
|
|
_this.$message.warning(response.data.FunctionResponse.result);
|
|
|
}
|
|
@@ -19437,7 +19610,7 @@ ${this.targetCourseText && this.aiCallback == 2 ? '注意,优化原有的<参
|
|
|
// ],
|
|
|
// isShowTools: false,
|
|
|
// askCount: 1,
|
|
|
- // isFold: 2,
|
|
|
+ // isFold: 0,
|
|
|
// askTitle: "",
|
|
|
// askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
|
|
|
// checkJson: [{ checkCount: [], checkPerent: [] }],
|