ソースを参照

完成连续对话

mrh 1 年間 前
コミット
414a16417d
1 ファイル変更10 行追加3 行削除
  1. 10 3
      src/App.vue

+ 10 - 3
src/App.vue

@@ -47,8 +47,8 @@
         title="新建对话"
         size="large"
         @click="
-          startChat = true;
           messages = [];
+          nextTick(() => startChat = true);
         "
       />
     </div>
@@ -157,12 +157,19 @@ const getAIAnswer = async (content: string) => {
   messages.value.push(newMessage);
   
   try {
+    const historyMessages = messages.value.map(msg => ({
+      role: msg.from === 'user' ? 'user' : 'assistant', // 明确 role 类型
+      content: msg.content,
+    })) as OpenAI.Chat.Completions.ChatCompletionMessageParam[]; // 强制类型转换
+    // historyMessages.push({ role: 'user', content: content });
+    console.log(historyMessages);
     const completion = await client.value!.chat.completions.create({
       model: settingsStore.value.model,
-      messages: [{ role: 'user', content: content }],
+      messages: historyMessages,
       stream: true,
     });
-
+    
+    
     // 找到当前消息的索引
     // 生成唯一ID用于查找消息
     const messageId = Date.now().toString();