log|nonebot——2|插件nonebot-plugin-chatgpt尝试,失败。

顺利走通,大概了解了nonebot和gocqhttp之后。

尝试先调通nonebot里的chatGPT插件。是有的。

尝试了这个,人最多,教程也写的清晰的GitHub - A-kirami/nonebot-plugin-chatgpt

按照readme教程走。直接核心直接bug 往下翻。

windows10

2023年4月16日

nonebot_plugin_chatGPT版本……有人pr了#134

======

有一些问题,

  • nb install 日常出问题。用pip可以绕过
  • 关于 配置,比如session_token 填在哪里,我在env,env.dev,还有sitepackages下面的这nonebot-plugin-chatgpt的congfig里面都填过。实际上好像是都可以。而且表现为,env或env.dev里的可以覆盖掉 package里config里的,也符合逻辑。
  • 关于把下面这个填入bot.py。不同的nb机器人的组织方式,出现的bot.py不一样。
    nonebot.load_plugin('nonebot_plugin_chatgpt')
    • 插件放src方式中的bot.py有main函数的,看起来像是可以加进去的。
    • 插件放机器人文件夹里的,有四个bot.py(是adapter和其他什么)。内容都是定义的一堆函数和类(如图)。//对nonebot的了解不足
    • 可以用nb plugin的方式去加入。似乎这样并不需要去nonebot.load_plugin
    • 没试过nb-cli方式。

  • playwright遇到了一点问题,但是命令行自动提示了。解决了,是playwright install,应该是nb或插件开发者留的命令match。
  • 中间还有,下载来一个chromium的什么东西,大概是支持的,70多mb还挺大。
  • 我们对这个插件的原理还不够了解。对于session_token ,对于整个过程,大原理,然后细分机理,不够了解。
    • 关于这个插件的原理,大概猜想理解是从网页上利用token去登录,然后去类似模拟输入信息,发送,然后把GPT的回答再获取到(一个网页元素),然后传回来。playwright是个自动化测试的,好像really play a role in this。
    • 我们对于token  验真  以及网页元素的爬取和操作  都理解还比较浅薄。
  • 对于点掉所有弹窗,不确定正确理解了
  • 我遇到的问题表现为两个
    • 一 回复超时
      • 具体表现为
        • 开始(获取cf cookies这一步也有一点慢)
        • 到时间后的完整保存(我设置的120s)
          • 其中打开https://chat.openai.com/backend-api/conversation得到
            {"detail":"Method Not Allowed"}(有猜想就是openai那边禁止了对这种方式访问回答的那个元素)
          • 也出现这个(等下有个大佬会在这里动刀)
            • locator("button[class=\"absolute p-1 rounded-md text-gray-500 bottom-1.5 right-1 md:bottom-2.5 md:right-2 hover:bg-gray-100 dark:hover:text-gray-400 dark:hover:bg-gray-900 disabled:hover:bg-transparent dark:disabled:hover:bg-transparent\"]")
      • 二 ChatGPT 目前无法回复您的问题。可能的原因是同时提问过多,问题过于复杂等。

  •  参照下列,进行改动。//有新发现。暂时不写了。先实践。[BUG]: ChatGPT超时,无响应,TimeoutError【附解决方法】 · Issue #137 · A-kirami/nonebot-plugin-chatgpt · GitHub
    • 结果。还是超时
    • 不过,随着改动那几个button.click button.locator大概理解了整个过程。
      • 就是自动化操作网页元素。一步步的,和鼠标点一样(比鼠标更强doge)
        • 但是具体写起来,还是不懂。
      • playwright,改了headless还是弹不出来,我不知道卡在那里。

  • 在写本文时候的发现
    • 虚拟环境下的包好像通过pip uninstall之类,是没有卸载本地文件的。大概只是从某个列表里删除了。
      • 所以你改了文件的话,要么手动卸载重装。要么还是手动改回来。
    • 写作可以让人慢下来,冷静下来。也让思路凝固。
      • 其中“慢下来”和“思路凝固”都有利有弊。
    • 调试的过程真的还挺有收获的,慢下来,安安静静看代码和报错。可以慢慢看明白好多,逐渐了解创作者的思路想法和 结合上原理。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值