|
@@ -8,7 +8,7 @@
|
|
|
<div class="scoreTit">
|
|
|
<div>任务得分</div>
|
|
|
<div>
|
|
|
- <span style="color: rgba(54, 129, 252, 1);margin-right: 3px;">{{
|
|
|
+ <span style="color: #4380F8;margin-right: 3px;">{{
|
|
|
totalScore ? totalScore : 0
|
|
|
}}</span
|
|
|
>分
|
|
@@ -590,12 +590,11 @@ export default {
|
|
|
this.selectSWorksData();
|
|
|
},
|
|
|
methods: {
|
|
|
+ setZero(index){
|
|
|
+ console.log(index);
|
|
|
+ console.log('scoTitList',this.scoTitList);
|
|
|
+ },
|
|
|
async anewEva() {
|
|
|
- // if (!this.textarea) {
|
|
|
- // return this.$message.info("请先进行AI评分获取评语~");
|
|
|
- // }
|
|
|
- // return console.log('this.scoTitList',this.scoTitList);
|
|
|
-
|
|
|
this.ScLoading = true;
|
|
|
|
|
|
let _fileid = "";
|
|
@@ -607,16 +606,16 @@ export default {
|
|
|
_fileid = await this.createFileid(this.currentUid.content);
|
|
|
}
|
|
|
|
|
|
- let sco = "";
|
|
|
+ let sco = ""; //分数
|
|
|
this.scoTitList.forEach(e => {
|
|
|
- sco += `${e.detail}:${e.cog}星,`;
|
|
|
+ sco += `${e.detail}:${e.cog}星。`;
|
|
|
});
|
|
|
|
|
|
let con = this.cuScoCon;
|
|
|
|
|
|
- let std = "";
|
|
|
+ let std = ""; //维度
|
|
|
let tit = [];
|
|
|
- let laws = "";
|
|
|
+ let laws = ""; //细则
|
|
|
if (this.tool.eList && this.tool.eList.length) {
|
|
|
tit = JSON.parse(JSON.stringify(this.tool.eList));
|
|
|
} else {
|
|
@@ -626,7 +625,7 @@ export default {
|
|
|
if (this.tool.eList && this.tool.eList.length) {
|
|
|
for (let i = 0; i < this.tool.eList.length; i++) {
|
|
|
if (this.tool.eList[i].isai == 1) {
|
|
|
- laws += `细则${i}:${this.tool.eList[i].rule}, \n`;
|
|
|
+ laws += `${this.tool.eList[i].rule}。 \n`;
|
|
|
}
|
|
|
}
|
|
|
for (let i = 0; i < this.tool.eList.length; i++) {
|
|
@@ -639,21 +638,13 @@ export default {
|
|
|
} else {
|
|
|
result = a;
|
|
|
}
|
|
|
- std += `纬度${i}:“${result}”, \n`;
|
|
|
+ std += `${result}。 \n`;
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
for (let i = 0; i < tit.length; i++) {
|
|
|
if (tit[i].isai == 1) {
|
|
|
- let a = tit[i].detail;
|
|
|
- let result = "";
|
|
|
-
|
|
|
- if (isNaN(parseFloat(a)) && a) {
|
|
|
- result = a.match(/[\u4e00-\u9fa5a-zA-Z]+/g).join("");
|
|
|
- } else {
|
|
|
- result = a;
|
|
|
- }
|
|
|
- laws += ` 细则${i}:${tit[i].rule}, \n`;
|
|
|
+ laws += ` ${tit[i].rule}。 \n`;
|
|
|
}
|
|
|
}
|
|
|
for (let i = 0; i < tit.length; i++) {
|
|
@@ -666,7 +657,7 @@ export default {
|
|
|
} else {
|
|
|
result = a;
|
|
|
}
|
|
|
- std += `纬度${i}:“${result}”, \n`;
|
|
|
+ std += `${result}。 \n`;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -680,31 +671,33 @@ export default {
|
|
|
|
|
|
#目标#
|
|
|
你要结合<作业内容><评价标准>和该标准对应的<等级>写评语。
|
|
|
- 当作业内容与<评价细则>无关,或者缺乏原创性会被直接评为0星。此时你可以输出评语“==期待看到你自己的想法!必要时,可以请教老师哦~==”
|
|
|
+ 当作业内容与评价细则无关,或者缺乏原创性会被直接评为0星。此时你可以输出评语“期待看到你自己的想法!必要时,可以请教老师哦~”
|
|
|
+ ${this.currentUid.type == 1 ? "提取图片内容进行评价" : ""}
|
|
|
|
|
|
|
|
|
#评分资料#
|
|
|
评价标准:${std}
|
|
|
+ 评价细则:${laws}
|
|
|
等级:${sco}
|
|
|
作业内容:${_fileid ? "上传的文件内容" : con}
|
|
|
|
|
|
|
|
|
#输出要求#
|
|
|
“评语”字数控制在150字左右,参考输出范例。
|
|
|
- 只输出评价内容,不要输出其他无关内容!
|
|
|
+ 严格输出按照格式输出json格式。只输出json格式的内容,其他内容不要输出!
|
|
|
|
|
|
|
|
|
#输出格式#
|
|
|
- ==
|
|
|
- 学生能够全面且正确地描述光合作用中氧气和葡萄糖的生成过程,涵盖光反应和暗反应的每个阶段和主要反应物及产物。同时,学生也能够全面、准确地解释氧气和葡萄糖在植物生命活动中的重要作用,并展示了对光合作用的深入理解。论文结构良好,内容详实,逻辑清晰,论据充分。
|
|
|
- ==
|
|
|
+ [{'comment':'评语(150个汉字左右)'}]
|
|
|
+
|
|
|
|
|
|
#输出范例#
|
|
|
- 学生能够全面且正确地描述光合作用中氧气和葡萄糖的生成过程,涵盖光反应和暗反应的每个阶段和主要反应物及产物。同时,学生也能够全面、准确地解释氧气和葡萄糖在植物生命活动中的重要作用,并展示了对光合作用的深入理解。论文结构良好,内容详实,逻辑清晰,论据充分。
|
|
|
+ [{'comment':'学生能够全面且正确地描述光合作用中氧气和葡萄糖的生成过程,涵盖光反应和暗反应的每个阶段和主要反应物及产物。同时,学生也能够全面、准确地解释氧气和葡萄糖在植物生命活动中的重要作用,并展示了对光合作用的深入理解。论文结构良好,内容详实,逻辑清晰,论据充分。'}]
|
|
|
`;
|
|
|
+ // console.log("messages", messages);
|
|
|
|
|
|
let params = {
|
|
|
- assistant_id: "f8e1ebb2-2e0d-11ef-8bf4-12e77c4cb76b",
|
|
|
+ assistant_id: "6063369f-289a-11ef-8bf4-12e77c4cb76b",
|
|
|
message: [
|
|
|
{
|
|
|
type: "text",
|
|
@@ -722,17 +715,47 @@ export default {
|
|
|
.then(response => {
|
|
|
let data = response.data.FunctionResponse;
|
|
|
console.log("data", data);
|
|
|
- // 找到第一个等号的位置
|
|
|
- const startIndex = data.message.indexOf("==") + 2;
|
|
|
- // 找到最后一个等号的位置
|
|
|
- const endIndex = data.message.lastIndexOf("==");
|
|
|
+ if (data.message) {
|
|
|
+ let dArray = {};
|
|
|
+ try {
|
|
|
+ dArray = JSON.parse(
|
|
|
+ data.message.replaceAll("```json", "").replaceAll("```", "")
|
|
|
+ );
|
|
|
+ } catch (error) {
|
|
|
+ console.log("error_________________" + error);
|
|
|
+ try {
|
|
|
+ let regex = new RegExp("(?<=```json)([\\s\\S]*?)(?=```)");
|
|
|
|
|
|
- // 提取中间的文字
|
|
|
- const extractedText = data.message
|
|
|
- .substring(startIndex, endIndex)
|
|
|
- .trim();
|
|
|
+ let match = data.message.match(regex);
|
|
|
+ dArray = JSON.parse(
|
|
|
+ match[0]
|
|
|
+ .replace(/\n/g, "")
|
|
|
+ .replace(/\s{2,}/g, "")
|
|
|
+ .replace(/\'/g, '"')
|
|
|
+ );
|
|
|
+ } catch (error) {
|
|
|
+ try {
|
|
|
+ dArray = JSON.parse(
|
|
|
+ data.message
|
|
|
+ .replaceAll("```json", "")
|
|
|
+ .replaceAll("# Solution", "")
|
|
|
+ .replaceAll("```", "")
|
|
|
+ .replace(/\n/g, "")
|
|
|
+ .replace(/\s{2,}/g, "")
|
|
|
+ .replace(/\'/g, '"')
|
|
|
+ );
|
|
|
+ } catch (error) {
|
|
|
+ console.log("error_________________" + error);
|
|
|
|
|
|
- this.textarea = extractedText;
|
|
|
+ this.anewEva();
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ console.log("error_________________" + error);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ console.log("dArray", dArray);
|
|
|
+ this.textarea = dArray[0].comment;
|
|
|
+ }
|
|
|
this.submit()
|
|
|
this.$message.success("重新生成完成");
|
|
|
|
|
@@ -740,9 +763,7 @@ export default {
|
|
|
})
|
|
|
.catch(error => {
|
|
|
this.ScLoading = false;
|
|
|
-
|
|
|
this.$message.error("重新生成失败");
|
|
|
-
|
|
|
console.log(error);
|
|
|
});
|
|
|
},
|
|
@@ -1906,7 +1927,7 @@ export default {
|
|
|
right: 22px;
|
|
|
color: #12b0ff;
|
|
|
cursor: pointer;
|
|
|
- font-size: 16px;
|
|
|
+ font-size: 14px;
|
|
|
transform: translate(0px, 2px);
|
|
|
}
|
|
|
</style>
|