|
@@ -63,6 +63,7 @@ const iptText = ref("");
|
|
|
const chatBoxHeight = ref();
|
|
|
const userInfo = ref({});
|
|
|
const resultData = ref("");
|
|
|
+const baseData = ref("");
|
|
|
const disabled = ref(false);
|
|
|
const chatBox = ref(null);
|
|
|
const lastChat = ref("");
|
|
@@ -74,6 +75,12 @@ const msg = ref([
|
|
|
content: "你是智聚AI, 一个大语言模型,用于提供适当的答复和支持。",
|
|
|
},
|
|
|
]);
|
|
|
+const baseMsgList = [
|
|
|
+ {
|
|
|
+ role: "system",
|
|
|
+ content: "你是智聚AI, 一个大语言模型,用于提供适当的答复和支持。",
|
|
|
+ },
|
|
|
+];
|
|
|
|
|
|
// el-input的最小高度为52px(2行),每增加一行高度增加21px,最大为115px(5行)
|
|
|
// 这里的数值可能需要根据实际的CSS调整
|
|
@@ -87,16 +94,29 @@ const enterChat =async () => {
|
|
|
content: iptText.value,
|
|
|
};
|
|
|
msg.value.push(newUser); // 添加用户输入
|
|
|
+ baseMsgList.push(newUser); // 添加用户输入
|
|
|
resultData.value = ""; // 清空
|
|
|
+ baseData.value = ""; // 清空
|
|
|
iptText.value = ""; // 清空
|
|
|
// 设置传输的上下文
|
|
|
let query;
|
|
|
- if (msg.value.length <= 12) {
|
|
|
- query = msg.value;
|
|
|
+ if (baseMsgList.length <= 12) {
|
|
|
+ query = baseMsgList;
|
|
|
} else {
|
|
|
- const longArr = msg.value.slice(msg.value.length - 11, msg.value.length);
|
|
|
- query = [msg.value[0], ...longArr];
|
|
|
+ const longArr = baseMsgList.slice(baseMsgList.length - 11, baseMsgList.length);
|
|
|
+ query = [baseMsgList[0], ...longArr]
|
|
|
}
|
|
|
+ query = query.map((item) => {
|
|
|
+ return {
|
|
|
+ role: item.role,
|
|
|
+ content: item.content.replace(/</gi, "")
|
|
|
+ .replace(/>/gi, "")
|
|
|
+ .replace(/ /gi, "")
|
|
|
+ .replace(/<\/br>/gi, "")
|
|
|
+ .replace(/\n/gi, "")
|
|
|
+ };
|
|
|
+ });
|
|
|
+ // console.log("query", query);
|
|
|
const uuid = await getUuid(query)
|
|
|
// console.log("uuid", uuid);
|
|
|
fetch(`${wangzhi}/chat-glm3/chat?uuid=${uuid.msg}`, {
|
|
@@ -112,6 +132,7 @@ const enterChat =async () => {
|
|
|
content: "",
|
|
|
}; // 添加智聚AI回复
|
|
|
msg.value.push(newAssistant); // 添加智聚AI回复
|
|
|
+ baseMsgList.push(newAssistant); // 添加智聚AI回复
|
|
|
const reader = response.body.getReader();
|
|
|
const decoder = new TextDecoder();
|
|
|
function processText({ done, value }) {
|
|
@@ -123,6 +144,13 @@ const enterChat =async () => {
|
|
|
hasdata.value = false
|
|
|
hasn.value = false
|
|
|
const message = decoder.decode(value);
|
|
|
+ const basemessage = decoder.decode(value);
|
|
|
+ // 保留原始数据 用于传输
|
|
|
+ let t = baseData.value+ basemessage;
|
|
|
+ baseData.value = t;
|
|
|
+ baseMsgList[baseMsgList.length - 1].content = JSON.parse(JSON.stringify(baseData.value));
|
|
|
+ // console.log("原始数据:", basemessage);
|
|
|
+ // console.log("原始数据:", baseMsgList);
|
|
|
// console.log("原:", message);
|
|
|
const baseMsg = JSON.stringify(message)
|
|
|
// console.log('value',JSON.stringify(message))
|