linweiyuan/go-chatgpt-api

docker部署报错:ERRO[0000] Health check failed:

Joackk opened this issue · 30 comments

Joackk commented

日志中内容如下图
image
docker-compose.yml文件内容如下
version: "3"
services:
go-chatgpt-api:
container_name: go-chatgpt-api
image: linweiyuan/go-chatgpt-api
ports:
- 8080:8080
environment:
- TZ=Asia/Shanghai
restart: unless-stopped

网络状况正常,可以正常访问chatgpt。
请问大佬如果想要使用伪api,我该把账号密码写在环境变量里吗?

第二个问题,不用

第一个问题,看上去网络不太正常,不要相信那个所谓的检测脚本

Joackk commented

第二个问题,不用

第一个问题,看上去网络不太正常,不要相信那个所谓的检测脚本

大佬这样是成功了吗?我看没有报错了,但是无法访问到8080
image
然后尝试py中使用api
image

不好意思忘了这件事了,能分享完成的 py 代码吗,不是很懂 py,看上去像是说 json 解析失败之类的

Joackk commented

不好意思忘了这件事了,能分享完成的 py 代码吗,不是很懂 py,看上去像是说 json 解析失败之类的

没事没事,大佬能回复就很感谢了。代码如下:

import openai

openai.api_key = ""
openai.api_base = "http://127.0.0.1:8080/v1"

while True:
    text = input("请输入问题:")
    response = openai.ChatCompletion.create(
        model='gpt-3.5-turbo',
        messages=[
            {'role': 'user', 'content': text},
        ],
        stream=True,
        allow_fallback=True
    )

    for chunk in response:
        print(chunk.choices[0].delta.get("content", ""), end="", flush=True)
    print("\n")
Joackk commented

不好意思忘了这件事了,能分享完成的 py 代码吗,不是很懂 py,看上去像是说 json 解析失败之类的

对了大佬,还有就是在虚拟桌宠([VPet)里调用也是这样,我打包成api主要就是想给翻译器和一些其他软件用

改为这个,亲测

openai.api_base = "http://127.0.0.1:8080/imitate/v1"

Joackk commented

改为这个,亲测

openai.api_base = "http://127.0.0.1:8080/imitate/v1"

soga,等我回去试一下,感谢大佬,大佬这不是把自己账号转换为api的吗?我一直很奇怪直接拉去docker都没写入我的账号,他转的那里的账号的哇

token 里面有账号信息

Joackk commented

token 里面有账号信息

是要设置token或者环境变量吗?我是只有一个docker-compose文件,啥都没了,文件内容就如下,我是要再加一个env文件之类的来存token吗?

version: "3"
services:
  go-chatgpt-api:
    container_name: go-chatgpt-api
    image: linweiyuan/go-chatgpt-api
    ports:
      - 8080:8080
    environment:
      - TZ=Asia/Shanghai
      - PROXY=socks5://10.162.67.61:7890
      - CHATGPT_PROXY_SERVER=http://chatgpt-proxy-server:9515
    restart: unless-stopped

openai.api_key = "token"

Joackk commented

openai.api_key = "token"

大佬可以设置账号密码登陆,然后自动获取token吗

Joackk commented

openai.api_key = "token"

感谢大佬,是我**了,刚翻了文本原来不是写环境变量里的,是写代码里的,万分感谢

Joackk commented

openai.api_key = "token"

大佬,可以把这个token包含到docker里吗?调用时候key空着即可调用?

这样就不能多人共用,py 代码里改,不是更灵活吗

Joackk commented

这样就不能多人共用,py 代码里改,不是更灵活吗

确实,不过我是自用的,调用给那些翻译软件和其他东西用,有设置方法吗?

不写 py 里是出于什么考虑?

Joackk commented

不写 py 里是出于什么考虑?

感觉不屑更方便一点,主要是自己一个人用,而我其实不怎么用py调用它,用py调用api主要时测试能不能用,更多的是在一些翻译软件和VPet里调用,在这个VPet中调用被提示了401,但是py中正常,有点离谱

试一下在环境变量里加 IMITATE_ACCESS_TOKEN

Joackk commented

试一下在环境变量里加 IMITATE_ACCESS_TOKEN

后面的值需要双引号括起来吗?

Joackk commented

试一下在环境变量里加 IMITATE_ACCESS_TOKEN

感谢大佬试了下,不加双引号可以,加了双引号不行,万分感谢

请问下 allow_fallback 这个参数是什么意思,仓库代码里貌似没有搜到这个字段。

Joackk commented

请问下 allow_fallback 这个参数是什么意思,仓库代码里貌似没有搜到这个字段。

我也忘了,我这是用的以前奇美拉调用api给的样例

😂,这个转 api 是不是没办法记住上下文,只能一个一个的提问,我还以为这个字段是可以连续上下文的标记😂

Joackk commented

😂,这个转 api 是不是没办法记住上下文,只能一个一个的提问,我还以为这个字段是可以连续上下文的标记😂

那你要问作者大佬了

添加环境变量 ENABLE_HISTORY=1

@linweiyuan 我遇到了同样的问题,但是错误是 connection timed out
我尝试了使用 apk add curl 之后测试是否能够连通,返回的是 200
我确认了环境变量已经设置,但是仍然无法连通
image
image

你这配置哪里抄的,从来都不支持 HTTP(S)_PROXY 这种环境变量,虽然与这个报错无关

你这配置哪里抄的,从来都不支持 HTTP(S)_PROXY 这种环境变量,虽然与这个报错无关

我设置了 PROXY,但是最后发现这个问题应该是和使用的镜像有关

我在不直接拉取镜像,而是 clone 后在 compose 内 build 的方法解决了。

所以你这配置是哪里抄的。。。

dockerhub 上的镜像才是正确的

自己写的(