V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  qiayue  ›  全部回复第 17 页 / 共 395 页
回复总数  7889
1 ... 13  14  15  16  17  18  19  20  21  22 ... 395  
@brader 关于你说的没有打字机效果,我改了下,之前是逐句检测,逐句输出,现在改成逐句检测,但是如果不包含敏感词则逐字输出,这样大多数情况下,都会有打字机效果了。
@JoeyWang321 特意没做上下文功能。
@brader 感谢,demo 站开启了敏感词校验,所以不是逐字返回给前端,而是逐行返回给前端的,所以看起来是一顿一顿的输出。连续对话能力特意没做的,这个项目暂时只是为了让大家了解清楚流式传输的原理。数据格式的确是我的问题,没按照标准来。
@uplee 我也在用这个,但是想自己搞清楚整个传输流程,所以就去研究了一下,写了点 demo ,写完后发现这里细节还挺多的,就想着写篇文章介绍下,既然写了文章当然就要配套的代码,所以才想着搞成一个稍微完整点的项目开源出来的。
原文最后补充

### 代码渲染

如果严格按照输出什么打印什么的话,那么当正在打印一段代码,需要等到代码全部打完,才能被格式化为代码块,才能高亮显示代码。
那这个体验也太差了。
有什么办法能够解决这个问题呢?
答案就在问题里,既然是因为代码块有开始标记没有结束标记,那就我们给他补全结束标记就好了,直到真的结束标记来了,才不需要补全。

具体的实现就是下面几行代码:

```js
if(content.indexOf('`') != -1){
if(content.indexOf('```') != -1){
codeStart = !codeStart;
}else if(content.indexOf('``') != -1 && (lastWord + content).indexOf('```') != -1){
codeStart = !codeStart;
}else if(content.indexOf('`') != -1 && (lastLastWord + lastWord + content).indexOf('```') != -1){
codeStart = !codeStart;
}
}

lastLastWord = lastWord;
lastWord = content;

answerContent += content;
answers[qaIdx].innerHTML = marked.parse(answerContent+(codeStart?'\n\n```':''));
```
原文 [打字机效果] 没写完,这里补上:
最初的方案是每次接收到后端的返回后就立即显示到页面里,后来发现这样速度太快了,眨眼就显示完了,没有打印机效果。 所以后来的方案就改成了用定时器实现定时打印,那么就需要把收到的先放进数组里缓存起来,然后定时每 50 毫秒执行一次,打印一个内容出来。 具体实现代码如下:
2023-03-14 13:56:15 +08:00
回复了 qingshui33 创建的主题 问与答 调用 chatgpt 接口
你的问题我不太清楚,但是我就是特别好奇,都 2023 年的 3 月 14 日了,为什么你还要用 text-davinci-002 这个模型?
直接上 gpt-3.5-trubo 不仅效果更好,还更便宜。
2023-03-14 13:53:51 +08:00
回复了 xyy003 创建的主题 推广 我宣布这是我目前用的最快的 chatgpt 第三方!
网页 plus 版账号的 api 并不会更快
2022-09-01 16:11:25 +08:00
回复了 sjmcefc2 创建的主题 程序员 请教如何把大量地址标注在百度地图上呢?
@sjmcefc2 几年前给娃选幼儿园我做过类似事情,去教育局官网把所有幼儿园名字拔下来,然后调用百度地图的 js 接口,批量向地图上标注位置即可。
会写 js ,也就是一两个小时的事情
2022-08-18 17:46:03 +08:00
回复了 yxcoder 创建的主题 程序员 JS 多次请求 如何使后者覆盖前者
用一个数组记录每一次的返回结果,再根据前端的状态决定显示哪个结果。
拿分页这个例子来说的话,如果 5 页数据都返回了,那么之后用户点击任何页面,都不需要再发送请求了,直接从已返回结果里拿数据并显示就好了。
2022-07-24 12:11:52 +08:00
回复了 wufeng 创建的主题 问与答 求教数据库设计思路
产品表增加一列存储客户 ID ,0 表示没有被用过
2022-07-20 14:37:44 +08:00
回复了 Kiza 创建的主题 问与答 软件中有没有与“飞线”相对应的东西?
我们接手了一套 N 年的代码,搞懂了数据库每个表每个字段的含义后,重写了后台,重写了接口。
老用户继续用老接口,新用户后面开始用新接口。
我感觉,这也算是飞线。
2022-07-01 11:30:04 +08:00
回复了 kangkang 创建的主题 问与答 你觉得国内哪个城市适合长期远程办公?
@weak 山清水秀住一周,新鲜感就过去了。
2022-07-01 10:39:06 +08:00
回复了 kangkang 创建的主题 问与答 你觉得国内哪个城市适合长期远程办公?
深圳的城中村,找个 1000 月租的地方,很多城中村都有公园,而且生活极其便利,想要进城享受,搭个地铁一个小时就到。
2022-06-27 12:01:24 +08:00
回复了 treblex 创建的主题 奇思妙想 有没有支持任意网址留言评论的浏览器插件?
那你这个留言要也安装好了插件的人才能看到,使用场景不够啊
2022-06-24 18:05:36 +08:00
回复了 13936 创建的主题 生活 好奇买了房的 V 友是不是工作也固定下来了
我就是租出去,然后在公司附近再租房住,两边租金刚好抵消了。
2022-06-21 13:40:01 +08:00
回复了 CSGO 创建的主题 问与答 微信公众号的二维码是否可以制作成短链?
不行,微信做了限制,只有直接扫出来的,才能关注,二跳的都不行。
有一个间接的办法,扫了你的短链后打开一个页面,显示原始二维码,提示用户长按识别,这时候识别出来的,可以关注。
2021-10-21 16:44:23 +08:00
回复了 onice 创建的主题 程序员 为什么没有一种万能且通用的编程语言呢?
有万能的语言,文字就是,你用文字把你的需求描述清楚,别人能帮你开发产品。
2021-10-21 16:27:32 +08:00
回复了 Jiajin 创建的主题 程序员 postman 有没有安全风险?
代码放在 aws 里都不怕被偷,还怕接口被盗用?
1 ... 13  14  15  16  17  18  19  20  21  22 ... 395  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5421 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 58ms · UTC 07:31 · PVG 15:31 · LAX 23:31 · JFK 02:31
Developed with CodeLauncher
♥ Do have faith in what you're doing.