SanHQin 6 months ago
parent
commit
a437065cd2
1 changed files with 111 additions and 50 deletions
  1. 111 50
      src/components/pages/aiAddCourse/aiBoxRight.vue

+ 111 - 50
src/components/pages/aiAddCourse/aiBoxRight.vue

@@ -10,7 +10,13 @@
         </div>
         <div style="margin-top:20px;margin-bottom:20px ; margin-right: auto;">
           <div class="role">
-            <img :src="item.fileid?item.fileid:require('../../../assets/icon/new/role1.png')" />
+            <img
+              :src="
+                item.fileid
+                  ? item.fileid
+                  : require('../../../assets/icon/new/role1.png')
+              "
+            />
           </div>
           <div
             element-loading-background="#f6f9ff"
@@ -128,6 +134,10 @@
           </svg>
           <span>清屏</span>
         </span>
+        <div>
+          <el-switch v-model="continuous"></el-switch>
+          <span @click.stop="continuous = !continuous">连续对话</span>
+        </div>
       </div>
 
       <div
@@ -166,7 +176,7 @@
         </div>
       </div>
 
-			<!-- <div class="ai_b_i_textListBox">
+      <!-- <div class="ai_b_i_textListBox">
 				<div class="ai_b_i_tlb_left"></div>
 				<div class="ai_b_i_tlb_right"></div>
 			</div> -->
@@ -249,34 +259,70 @@ export default {
       textareaHeight: 50,
       publicRoleList: [],
       roleList: [],
-			textList:[
-				{
-					title:"项目式学习",
-					dataList:['请给我一些学生开展项目式学习可以使用的主题或问题参考,请说出学生将要解决的问题,以及学生要经历怎样的学习活动。','请将一个关于生态保护项目的项目式学习展开描述,你需要描述学生如何解决这个问题,你需要至少写出四个活动,这些活动需要按照前后逻辑关系排列。','请对驱动问题为“如何为学校建造一个富有特色的花坛?”的项目式学习进行子问题拆解,至少拆解为5个子问题,并根据子问题对应写出各环节的主要活动。']
-				},{
-					title:"教学评价",
-					dataList:['如果需要给学生的社区服务进行评价,给出评价维度和至少3个等级的表现描述。','为6年级学生设计一份关于梧桐山研究报告的评估任务表,并给出参考的报告流程,至少包含8个步骤,并包括地图、图片和至少300个词。','创建一个给5年级学生使用的课堂小测试,包含5道多选题,评价学生对于太阳能这个概念的理解。你需要给出题目和正确答案。']
-				},{
-					title:"教学设计",
-					dataList:['如果需要5年级学生感受“移步换景”的景观写作手法,你有什么合适的阅读材料推荐?你需要给出材料名称,以及材料的哪部分内容。','设计一个针对8年级学生且关于人类迁徙主题的地理课,并在课程中设计至少1项小组活动。','设计一个针对5年级学生的课程,课程综合科学和信息技术领域,解决生物与环境领域的生活问题,你需要给出完整的课程框架和活动。','如果3年级的学生不能理解光合作用的实现过程,需要你帮我设计一个支持他们理解的教学活动,需要包含活动的形式、实施材料和清单。','请基于贝叶斯定理为8年级学生出三道题目。','如果需要八年级学生了解尼罗河流域的文化发展史,你有哪些推荐的网站或参考书籍?']
-				},{
-					title:"班级管理",
-					dataList:['创建一组给一年级学生使用的班级口号,要求大家注意卫生、保护环境,口号需要对仗工整,符合一年级学生的理解水平。',' 设计一套用于6年级学生的班级管理规章制度,内容需要包括学习、纪律、卫生、思想品德方面。']
-				},{
-					title:"课堂组织",
-					dataList:['请为“制作垃圾分类宣传单”的小组活动设计小组分工表,每个小组的成员为4-6人。','请给5年级“校园植物图鉴”社团课程设计一份小组合作公约,需包含小组成员信息、小组项目目标、填写日期,总长度不超过300字,并且提供至少3处学生自行填写的部分。','请用苏格拉底提问的方式,引导5年级学生拆解驱动问题:如何解决教室黑板反光的问题?其中需包含对于反光原因的分析与实验探究。']
-				},{
-					title:"教师发展",
-					dataList:['教师需要理解项目式学习的理论基础和基础概念,你需要生成一份阅读清单,要求内容为中文书籍或文献。','设计一个教师进行个人学期总结的框架,需要体现在教学、教研、个人学习方面的进步。']
-				},{
-					title:"代码分析",
-					dataList:['这段代码实现了什么效果?','请描述这段代码。','根据这段代码,给我一些修改意见。']
-				},
-			],
-			showTextList:false,
+      textList: [
+        {
+          title: "项目式学习",
+          dataList: [
+            "请给我一些学生开展项目式学习可以使用的主题或问题参考,请说出学生将要解决的问题,以及学生要经历怎样的学习活动。",
+            "请将一个关于生态保护项目的项目式学习展开描述,你需要描述学生如何解决这个问题,你需要至少写出四个活动,这些活动需要按照前后逻辑关系排列。",
+            "请对驱动问题为“如何为学校建造一个富有特色的花坛?”的项目式学习进行子问题拆解,至少拆解为5个子问题,并根据子问题对应写出各环节的主要活动。"
+          ]
+        },
+        {
+          title: "教学评价",
+          dataList: [
+            "如果需要给学生的社区服务进行评价,给出评价维度和至少3个等级的表现描述。",
+            "为6年级学生设计一份关于梧桐山研究报告的评估任务表,并给出参考的报告流程,至少包含8个步骤,并包括地图、图片和至少300个词。",
+            "创建一个给5年级学生使用的课堂小测试,包含5道多选题,评价学生对于太阳能这个概念的理解。你需要给出题目和正确答案。"
+          ]
+        },
+        {
+          title: "教学设计",
+          dataList: [
+            "如果需要5年级学生感受“移步换景”的景观写作手法,你有什么合适的阅读材料推荐?你需要给出材料名称,以及材料的哪部分内容。",
+            "设计一个针对8年级学生且关于人类迁徙主题的地理课,并在课程中设计至少1项小组活动。",
+            "设计一个针对5年级学生的课程,课程综合科学和信息技术领域,解决生物与环境领域的生活问题,你需要给出完整的课程框架和活动。",
+            "如果3年级的学生不能理解光合作用的实现过程,需要你帮我设计一个支持他们理解的教学活动,需要包含活动的形式、实施材料和清单。",
+            "请基于贝叶斯定理为8年级学生出三道题目。",
+            "如果需要八年级学生了解尼罗河流域的文化发展史,你有哪些推荐的网站或参考书籍?"
+          ]
+        },
+        {
+          title: "班级管理",
+          dataList: [
+            "创建一组给一年级学生使用的班级口号,要求大家注意卫生、保护环境,口号需要对仗工整,符合一年级学生的理解水平。",
+            " 设计一套用于6年级学生的班级管理规章制度,内容需要包括学习、纪律、卫生、思想品德方面。"
+          ]
+        },
+        {
+          title: "课堂组织",
+          dataList: [
+            "请为“制作垃圾分类宣传单”的小组活动设计小组分工表,每个小组的成员为4-6人。",
+            "请给5年级“校园植物图鉴”社团课程设计一份小组合作公约,需包含小组成员信息、小组项目目标、填写日期,总长度不超过300字,并且提供至少3处学生自行填写的部分。",
+            "请用苏格拉底提问的方式,引导5年级学生拆解驱动问题:如何解决教室黑板反光的问题?其中需包含对于反光原因的分析与实验探究。"
+          ]
+        },
+        {
+          title: "教师发展",
+          dataList: [
+            "教师需要理解项目式学习的理论基础和基础概念,你需要生成一份阅读清单,要求内容为中文书籍或文献。",
+            "设计一个教师进行个人学期总结的框架,需要体现在教学、教研、个人学习方面的进步。"
+          ]
+        },
+        {
+          title: "代码分析",
+          dataList: [
+            "这段代码实现了什么效果?",
+            "请描述这段代码。",
+            "根据这段代码,给我一些修改意见。"
+          ]
+        }
+      ],
+      showTextList: false,
       showRoleList: false,
       choseRoleItem: 0,
-			choseTextItem:0,
+      choseTextItem: 0,
+      continuous: false
     };
   },
   watch: {
@@ -428,7 +474,7 @@ export default {
               from: "cn",
               to: "hk"
             });
-						
+
             this.ajax
               .post("https://gpt4.cocorobo.cn/ai_agent_park_chat_new", params)
               .then(res => {
@@ -445,7 +491,7 @@ export default {
               });
             this.getAtAuContent(_uid);
           });
-					this.courseText = "";
+          this.courseText = "";
         } else {
           let _uuid = uuidv4();
           this.array.push({
@@ -464,11 +510,13 @@ export default {
           });
 
           let history = [];
-          this.array.forEach(i => {
-            if (i.content) history.push({ role: "user", content: i.content });
-            if (i.aiContent)
-              history.push({ role: "assistant", content: i.aiContent });
-          });
+          if (this.continuous) {
+            this.array.forEach(i => {
+              if (i.content) history.push({ role: "user", content: i.content });
+              if (i.aiContent)
+                history.push({ role: "assistant", content: i.aiContent });
+            });
+          }
 
           history.push({ role: "user", content: message });
           this.$nextTick(() => {
@@ -550,8 +598,8 @@ export default {
         }
       };
     },
-		getAtAuContent(_uid){
-			let _source = new EventSource(
+    getAtAuContent(_uid) {
+      let _source = new EventSource(
         `https://gpt4.cocorobo.cn/question/${_uid}`
       ); //http://gpt4.cocorobo.cn:8011/question/   https://gpt4.cocorobo.cn/question/
       let _allText = "";
@@ -597,7 +645,7 @@ export default {
           // 处理流数据
         }
       };
-		},
+    },
     //保存消息
     insertChat(_uid) {
       let _data = this.array.find(i => i.uid == _uid);
@@ -975,6 +1023,19 @@ export default {
   position: absolute;
   bottom: calc(100% + 5px);
   height: 30px;
+  display: flex;
+  justify-content: space-between;
+}
+
+.ai_b_i_btnArea > div {
+  display: flex;
+  align-items: center;
+	
+}
+
+.ai_b_i_btnArea > div > span {
+  margin-left: 5px;
+	cursor: pointer;
 }
 
 .ai_b_i_btnArea > span {
@@ -1008,8 +1069,8 @@ export default {
   fill: #409eff;
 }
 
-.ai_b_i_textListBox{
-	width: 100%;
+.ai_b_i_textListBox {
+  width: 100%;
   height: 300px;
   background-color: #fff;
   position: absolute;
@@ -1021,19 +1082,19 @@ export default {
   border: 1px solid #e7e7e7;
   box-shadow: 0 4px 10px 0 rgba(29, 57, 131, 0.08),
     1px 1px 20px 4px rgba(29, 57, 131, 0.05);
-		display: flex;
+  display: flex;
 }
 
-.ai_b_i_tlb_left{
-	width: 60px;
-	height: 100%;
-	background-color: red;
+.ai_b_i_tlb_left {
+  width: 60px;
+  height: 100%;
+  background-color: red;
 }
 
-.ai_b_i_tlb_right{
-	flex: 1;
-	height: 100%;
-	background-color: yellow;
+.ai_b_i_tlb_right {
+  flex: 1;
+  height: 100%;
+  background-color: yellow;
 }
 
 .ai_b_i_roleListBox {
@@ -1231,7 +1292,7 @@ export default {
 .dialog_content > div .role > img {
   height: 100%;
   width: 100%;
-	border-radius: 100%;
+  border-radius: 100%;
 }
 
 .dialog_content > div .content {