首页 > 其他分享 >流式输出的三两方法

流式输出的三两方法

时间:2024-09-08 20:22:41浏览次数:3  
标签:输出 const messages 流式 response content displayText value 三两

第一种

前提是类似于这样的数据对象结构

{
  content: '这里是返回你的回答结果',
    displayText: '这里是返回你的回答结果'
},

用一个函数

// 打字效果函数
const displayTextEffect = (index) => {
  let i = 0
  const speed = 100 // 字符输出速度,单位是毫秒
  const fullText = pageChat.assistantChat[index].answer
  let displayText = ''

  const interval = setInterval(() => {
    if (i < fullText.length) {
      displayText += fullText.charAt(i)
      userRes.value[index].displayText = displayText // 更新已显示的文本
      i++
    } else {
      clearInterval(interval) // 文本完全显示后停止
    }
  }, speed)
}

第二种

前提是类似于这样的数据结构

const messages = ref([
    { content: '有什么问题,我随时帮你解答', type: 'assistant' }
  ])
// 流式输出   response后端返回的文字字符串,messages下面定义好的
const simulateResponse = (response, messages) => {
  messages.value.push({ content: '', role: 'assistant' })
  for (let i = 0; i < response.length; i++) {
    setTimeout(() => {
      scrollToBottom()
      messages.value[messages.value.length - 1].content += response[i]
    }, 100 * i)
  }
}

还有第三种方案就是一直向服务端去拿响应到的结果,后续会更新

 

标签:输出,const,messages,流式,response,content,displayText,value,三两
From: https://blog.csdn.net/weixin_51943308/article/details/141953235

相关文章

  • 数据分析训练模型后输出模型评估报告
    数据分析训练模型后输出模型评估报告1、模型评估指标1.1、概念:A:n个正样本,检测到是真值的数量B:m个负样本,检测到是真值的数量C:n个正样本,检测到假值的数量D:m个负样本,检测到假值的数量1.2、准确率(Accuracy)正确预测的样本数量与总样本数量的比值。优点:易于理解和计......
  • 模型训练如何实现自动化输出评估报告、模型、特种平台
    模型训练如何实现自动化1、目标把对文本分类【体育,教育,娱乐,经济,文学,政治】的模型实现自动化训练。分类器:贝叶斯、支持向量机、梯度提升、随机森林、逻辑斯蒂回归通过预设的准确率期望值与训练轮数,获取最优的分类器模型,当模型评估的准确率大于期望值时即停止训练,保存模型......
  • 【C语言基础】赋值、输入与输出
    1语句及赋值语句1.1C语句分类表达式语句:表达式加分号。函数调用语句:函数名及其参数加上分号。如:printf("Helloworld!");空语句:只有分号";"组成。控制语句条件判断语句:if语句,switch语句循环语句:while语句,dowhile语句,for语句转向语句:break语句,continue语句,goto语句,retu......
  • shell脚本监控一个进程号,进程号没有就输出error
    你可以使用一个简单的Shell脚本来监控进程号(PID),如果进程不存在则输出error。以下是一个示例脚本:#!/bin/bash#输入要监控的进程号pid=$1#检查进程是否存在ifps-p$pid>/dev/nullthenecho"Process$pidisrunning."elseecho"error:Process$pid......
  • AI大语言模型LLM学习-Token及流式响应
    token是什么?比较官方的token解释:Token是对输入文本进行分割和编码时的最小单位。它可以是单词、子词、字符或其他形式的文本片段。token是自然语言处理的最细粒度。简单点说就是,LLM的输入是一个个的token,输出也是一个个的token。token是由LLM处理的基本数据单元。......
  • 推挽输出、开漏输出
    推挽输出、开漏输出在使用MCU时,常看到配置IO口为推挽输出、开漏输出,以STM32为例,IO口有以下几种模式,单片机的内部电路简化图如下:推挽输出开漏输出复用推挽输出复用开漏输出推挽输出推挽电路的示意图:当IN输入低电平时,P-MOS导通,N-MOS截止,此时OUT输出的电压是VDD,......
  • java for循环倒序输出
    在Java中,如果你想使用for循环来实现倒序输出(比如倒序输出一个数组或集合中的元素,或者仅仅是从一个数字倒序输出到另一个数字),有几种方法可以实现。下面是一些常见的示例:示例1:倒序输出数组中的元素假设你有一个整数数组,并希望使用for循环来倒序输出数组中的每个元素。int[]numbers......
  • 接HDMI同时输出喇叭spker声音
    OS:Android13背景:设备接HDMI,声音通道会优先从HDMI输出,喇叭是是没有声音的 修改如下:1.frameworks/basediff--gita/services/core/java/com/android/server/WiredAccessoryManager.javab/services/core/java/com/android/server/WiredAccessoryManager.javaindex6162ad......
  • 例2.12 分别编写求n!和输出斐波那契数列的函数,并用两个函数进行测试
    例2.12分别编写求n!和输出斐波那契数列的函数,并用两个函数进行测试2.12.1deffactorial(n):r=1whilen>1:r*=nn-=1returnrdeffib(n):a,b=1,1whilea<n:print(a,end="")a,b=b,a+bprint('%d!=%d'%(......
  • 在Python中如何输出变量的值?
    在Python中,变量是一个存储值的保留内存位置,通过变量名可以在整个代码中引用这个值,变量的命名通常使用字母+数字的形式,那么如何使用Python输出变量的值?我们一起来看看吧。在Python中,输出变量的值有两种常见方法:1、print()函数print()函数用于在控制台中输出信息。......