位置: IT常识 - 正文

开源项目ChatGPT-website再次更新,累计下载使用1600+(开源项目网站)

编辑:rootadmin
开源项目ChatGPT-website再次更新,累计下载使用1600+ 📋 个人简介💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍+收藏⭐️+留言📝💬格言:迄今所有人生都大写着失败,但不妨碍我继续向前!🔥
目录📋 个人简介前言项目成果5.12日更新内容纯前端版本防止 github 识别 apiKey 解决方案pythonjavascript本次更新对于数据处理的一些方案项目效果PC端手机端ChatGPT最新消息结语前言

推荐整理分享开源项目ChatGPT-website再次更新,累计下载使用1600+(开源项目网站),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:开源项目怎么赚钱,开源项目如何赚钱,开源项目可以商用吗,开源项目管理工具,开源项目是什么意思,开源项目https,开源项目是什么意思,开源项目如何赚钱,内容如对您有帮助,希望把文章链接给更多的朋友!

5月12日我对开源小项目进行了重大更新,分别有前后端两个版本,后端版本基于python flask框架,可搭建对外开放的站点,前端版本可借助代码托管平台实现零成本部署!

项目成果

截至目前,项目已获一万+浏览,ZIP下载1000+,PULL 600+,200+star可以看到还是很受欢迎的!

项目地址:https://gitee.com/aniu-666/chat-gpt-website

欢迎大家下载使用,项目文档很详细,都有与之对应的部署教程,操作十分简单,对小白特别友好,十分钟即可构建自己的ChatGPT网站!

对项目有任何问题可加入文末学习交流群询问,群内有公益GPT站点以及免费公用的ApiKey!

5.12日更新内容可选多种页面主题。可在本地保存自己的 api key 使用。可在本地保存历史对话记录,即页面刷新不会消失,默认关闭,可在页面设置中开启。可选择是否开启上下文连续对话,默认开启,可在页面设置中关闭。添加删除按钮,可自己清空页面对话。添加截图保存按钮,可点击将对话数据保存为图片。加入语法高亮功能,同时markdown代码块实时转html标签。上下文对话状态下为节约 tokens ,当对话超过4轮后,则选取最新3轮作为上下文发送。为避免有人不点击删除按钮而导致页面积累大量对话,跟 New Bing 一样,当上下文对话超过20轮,则无法继续发送,会提示点击删除按钮清空页面数据!美化页面,优化页面布局使得不同设备更好的自适应。纯前端版本防止 github 识别 apiKey 解决方案

项目纯前端版本在仓库的web分支! https://gitee.com/aniu-666/chat-gpt-website/tree/web/

只需在config.js文件中加入自己的 openai 的api key即可,然后使用gitee pages或者 github pages部署就行! 当然,不能将apikey暴露在仓库中,github目前会识别,然后会给你发邮件,这个apikey会失效,则需要重新生成。下面是我会出的解决方案!

本人提供了一种方案,你在config.js文件中加入自己的 openai 的api key时需要加入的是Base64编码后的apikey,我在相应代码中会自动读取config.js中的默认Base64编码后的apikey,然后解码使用!

pythonimport base64# 编码data = 'hello world'encoded_data = base64.b64encode(data.encode('utf-8')).decode('utf-8')print(encoded_data) # 输出: aGVsbG8gd29ybGQ=# 解码decoded_data = base64.b64decode(encoded_data).decode('utf-8')print(decoded_data) # 输出: hello world

javascript// 编码let data = 'hello world';let encodedData = btoa(data);console.log(encodedData); // 输出: aGVsbG8gd29ybGQ=// 解码let decodedData = atob(encodedData);console.log(decodedData); // 输出: hello world

开源项目ChatGPT-website再次更新,累计下载使用1600+(开源项目网站)

你也可以自定义加密解密规则,当然无论是否加密,我都不建议在custom.js文件中填写apiKey,有心之人防不住,容易泄露!这只是为了防止github识别的方案,建议直接部署后在首页填入自己的apiKey使用。如需对外提供服务,请使用项目后端版本或者找其他支持环境变量的托管平台。总之,借助国外托管平台零成本部署速度堪忧,流式响应效果就不好了,需要速度快点的可以试试gitee pages!

本次更新对于数据处理的一些方案

如果严格按照输出什么打印什么的话,那么当遇到打印一段代码的情况,需要等到代码全部打完,才能被marked.js格式化为代码块,才能高亮显示代码,只有识别到markdown的开始(```)和结束标签(```)才能识别并转换为代码段标签, 那这个体验也太差了。 有什么办法能够解决这个问题呢? 既然是因为代码块有开始标记没有结束标记,那就我们给他补全结束标记就好了,直到真的结束标记来了,才不需要补全。

而这个开始还是结束,还要看一段输出的文本有多少代码段,有可能包含多个代码段的情况,这其实需要对markdown的代码段符号(```)个数做判断,当为奇数个时,说明有没闭合的代码段,当有非零偶数个,说明代码段是闭合的,当有零个,说明输出内容不含代码!

具体实现代码如下:

// 添加响应消息到窗口,流式响应此方法会执行多次 function addResponseMessage(message) { let lastResponseElement = $(".message-bubble .response").last(); lastResponseElement.empty(); let escapedMessage; // 处理流式消息中的代码块 let codeMarkCount = 0; let index = message.indexOf('```'); while (index !== -1) { codeMarkCount ++ ; index = message.indexOf('```', index + 3); } if(codeMarkCount % 2 == 1 ){ // 有未闭合的 code escapedMessage = marked.parse(message + '\n\n```'); }else if(codeMarkCount % 2 == 0 && codeMarkCount != 0){ escapedMessage = marked.parse(message); // 响应消息markdown实时转换为html }else if(codeMarkCount == 0){ // 输出的代码有可能不是markdown格式,所以只要没有markdown代码块的内容,都用escapeHtml处理后再转换 escapedMessage = marked.parse(escapeHtml(message)); } lastResponseElement.append(escapedMessage); chatWindow.scrollTop(chatWindow.prop('scrollHeight')); }

此次更新也使用highlight支持代码段高亮显示,引入 marked.js 后在marked.js的拍之中添加语法高亮!

// marked.js设置语法高亮marked.setOptions({ highlight: function (code, language) { const validLanguage = hljs.getLanguage(language) ? language : 'javascript'; return hljs.highlight(code, { language: validLanguage }).value; },});项目效果PC端

手机端

ChatGPT最新消息

5月13日,OpenAI发推文称,将在下周向所有ChatGPT Plus 用户推出网络浏览和插件。从alpha 到 Beta,它们将允许ChatGPT 访问互联网并使用70多个第三方插件。

今年3月,OpenAI刚发布GPT-4两周之后,该公司宣布推出插件功能,赋予ChatGPT使用工具、联网、运行计算的能力。在官方演示中,ChatGPT一旦接入数学知识引擎Wolfram Alpha,就再也不用担心数值计算不精准的问题,并且开放OpenAI两个插件网络浏览器和代码解释器,以及第一批13款第三方插件应用,涵盖生活中的衣食住行、工作与学习。

短短两个月之后的今天,ChatGPT第三方插件数量已经从10多种增加到了超过70种,点击聊天界面当中的Plugins,选择插件应用即可,涉及工具、旅游、生活、游戏、学习等场景,不过太多是英文开发产品,也可以自己定制,每次最多使用3个插件。

插件功能加持之下,ChatGPT已经能生成网页、联网看2023年实时新闻、使用Python处理上传和下载的实验性ChatGPT模型;把动图转成视频并加入慢速缩放这类基础视频剪辑工作等。同时,ChatGPT“胡说八道”的毛病改善了许多。

结语

我见证了ChatGPT的强大,也体验了New Bing,文心一言,讯飞星火,Midjourney等众多AI产品,无不感叹时代的洪流是如此的强大,面对AI浪潮滚滚来袭,我们又该如何面对,出路又是什么?

最起码首先学会使用AI工具会是基本功,这里引用ChatGPT官方的一句话:“抢走工作的不会是AI,而是率先掌握AI能力的人!”

【flask从入门到实战】专栏9.9火热订阅中,已包含两个项目,全站独一无二的脚手架搭建,直接复制简单无脑操作,项目结构类似Django,感兴趣的可以看看哦!

flask框架快速入门

其他专栏请前往博主主页查看!

本文链接地址:https://www.jiuchutong.com/zhishi/297795.html 转载请保留说明!

上一篇:车道线检测CLRNet算法复现在Tusimple数据集测试demo(车道线检测模型)

下一篇:Vue中实现清空数组和清空el-table(vue清空input file的值)

  • 北京企业培训公司员工培训包括哪些内容

    北京企业培训公司员工培训包括哪些内容

  • 微信上的爆款产品,能流行起来的逻辑是什么?(微信上的爆款是真的假的)

    微信上的爆款产品,能流行起来的逻辑是什么?(微信上的爆款是真的假的)

  • 抖音收藏别人的作品别人知道吗(抖音收藏别人的视频 作者能看到吗)

    抖音收藏别人的作品别人知道吗(抖音收藏别人的视频 作者能看到吗)

  • 漫步者耳机怎么重新蓝牙配对(漫步者耳机怎么样值得买吗)

    漫步者耳机怎么重新蓝牙配对(漫步者耳机怎么样值得买吗)

  • 显卡交火必须同型号吗(显卡交火必须同一型号吗)

    显卡交火必须同型号吗(显卡交火必须同一型号吗)

  • 对方电话拉黑你打电话是什么声音(对方电话拉黑你了,你打电话给他,他知道吗)

    对方电话拉黑你打电话是什么声音(对方电话拉黑你了,你打电话给他,他知道吗)

  • vivo x50 pro上市时间(vivo x50 pro发售价)

    vivo x50 pro上市时间(vivo x50 pro发售价)

  • 苹果手机锁屏自动亮屏(苹果手机锁屏自动锁定打不开)

    苹果手机锁屏自动亮屏(苹果手机锁屏自动锁定打不开)

  • ipad颜色显示异常	(ipad颜色异常)

    ipad颜色显示异常 (ipad颜色异常)

  • word表格复制粘贴格式怎么能一模一样(word表格复制粘贴后显示不全)

    word表格复制粘贴格式怎么能一模一样(word表格复制粘贴后显示不全)

  • 蓝牙耳机放回仓就充电吗(蓝牙耳机放回仓里还在连接状态)

    蓝牙耳机放回仓就充电吗(蓝牙耳机放回仓里还在连接状态)

  • 路由器nat是什么意思(路由器NAT是什么模式)

    路由器nat是什么意思(路由器NAT是什么模式)

  • 戴尔g3可以typec充电吗(戴尔G3可以加固态硬盘吗)

    戴尔g3可以typec充电吗(戴尔G3可以加固态硬盘吗)

  • 手机进灰尘有什么影响(手机进灰尘会坏吗)

    手机进灰尘有什么影响(手机进灰尘会坏吗)

  • 华为p10支不支持红外(华为p10支不支持快充)

    华为p10支不支持红外(华为p10支不支持快充)

  • ansys哪个版本是中文版(ansys哪一版比较好用?)

    ansys哪个版本是中文版(ansys哪一版比较好用?)

  • win10realtek高清晰音频管理器在哪(win10realtek高清晰音频管理器设置)

    win10realtek高清晰音频管理器在哪(win10realtek高清晰音频管理器设置)

  • ascii用于表示什么编码(ascii是干嘛的)

    ascii用于表示什么编码(ascii是干嘛的)

  • 荣耀9x支不支持快充(荣耀9x支不支持多屏协同)

    荣耀9x支不支持快充(荣耀9x支不支持多屏协同)

  • vivo27pro防水吗(vivox27pro防不防水)

    vivo27pro防水吗(vivox27pro防不防水)

  • 小米耳机派对模式什么意思(小米耳机派对模式)

    小米耳机派对模式什么意思(小米耳机派对模式)

  • ios12更新包删不了(ios15更新包删除不掉)

    ios12更新包删不了(ios15更新包删除不掉)

  • 小米9和华为mate20谁好(小米9和华为mate20pro参数对比)

    小米9和华为mate20谁好(小米9和华为mate20pro参数对比)

  • 苹果8怎么快速切换应用(苹果8怎么快速截图)

    苹果8怎么快速切换应用(苹果8怎么快速截图)

  • 手机QQ的兴趣部落如何关闭提示(手机qq兴趣部落在哪里打开)

    手机QQ的兴趣部落如何关闭提示(手机qq兴趣部落在哪里打开)

  • gnetmous.exe是什么进程 作用是什么 gnetmous进程查询(gwsloader.exe是什么意思)

    gnetmous.exe是什么进程 作用是什么 gnetmous进程查询(gwsloader.exe是什么意思)

  • 帝国CMS二次开发基本问题有哪些(帝国cms源码)

    帝国CMS二次开发基本问题有哪些(帝国cms源码)

  • 公对公转账在手机上怎么操作
  • 在途物资什么科目
  • 结转已销商品的成本的会计科目有哪些
  • 培训发生的差旅费怎么记账
  • 全年一次性奖金税率表
  • 长期待摊费用可以转入固定资产吗
  • 委托加工继续生产增值税计入成本吗
  • 对方公司开发票我方未付款如何做分录?
  • 固定资产属于净资产的哪一项
  • 银行对公贷款利息多少
  • 限额领料单属于什么原始凭证
  • 支付证明单打印版
  • 暂估收入会计处理
  • 查验发票真伪新旧有哪些网站?
  • 三免三减半税收优惠政策文件
  • 固定资产减值准备属于什么科目
  • 一般纳税人印花税减半征收吗
  • 建筑行业一般纳税人税率是多少
  • 年报弥补以前年度亏损了还需要填107040表吗
  • 单位卖报纸的钱算什么
  • 施工项目直接成本和间接成本
  • 苹果电脑初始化设置
  • android 设置按钮颜色
  • 冲抵备用金
  • 一般纳税人增值税申报表怎么填写
  • 进项税额转出是负数是什么意思
  • 开红字专用发票记账时摘要怎样写?
  • 增值税返还政策
  • 混合债清偿顺序
  • 国家纪念品
  • 建筑企业分项目信息采集表怎么填
  • 学计算机选择什么专业
  • springboot整合websocket怎么接受图片消息
  • 深入全面剖析自己
  • 创建command对象
  • php基于单例模式开发
  • 固定资产盘盈的账务处理
  • 交去年企业所得税怎么做资产负债表
  • logstash gsub
  • Python中的关键字
  • 科技型中小微企业贷款贴息贴保项目入库
  • 企业可以一次性现金的方式发放工资
  • 增值税普通发票查询真伪
  • 培训学校收入如何确认
  • 固定资产以前年度多计提怎么办
  • 发票报销有限制吗
  • 怎么做好流水账
  • 分包管理费取费标准
  • 工程款的税费怎么计算
  • 进账单,其中有两个账户
  • 公司怎么样能开发票
  • 生物资产转让增值税
  • 老板出差带礼物给员工的说说
  • 进项税加计扣除10%怎么算
  • mysql数据库中关于作为临时
  • 解读分布式光伏开发前期工作要点及措施
  • 如何使用命令查找电脑IP地址
  • ubuntu怎么用
  • ubuntu拨号上网设置
  • 苹果电脑mac设备怎么删除
  • linux中的挂载命令
  • win10录音机不能用
  • win10周年更新版是什么意思
  • 如何手动设置定位
  • win7 64位旗舰版电脑如何取消网页自动保存密码?win7取消自动保存网页密码的方法
  • 如何搭建react项目
  • unity导出exe文件
  • android设计模式总结
  • jquery获取table的tr
  • python文件a
  • nodejs基础教程
  • python程序讲解
  • javascript绘制图形
  • android数据存储文件读写实验
  • python中的set方法
  • android 数据库
  • 南通国家税务局
  • 甘肃税务政策
  • 车辆购置印花税需入固定资产吗
  • 公司税务怎么查询缴款信息呢
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设