这里只是一个简单的demo,供交流学习使用。

ChatterBot

chatterbot是一个开源的聊天机器人框架,原生支持多种语言,提供了丰富的接口用于训练和部署,默认支持sqlLite数据库,每次训练的结果会保存到sqlLite数据库中,部署时只要保证chatterbot实体的名称相同,就可以使用训练好的模型。

更多细节可以参考官方文档 ChatterBot官方文档

Django

Django是基于python的开源的web框架,有成熟的配置后端逻辑和前端页面部署的模版,比较适合大型web项目开发。

ChatterBot中集成了对Django部分方法的支持,可以直接调用。

在本地基于官方文档中的例子部署一个简单的基于web界面的聊天机器人。

最后实现的效果如下图:

MIDDLEWARE_CLASSES = ( 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware', MIDDLEWARE = [  'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', #'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', # 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware',

另外,要配置chatterbot信息。

## 'name'是已经训练好的chatterbot的name。
## 数学公式计算和时间获取要写注释,
## 当没有与输入最匹配的文字输出时,
## chatterbot的逻辑是会输出当前时间的,这样看上去会比较诡异。
CHATTERBOT = {
    'name': 'Ron Obvious',
    'django_app_name': 'django_chatterbot',
    'logic_adapters': [
        'chatterbot.logic.BestMatch',
        #'chatterbot.logic.MathematicalEvaluation',
        #'chatterbot.logic.TimeLogicAdapter',

修改完成后,需要同步数据库信息。

python manage.py migrate

指定本机端口运行服务

python manage.py runserver 9000

如果没有报错,在浏览器输入http://127.0.0.1:9000就会转到上面的截图界面。

项目代码后续上传。

使用中发现,用自己的中文数据训练的chatbot总是存在答案与问题不匹配的情况,所以可以作为一个研究的demo使用,不推荐在实际生产中使用。

ChatGPT 集成到 Django 应用程序中允许您创建动态和交互式聊天界面。按照本文概述的步骤,您可以在Django项目中实施ChatGPT并为用户提供引人入胜的对话体验。尝试不同的提示,改进用户界面并探索进一步增强聊天应用程序功能的可能性. 机器人时代已经开始了。如今,聊天机器人引起轰动,并被誉为下一代的网站和应用的替代品。许多平台都开发了聊天机器人作为交互式工具,例如Facebook, Telegram等等。聊天机器人在中国的通讯巨头WeChat中颇负盛名,其中,人们通过聊天预定出租车和进行金融交易。 我决定尝试开发一个聊天机器人,它只做一件事。不管用户输入什么,它都发送一个像下面这样的不含图片的随机笑话。 作为开始,我们... Flask诞生于2010年, Armin Ronacher的一个愚人节玩笑。不过现在已经是一个用python语言基于Werkzeug工具箱编写的轻量级web开发框架,它主要面向需求简单,项目周期短的小应用。Flask-SQLalchemy:操作数据库;Flask-migrate:管理迁移数据库;Flask-Mail:邮件;Flask-WTF:表单;Flask-script:插入脚本;Flask-Login:认证用户状态;Flask-RESTful:开发REST API的工具; ChatterBot是一个Python库,可以轻松生成自动化 对用户输入的响应。ChatterBot 使用一系列机器学习 产生不同类型响应的算法。这使得它很容易 开发人员创建聊天机器人并自动与用户对话。╮( ̄▽ ̄)╭如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)!! ‘django.contrib.admin’, 内置的后台管理系统 django.contrib.auth’, 内置的用户认证系统 ‘django.contrib.contenttypes’, 记录项目中的所有的model元数据(Django的ORM框架) ‘django.contrib.sessions’, Session会话功能,用于标识当前访问网站的用户信息,记录相关用户信息 ‘django.contrib.messages’, 消息提示功能 之前发表过chatterbot 的自定义api本人的流程 但是有粉丝或游客私信我 怎样对接自己个人微信 现在统一回复下 自己的心得流程 实现等 在写代码之前我先表述下 之前个人微信接口 使用itchat 等 在使用这类的前提是可以 登录网页版微信 网页版微信登录链接 itchat原理就是一种爬虫 获取绘话信息处理并返回自定义信息(跑远了…) 要想获取个人微信中的对话 必须登录 才能自定义一些逻辑啥的 前几天自己写了能实现对接chatterbot的api接口 1 首先我们要绕过登录验证 能成功登录 了解如何使用Python创建Chatbot。 在本教程中,我们将使用Chatterbot库创建聊天机器人。 我们将使用Flask Framework在Web上部署聊天机器人。 本教程更改也可用于Django。 最终我们创建的聊天机器人页面如下: 代码已经上传到Github:点我 每个聊天机器人都有一个主题。我们的聊天机器人将回答用户对冠状病毒疾病的问题。它将问候用户,与他们互动,并给出Covid-19的答案。 Installing Chatbot Required Libraries 所有的库都安装在Vi 4. 下载预训练模型:ChatGLM使用预训练的GPT模型来生成回复。您可以从OpenAI(https://beta.openai.com/docs/models/gpt-3)下载预训练的GPT-3模型。如果您需要更详细的指导,请参考ChatGLM的文档(https://chatglm.readthedocs.io/en/latest/)或联系开发人员。2. 下载代码:从ChatGLM的GitHub仓库(https://github.com/cooelf/ChatGLM)下载代码。 Channels是Django团队研发的一个给Django提供websocket支持的框架,使用它我们可以轻松开发需要长链接的实时通讯应用。本文在Django实战:channels + w... 这两个月都在忙着设计针对银联客服业务的智能聊天机器人,上一周已经交完设计报告,这一周还和部门同事一起分享了系统设计及运行效果。因为时间的关系,系统原型我使用了Flask+jQuery的组合,感觉用以原型可以,上线使用存在性能拓展瓶颈。最近技术调研发现Django框架中自带了实时通信的工具包Channels,网上评价不错,因此测试使用并记录。 在本文中,我们将通过Django Channels...