一、运行 docker-compose 报错:Error while fetching server API version: HTTPConnection.request()

在安装运行 docker compose 执行失败,报错如下:

Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 33, in <module>
    sys.exit(load_entry_point('docker-compose==1.29.2', 'console_scripts', 'docker-compose')())
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 81, in main
    command_func()
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 200, in perform_command
    project = project_from_options('.', options)
  File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 60, in project_from_options
    return get_project(
  File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 152, in get_project
    client = get_client(
  File "/usr/lib/python3/dist-packages/compose/cli/docker_client.py", line 41, in get_client
    client = docker_client(
  File "/usr/lib/python3/dist-packages/compose/cli/docker_client.py", line 170, in docker_client
    client = APIClient(use_ssh_client=not use_paramiko_ssh, **kwargs)
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 197, in __init__
    self._version = self._retrieve_server_version()
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 221, in _retrieve_server_version
    raise DockerException(
docker.errors.DockerException: Error while fetching server API version: HTTPConnection.request() got an unexpected keyword argument 'chunked'

这是因为你的 python urllib 版本过低导致,升级 urllib3 到 2.0.0 即可:

pip install 'urllib3<2'

二、函数调用问题,在函数调用的时候会出现签名失败。

在调用微博热搜,dalle3 绘图函数的时候报类似下面的错误:

error with parse auth token: token signature is invalid: signature is invalid

这是因为导入数据库中的函数调用 token 是我本地生成的,本地的密钥跟你线上的密钥肯定不一样的,所以你需要在管理后台重新生成函数的 token。

你只需到管理后台 => "编辑函数",然后重新生成 Token 就好了。

图片加载中...

三、有时候调用函数,有时候不调用

大语言模型推理有一定的随机性,即使你每次问一样的问题,每次得到的答案也不一定相同。所以可能这次触发了函数调用,下次就没有触发,都属于正常情况。目前我测试的结果看,gpt-3.5-turbo 和 gpt-3.5-16k,gpt-4 这几个模型调用函数稳定一些。1106 模型和 0125 系列模型 Function 功能都不太稳定。

四、系统开小差

如果报错“系统开小差”的话,一般都是后端 API 程序出错了,通常都会打印错误日志,这时你只需查看一下错误日志就知道具体的报错原因了。

错误日志在你部署根目录(docker-compose.yaml文件所在目录)的 logs/app.log 文件中。

五、 对话窗口大模型无法识别上传 PDF 文件

首先你要确认你的 Tika 容器是否正常启动,在项目目录执行 docker compose ps 查看 tika 容器是否正常启动。





 

geekai-api       geekai-api     2 weeks ago   Up 2 weeks   0.0.0.0:5678->5678/tcp, 0.0.0.0:9999->9999/tcp
geekai-mysql     geekai-mysql   2 weeks ago   Up 2 weeks   33060/tcp, 0.0.0.0:3307->3306/tcp
geekai-redis     geekai-redis   2 weeks ago   Up 2 weeks   0.0.0.0:6380->6379/tcp
geekai-web       geekai-web     2 weeks ago   Up 2 weeks   80/tcp, 443/tcp, 0.0.0.0:8080->8080/tcp
tika             tika           2 weeks ago   Up 2 weeks   0.0.0.0:9998->9998/tcp

其次,检查一下 config/config.toml 文件中 tika 配置是否正确:




 

Listen = "0.0.0.0:5678"
StaticDir = "./static"
StaticUrl = "/static"
TikaHost = "http://tika:9998"

最后,最重要一点,不要使用 http://localhost:8080 访问你的系统,而是使用 http://IP:8080 访问你的系统。 因为你的文件是上传在 geekai-api 容器中,无法在 tika 容器中通过 localhost 来下载并解析文件内容并上传给大模型,所以大模型才会回复你类似“我无法读取本地文件”之类的报错。

六、 图生图,图生视频任务失败

图生图,图生视频需要第三方的 API 接口能否访问你上传的图片,所以如果你是在本地测试的话,你的图片是上传到本地,第三方的 API 接口无法访问你提供的图片地址,所以会报错。出现这种情况有两种解决方案:

  1. 不要使用本地存储,配置第三方的 OSS 服务,比如七牛云,阿里云,腾讯云等,将图片上传到第三方的 OSS 服务中,然后提供给 API 接口访问。
  2. 把系统部署在线上服务器,确保你上传的图片能否被第三方的 API 接口访问。
上次更新: 2025/3/10 17:14:46