【问题标题】:making a Django chatbot application interact with multiple users使 Django 聊天机器人应用程序与多个用户交互
【发布时间】:2017-04-19 18:35:37
【问题描述】:

我在网络派系分片主机上有一个 django 聊天机器人应用程序。这个想法是:聊天机器人应用程序模拟客户服务与客户聊天。

基本上,对话将通过 API 使用 GET 和 POST 进行交换,它首先 POST 输入,然后 GET 调用 python 文件从数据库中选择输入并处理它,然后使用检索到的输出更新数据库。最后GET 用于获取输出并显示它。

到目前为止,它一次只为一个用户工作,我现在正在考虑的是我希望它同时与多个客户聊天以隔离每个用户。

我是否必须仅将 Redis 用于聊天部分,如果是,我如何将它合并到我的项目中?还有其他解决方案吗?

我已经使用:

python3: 用于聊天机器人代码。

Django: 用于网站。

Mysql: 用于数据库,保存聊天机器人的知识,例如包含输入数量和对应输出的表格。

谢谢你,

【问题讨论】:

    标签: python mysql django


    【解决方案1】:

    有一个基于 Python 3 + Django + Mongo/sqlite 的完整聊天机器人解决方案。它的 github 链接是https://github.com/gunthercox/ChatterBot。希望它可以帮助你。 此存储库还包含 Django 应用程序示例:https://github.com/gunthercox/ChatterBot/tree/master/examples/django_app

    【讨论】:

      【解决方案2】:

      您可以在 Django 应用程序中使用 Redis、Celery、Python RQ、Rabbit MQ 作为分布式任务(聊天任务)的队列。但这会增加项目的复杂性。我会推荐你​​开发基于 Python 的多客户端聊天服务器。

      【讨论】:

      • 感谢您的帮助。请问开发一个多客户端聊天服务器,你的意思是我必须重新开发应用程序吗?你的意思是多线程服务器吗?
      • 是的,您必须重新开发具有多线程功能的应用程序
      • 很遗憾我没有时间重新开发它,还有其他解决方案吗?
      • 使用django的multi session包,多个用户可以同时访问你的应用。你可以在短时间内整合这个pypi.python.org/pypi/django-multi-sessions
      • 另一种方法,使用 python 子进程,这将帮助您创建“n”个可以为多个客户提供服务的聊天机器人
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-11
      • 1970-01-01
      • 2017-03-28
      • 2013-07-25
      相关资源
      最近更新 更多