提交 ad9168bf 编写于 作者: DCloud_JSON's avatar DCloud_JSON

1.0.22

修复 解决Vue3版本的微信小程序端 textarea的blur事件,会触发“清空会话”事件的问题
上级 afee7ca2
## 1.0.22(2023-06-07)
- 修复 解决Vue3版本的微信小程序端 textarea的blur事件,会触发“清空会话”事件的问题
## 1.0.21(2023-06-06)
- 修复 用户输入的内容,会被markdown解析,导致显示错误的问题
- 修复 web-pc端 发送消息,会失去焦点的问题
......
{
"id": "uni-ai-chat",
"name": "uni-ai-chat",
"version": "1.0.21",
"version": "1.0.22",
"description": "基于uni-ai的聊天示例项目,支持流式、支持前文总结,云端一体",
"main": "main.js",
"scripts": {
......
<template>
<view class="page">
<view class="container">
<view v-if="isWidescreen" class="header">uni-ai-chat</view>
<view class="container">
<!-- #ifdef H5 -->
<view v-if="isWidescreen" class="header">uni-ai-chat</view>
<!-- #endif -->
<text class="noData" v-if="msgLength === 0">没有对话记录</text>
<scroll-view :scroll-into-view="scrollIntoView" scroll-y="true" class="msg-list" :enable-flex="true">
<uni-ai-msg ref="msg" v-for="(msgIndex,index) in msgLength" :key="index" :msgIndex="index" @retriesSendMsg="retriesSendMsg" @changeAnswer="changeAnswer"
......@@ -17,19 +19,20 @@
<view id="last-msg-item" style="height: 1px;"></view>
</scroll-view>
<view class="foot-box">
<view class="pc-menu" v-if="isWidescreen">
<view class="pc-trash pc-menu-item" @click="clear" title="删除">
<view class="foot-box">
<!-- #ifdef H5 -->
<view class="pc-menu" v-if="isWidescreen">
<view class="pc-trash pc-menu-item" @click="clearAllMsg" title="删除">
<image src="@/static/remove.png" mode="heightFix"></image>
</view>
<view class="settings pc-menu-item" @click="setLLMmodel" title="设置">
<uni-icons color="#555" size="20px" type="settings"></uni-icons>
</view>
</view>
</view>
<!-- #endif -->
<view class="foot-box-content">
<view v-if="!isWidescreen" class="menu">
<uni-icons class="menu-item" @click="clear" type="trash" size="24" color="#888"></uni-icons>
<uni-icons class="menu-item" @click="clearAllMsg" type="trash" size="24" color="#888"></uni-icons>
<uni-icons class="menu-item" @click="setLLMmodel" color="#555" size="20px" type="settings"></uni-icons>
</view>
<view class="textarea-box" @click="focus = true">
......@@ -38,7 +41,9 @@
placeholder-class="input-placeholder"></textarea>
</view>
<view class="send-btn-box" :title="(msgLength && msgLength%2 !== 0) ? 'ai正在回复中不能发送':''">
<text v-if="isWidescreen" class="send-btn-tip">↵ 发送 / shift + ↵ 换行</text>
<!-- #ifdef H5 -->
<text v-if="isWidescreen" class="send-btn-tip">↵ 发送 / shift + ↵ 换行</text>
<!-- #endif -->
<button @click="beforeSendMsg" :disabled="inputBoxDisabled || !content" class="send"
type="primary">发送</button>
</view>
......@@ -675,7 +680,15 @@
})
},
// 清空消息列表
clear() {
clearAllMsg(e) {
// #ifdef MP-WEIXIN && VUE3
console.log('clearAllMsg',e);
if(e && e.type == "blur"){
console.log('补丁:解决Vue3版本的微信小程序端 textarea的blur事件,会触发“清空会话”事件的问题');
return false
}
// #endif
// 弹出确认清空聊天记录的提示框
uni.showModal({
title: "确认要清空聊天记录?",
......
......@@ -221,6 +221,9 @@ module.exports = {
let {llm,chatCompletionOptions} = config
// 如果客户端传了llmModel 就覆盖配置的model
if(llmModel){
if(llmModel.includes('gpt-') && (llm && llm.provider != "openai")){
throw new Error('错误:LLM的provider不是openai,但model却选了'+llmModel+';请参考文档:https://uniapp.dcloud.net.cn/uniCloud/uni-ai.html#chat-completion 中model参数的说明')
}
chatCompletionOptions.model = llmModel
}
return await chatCompletion({
......@@ -240,6 +243,7 @@ module.exports = {
// 语言模型
llm
}) {
// console.log({llm,chatCompletionOptions});
// 获取语言模型管理器
const llmManager = uniCloud.ai.getLLMManager(llm)
// 调用chatCompletion方法,传入参数
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册