首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行简单代码时ChatterBot库出错

运行简单代码时ChatterBot库出错
EN

Stack Overflow用户
提问于 2022-09-08 23:41:47
回答 1查看 62关注 0票数 0

我很难简单地从lib ChatterBot运行这段简单的代码:

代码语言:javascript
复制
from chatterbot import ChatBot 
from chatterbot.trainers import ListTrainer 
from chatterbot.trainers import ListTrainer 
  
bot = ChatBot('Bot') 
  
trainer = ListTrainer(bot) 
  
trainer.train([ 
    'Hi', 
    'Hello', 
    'I need roadmap for Competitive Programming', 
    'Just create an account on GFG and start', 
    'I have a query.', 
    'Please elaborate, your concern', 
    'How long it will take to become expert in Coding ?', 
    'It usually depends on the amount of practice.', 
    'Ok Thanks', 
    'No Problem! Have a Good Day!'
]) 
  
while True: 
    request=input('you :') 
    if request == 'OK' or request == 'ok': 
        print('Bot: bye') 
        break
    else: 
        response=bot.get_response(request) 
        print('Bot:', response) 

所提出的问题如下:

代码语言:javascript
复制
    Traceback (most recent call last):
  File "C:\Users\User\Desktop\TESTE AI.py", line 5, in <module>
    bot = ChatBot('Bot')
  File "C:\Users\User\AppData\Local\Programs\Python\Python38\lib\site-packages\chatterbot\chatterbot.py", line 41, in __init__
    self.storage = utils.initialize_class(storage_adapter, **kwargs)
  File "C:\Users\User\AppData\Local\Programs\Python\Python38\lib\site-packages\chatterbot\utils.py", line 54, in initialize_class
    return Class(*args, **kwargs)
  File "C:\Users\User\AppData\Local\Programs\Python\Python38\lib\site-packages\chatterbot\storage\sql_storage.py", line 46, in __init__
    if not self.engine.dialect.has_table(self.engine, 'Statement'):
  File "C:\Users\User\AppData\Local\Programs\Python\Python38\lib\site-packages\sqlalchemy\dialects\sqlite\base.py", line 2016, in has_table
    self._ensure_has_table_connection(connection)
  File "C:\Users\User\AppData\Local\Programs\Python\Python38\lib\site-packages\sqlalchemy\engine\default.py", line 342, in _ensure_has_table_connection
    raise exc.ArgumentError(
sqlalchemy.exc.ArgumentError: The argument passed to Dialect.has_table() should be a <class 'sqlalchemy.engine.base.Connection'>, got <class 'sqlalchemy.engine.base.Engine'>. Additionally, the Dialect.has_table() method is for internal dialect use only; please use ``inspect(some_engine).has_table(<tablename>>)`` for public API use.

信息:

  • Chatterbot==1.0.0 & 1.0.4 & 1.0.5 & 1.1.0
  • Python==3.8.10

我现在就谢谢你!!

EN

回答 1

Stack Overflow用户

发布于 2022-09-09 00:02:43

尝试将sqlalchemy升级到其当前版本(1.4.41):

代码语言:javascript
复制
pip install sqlalchemy --upgrade

它可能是重复的:

类似的帖子here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73655965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档