Skip to content

常见问题

Keldos edited this page Mar 26, 2023 · 36 revisions

欢迎使用 川虎ChatGPT!在这里提供了一些常见问题的解答、故障排除和已知问题的信息。

如果您遇到了问题,请首先查看本页面并尝试解决。如果需要进一步帮助,可以提交 issue 或在讨论区提问。
请注意,在提交新 issue 之前请确保您已经充分利用了其他资源来解决问题,包括:

  • 查阅本页内容发现未列出您遇到的问题
  • 查阅所有 issue 发现没有同类问题
  • 查阅所有 讨论 发现没有同类问题
  • 通过各种方式在互联网上检索(包括询问ChatGPT与New Bing)您的问题后但仍无法自行解决

现在,您可以前往 GitHub Issues 报告问题或故障请求新功能,或前往 Github Discussion 向其他用户提问

另外,请注意“问题”一词表示“question”和“problem”的区别。如果您需要报告项目本身实际的技术问题、故障或错误(problem),那么欢迎提交一个新的 issue。但是,如果您只是碰到了一些自己无法解决的问题需要向其他用户或我们提问(question),那么最好的选择是在讨论区中发布一个新的帖子。 如果您不确定,请首先考虑在讨论区提问。

目前,我们默认了您发在 issue 中的问题是一个 question,但我们希望避免再在 issue 中见到类似“我该怎么操作?”的提问QAQ。

再次感谢您对我们项目的使用和支持。

代理配置

OpenAI不允许在不受支持的地区使用API,否则可能会导致账号被风控。下面以Clash和Surge为例(您完全可以选择其他的代理软件),给出代理配置示例

  • 在Clash配置文件中,加入:

    rule-providers:
      private:
        type: http
        behavior: domain
        url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/lancidr.txt"
        path: ./ruleset/ads.yaml
        interval: 86400
    
    rules:
     - RULE-SET,private,DIRECT
     - DOMAIN-SUFFIX,openai.com,<你的代理规则>
    
  • 如果你使用 Surge,请在配置文件中加入:

    [Rule]
    DOMAIN-SET,https://cdn.jsdelivr.net/gh/Loyalsoldier/surge-rules@release/private.txt,DIRECT
    DOMAIN-SUFFIX,openai.com,<你的代理规则>
    

请注意替换示例中“<你的代理规则>”,如果您不知道怎么替换,甚至可以自行百度。

另外,强烈建议打开Clash的TUN模式(Surge的增强模式),否则终端流量可能不会走代理。或者,你也可以配置HTTPS_PROXY这个环境变量,川虎ChatGPT会自动从环境变量中获取代理配置。

注意,如果你的配置文件中本来已经有对应的字段,请将这些规则合并到已有字段中,否则代理软件会报错。

  • 如果您对如何更改代理配置文件有更多的疑问,请移步 讨论区 提问,也欢迎有能力的用户为提问提供解答!
  • 请勿再提交任何代理配置相关的 ISSUE!
  • 请勿再提交任何代理配置相关的 ISSUE!
  • 请勿再提交任何代理配置相关的 ISSUE!

故障排除

首先,请先尝试拉取本项目的最新更改,使用最新的代码重试。

点击网页上的 Download ZIP 下载最新代码,或

git pull https://github.com/GaiZhenbiao/ChuanhuChatGPT.git main -f

如果还有问题,可以再尝试重装 gradio:

pip install gradio --upgrade --force-reinstall

很多时候,这样就可以解决问题。

TypeError: Base.set () got an unexpected keyword argument

这是因为川虎ChatGPT紧跟Gradio发展步伐,你的Gradio版本太旧了。请升级依赖:

pip install -r requirements.txt --upgrade

SSLError: HTTPSConnectionPool(host='api.openai.com', port=443)

requests.exceptions.SSLError: HTTPSConnectionPool(host='api.openai.com', port=443): Max retries exceeded with url: /v1/chat/completions 
(Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1129)')))

参见:#49#25

请参考配置代理部分,将openai.com加入你使用的代理App的代理规则。注意不要将127.0.0.1加入代理,否则会有下一个错误。

ImportError: cannot import name 'BaseOutputParser' from 'langchain.output_parsers'

新版 langchain 修改了包结构,暂时请先尝试把 requirements.txt 中 langchain 改为 langchain<0.0.119 重新安装依赖。

参见:#314

No matching distribution found for <package> (如tiktoken)

可能是因为你使用的pip源中没有符合条件的包。请尝试换用pypi的官方源下载包:

  • 临时换用官方源下载某个包:
    pip install <package> -i https://pypi.org/simple
    
    具体对tiktoken来说,写法是:
    pip install tiktoken -i https://pypi.org/simple
    
  • 或者永久替换为官方源:
    pip config set global.index-url https://pypi.org/simple
    

Something went wrong Expecting value: line 1 column 1 (char 0)

出现这个错误的原因是127.0.0.1被代理了,导致网页无法和后端通信。请设置代理软件,将127.0.0.1加入直连(具体方法见上面“SSL Error”部分)。

Something went wrong Connection errored out

关闭代理,启动App,开启代理,然后试试能不能用。如果能,说明是代理的规则有问题。

如果是部署在服务器上,需要在ChuanhuChatbot.py最后手动填写服务器和端口的信息。下图是一个示例。

image

如果仅配置用户名和密码后提示该错误而不配置时正常,可能还需要手动将 <你的python路径>/dist-packages/gradio/routes.py 中的 websocket.cookies.get("access-token") 改为 websocket.cookies.get("access-token-unsecure"),具体请见 #89

参见:#68#100#89#287

部署后无法通过局域网IP访问

需要在ChuanhuChatbot.py最后手动填写服务器和端口的信息。见上个问题中的图片。

参见:#293

ValueError: not enough values to unpack (expected 2, got 0)

代理问题,请参照前文配置代理。

HTTPSConnectionPool: Failed to establish a new connection

代理问题,请参照前文配置代理。

☹️发生了错误:连接超时,无法获取对话。请检查网络连接,或者API-Key是否有效。

可能是代理问题,也可能是OpenAI那边较为拥堵。请检查代理配置,如仍不行请尝试刷新页面或耐心等待。

openai.error.APIConnectionError

可能是urllib3的版本导致的。urllib3版本大于1.25.11,可能出现这个问题。 解决方案是卸载urllib3然后重装至1.25.11版本再重新运行一遍就可以。

在终端或命令提示符中卸载urllib3

pip uninstall urllib3

然后,通过使用指定版本号的pip install命令来安装所需的版本:

pip install urllib3==1.25.11

参见:#5。参考自:解决OpenAI API 挂了代理还是连接不上的问题

SyntaxError: invalid syntax placeholder=f"OpenAI API-key..."

Python版本过低。请将Python更新到3.8以上。

No module named '_bz2'

安装python前先下载 bzip 编译环境

sudo yum install bzip2-devel

login页面账户用户名密码验证没有反应

Gradio 3.22 的问题,现已被解决。请参照前文更新gradio。

在Python文件里设定API Key之后验证失败

在ChuanhuChatbot.py中设置APIkey后验证出错,提示“发生了未知错误Orz”

参见:#26

That model does not exist

请选择适合自己的模型,如gpt-3.5-turbo,而不是你没有权限调用api的gpt-4。

You exceeded your current quota, please check your plan and billing details.

你可能把OpenAI提供的配额用完了。你可以在 https://platform.openai.com/account/usage 中查看您的用量和余额。

已知问题

  • 部分特殊符号可能会错误地被Markdown渲染:
    • 表格中的 $
  • 部分PDF解析可能会出错
  • 连续的列表如存在换行可能在界面中被显示为多个新列表

更多错误修复信息请查看 更新日志

Clone this wiki locally