AI 文摘

ChatGPT:回复内容过长需点击“继续”按钮,你厌烦了吗?





作者: 浮之静  来源: [浮之静](https://mp.weixin.qq.com/s/CzBbBRe7-pHx3uN0GqVGwg)

背景

ChatGPT 现在支持更长的回复上下文了,但是每次接口能返回内容的最大长度是有限的,所以如果内容过长经常会出现一个 Continue generating 按钮,需要手动点击一次,才可以触发接下来的内容回复。那么有没有什么方法可以自动化呢(懒有懒的道理,想偷懒,才能真正思考如何提效),简单来说就是通过注入 js 脚本来解决。

解决方案

想要自动点击,而且它本身是一个按钮,那注入一段脚本来模拟点击不就可以了吗?废话不多说,直接上代码:

function autoContinue() {  
  // 创建一个观察者(observer)实例  
  const observer = new MutationObserver((mutationsList) => {  
    for (let mutation of mutationsList) {  
      if (mutation.type === 'childList') {  
        // 发现 Continue generating 按钮  
        const btn = Array.from(mutation.target.querySelectorAll('button.btn')).find((btn) =>  
          btn.innerText.includes('Continue generating'),  
        );  
          
        // 如果发现按钮则在 1 秒后自动点击  
        if (btn) {  
          console.log("Found the button of 'Continue generating'");  
          setTimeout(() => {  
            console.log('Clicked it to continue generating after 1 second');  
            btn.click();  
          }, 1000);  
          return;  
        }  
      }  
    }  
  });  
  
  // 如果未检测到 form 表单,则轮询 DOM  
  const interval = setInterval(() => {  
    if (document.forms[0]) {  
      // Start observing the dom change of the form  
      observer.observe(document.forms[0], {  
        attributes: false,  
        childList: true,  
        subtree: true,  
      });  
      // 发现 from 后移除定时器  
      clearInterval(interval);  
    }  
  }, 1000);  
}  
  
// 执行方法  
autoContinue();  

如何使用脚本,其实有很多方式,比如安装 Tampermonkey[1] 浏览器插件,新创建一个脚本,将以上代码贴入(自行查阅文档,方法很简单,这里就不介绍了,对 Tampermonkey 感兴趣的话,我后面可以专门写一篇文章来介绍)。这种方式对编程小白略微有点门槛。但是如果你正在使用 ChatGPT 桌面应用,那么恭喜你,这个功能已经被内置了。

ChatGPT 桌面应用

下载安装包:https://github.com/lencx/ChatGPT[2]。如果已安装,可以通过如下方式更新脚本。

  1. 重启应用,就可以看到这个弹窗提示,点击 Yes 可以直接跳转到脚本管理界面(没有看到也不影响)。

  1. 如果在 Version 字段下发现类似 0.1.0 -> 0.1.3 之类的东西,则表示此脚本有更新,点击 Sync 可以对脚本进行同步(注意:如果未发现 Version 信息,点击 Sync 按钮也可以同步脚本,如果脚本同步失败,可以点击 Remote File 复制里面的内容,然后点击 Edit 按钮将复制的内容粘贴到编辑区域)。

  1. 手动重启应用,脚本生效(可以直接退出,也可以点击菜单中的 Restart ChatGPT ,注意所有脚本内容的变更都需要重启应用才可以生效)。

注意:以上这些步骤是脚本更新的通用方法,如果你想自己编写特定的脚本,只需点击脚本管理界面中的 Edit 按钮即可(适合编程资深玩家,如果脚本编写错误,只需要再次点击 Sync 按钮即可恢复默认,总之桌面应用除了时不时更新一些不痛不痒的小功能外,也适合编程玩家 DIY,如果你有好的想法或者脚本,想分享给更多人,也可以为项目提 PR)。

OpenAI 修复了之前的一个漏洞,无限使用移动端 GPT-4 脚本已经失效。如果不想显示过多选项,可以编辑 chat.js 脚本,搜索 gpt4Mobile() 直接删除,或者注释即可。

视频演示:

References

[1]

Tampermonkey: https://www.tampermonkey.net

[2]

https://github.com/lencx/ChatGPT: https://github.com/lencx/ChatGPT

可关注我们的公众号:每天AI新工具