首页 > 哇哦,只需一行代码可以形成一个专属聊天框!

哇哦,只需一行代码可以形成一个专属聊天框!

互联网 2021-09-19 06:53:37

小编今天继续逛GitHub时候,看到一个这个「GitHub 中文排行榜」的开源项目。

整个项目只需在线安装一个开源聊天框架,并且自己编写一行代码就能设计出你想要的聊天框。

正常我们逛社交网站总能看到一个不错的聊天框其实这个代码写出来没有那么多复杂,以及各种弯弯绕绕。

可以用到OpenChat这样生成模型的开源聊天框架。

具体是怎么样用法,小编在这边简单介绍下:.终端环境

在终端上聊天。

键入.exit是否要退出对话。

键入.clear是否要清除所有历史记录。

您可以添加其他用户关键字。(详细说明如下。)

>> > 从 openchat 进口 OpenChat >> >  OpenChat(模型= “blenderbot” ,大小= “大”)Chat with facebook/blenderbot-1B-distill !user : Hi. It is nice day.bot : It is a nice day out. I am going to go for a walk. What are you up to?user : I'll play computer game. Do you like playing game?bot : I love playing video games. What kind of games do you like to play on your computer?user : I love racing game. It is so exited. How about you?bot : I love racing games as well. I like to play on the Playstation 4. What about you?user : Usually I like to play on PC. I have a question. Who is CEO of Apple?bot : The CEO of Apple is Steve Jobs. He founded the company in 1976.user : That's right. I have an IPhone. It is my favorite phone. What is your phone?bot : I have a Samsung Galaxy S8. I love it. It's the best phone I've ever had.user : .exitbot : good bye.

如果要使用GPU,请使用参数 device="cuda"

>> > 从 openchat 进口 OpenChat >> >  OpenChat(模型= “blenderbot” ,大小= “大”,设备= “CUDA” )

属于自己的环境(不是终端)

可以使用用户ID来管理特定于用户的历史记录。

在Facebook Messenger或WhatsApp上部署时,此功能很有用。

该/demo文件夹中有一个Web演示实现。

除此之外,自己环境肯定要搭建,不然形成不了的自己想要的聊天框,具体搭建方法如下:

编写自己的环境类

使您自己的环境类继承自 BaseEnv

并实现您自己的run(model: BaseModel)方法,如下所示。

从 打字 进口 字典从 烧瓶 进口 瓶,render_template从 flask_cors 导入 CORS从 openchat。ENVS 导入 BaseEnv从 openchat。模型 导入 BaseModel

最后的话开始运行应用程序。

从 openchat 从demo导入 OpenChat。web_demo_env导入WebDemoEnv   OpenChat(模型= “ blenderbot”,size = “大”,env = WebDemoEnv())

除此之外,关键词的添加肯定是少不了的,不然整个聊天框的配置则少了灵魂!

添加自定义关键字

您可以添加新的手动关键字,例如.exit,.clear,

调用self.add_keyword('.new_keyword' 'message to print' triggered_function)'方法。

triggered_function 应该是 function(user_id:str text:str)

关键词加好以后,还有查看历史记录以及清除历史记录,这两个可是聊天中的重中之重了,少一个都不行!

查看历史

您可以使用查看所有对话历史记录 self.histories

来自 openchat。envs 导入 BaseEnv类 YourOwnEnv(BaseEnv):        def  __init__(self):        超级()。__init__()        打印(自我。历史)清除历史从 烧瓶里 从openchat进口 Flask。ENVS导入BaseEnv从openchat。模型导入BaseModel      类 YourOwnEnv(BaseEnv):        def  __init__(self):        超级()。__init__()        自我。app  = 烧瓶(__name__)

以上就是部分聊天框相关方的代码,具体小伙伴可以打开以下链接查看,其实类似聊天边框代码写法还是有很多的,只不过小编现在列举出来的这个比较容易。

对于想学的新人来说可以尝试着做下哦,毕竟是个不错基础入门项目!今天小编就介绍到这里,后续有什么好的提案欢迎各位后台留言哦!

最后附上GitHub地址:

https://github.com/hyunwoongko/openchat

—— 推 荐 阅 读 ——假如,人工智能也去摆地摊作为一个乘风破浪的程序员,我每天除了疯就是浪程序员最卑微的瞬间

【人工智能社群】已经成立,旨在打造真正有价值,能交流,一起学习成长的社群,并且每月送书不断!现备注城市+昵称+研究方向扫码添加好友后立即进群。

▲长按扫码

你在看吗?
免责声明:非本网注明原创的信息,皆为程序自动获取互联网,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责;如此页面有侵犯到您的权益,请给站长发送邮件,并提供相关证明(版权证明、身份证正反面、侵权链接),站长将在收到邮件12小时内删除。