fruitbars / simple-one-api

OpenAI 接口接入适配,支持千帆大模型平台、讯飞星火大模型、腾讯混元以及MiniMax、Deep-Seek,等兼容OpenAI接口,仅单可执行文件,配置超级简单,一键部署,开箱即用. Seamlessly integrate with OpenAI and compatible APIs using a single executable for quick setup and deployment.
842 stars 73 forks source link

groq经常返回{'error': "error, status code: 403, message: invalid character '<' looking for beginning of value"} #28

Closed botoai closed 1 week ago

botoai commented 1 week ago

同样的配置, F:\simple-one-api>python openai.py {'error': "error, status code: 403, message: invalid character '<' looking for beginning of value"} Traceback (most recent call last): File "F:\simple-one-api\openai.py", line 5, in import openai File "F:\simple-one-api\openai.py", line 48, in message = result['error']['message'] TypeError: string indices must be integers

F:\simple-one-api>python openai.py {'id': 'as-f58fyz6321', 'object': 'chat.completion', 'created': 1719405301, 'model': 'ERNIE-Tiny-8K', 'choices': [{'index': 0, 'message': {'role': 'assistant', 'content': '我是由人工智能技术开发的模型,属于一个开源的机器学习平台。我来自多个公司,但并没有具体的公司背景。如果您需要关于特定模型或公司的信息,建议您访问相关的官方网站或社交媒体平台。'}, 'logprobs': None, 'finish_reason': 'completed'}], 'usage': {'prompt_tokens': 7, 'completion_tokens': 45, 'total_tokens': 52}}

配置如下 { "models": [ "llama3-70b-8192", "llama3-8b-8192", "gemma-7b-it", "mixtral-8x7b-32768" ], "enabled": true, "credentials": { "api_key": "gsk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" }, "server_url": "https://api.groq.com/openai/v1" }

botoai commented 1 week ago

有一会配置又是正常的,但不记得怎么弄出来的了,其他的baidu,tencent,xinghuo大模型都正常,就这个一直这样

WBinBin001 commented 1 week ago

有一个配置又是正常的,但不记得怎么弄出来的了,其他的baidu,tencent,xinghuo大模型都正常,就这个这个样

你改好了么,我也一样,怎么都配不好。。。。

fruitbars commented 1 week ago

同样的配置, F:\simple-one-api>python openai.py {'error': "error, status code: 403, message: invalid character '<' looking for beginning of value"} Traceback (most recent call last): File "F:\simple-one-api\openai.py", line 5, in import openai File "F:\simple-one-api\openai.py", line 48, in message = result['error']['message'] TypeError: string indices must be integers

F:\simple-one-api>python openai.py {'id': 'as-f58fyz6321', 'object': 'chat.completion', 'created': 1719405301, 'model': 'ERNIE-Tiny-8K', 'choices': [{'index': 0, 'message': {'role': 'assistant', 'content': '我是由人工智能技术开发的模型,属于一个开源的机器学习平台。我来自多个公司,但并没有具体的公司背景。如果您需要关于特定模型或公司的信息,建议您访问相关的官方网站或社交媒体平台。'}, 'logprobs': None, 'finish_reason': 'completed'}], 'usage': {'prompt_tokens': 7, 'completion_tokens': 45, 'total_tokens': 52}}

配置如下 { "models": [ "llama3-70b-8192", "llama3-8b-8192", "gemma-7b-it", "mixtral-8x7b-32768" ], "enabled": true, "credentials": { "api_key": "gsk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" }, "server_url": "https://api.groq.com/openai/v1" }

openai.py 这个脚本可以将返回的http body打印一下出来 错误信息吗?

botoai commented 1 week ago

同样的配置, F:\simple-one-api>python openai.py {'error': "error, status code: 403, message: invalid character '<' looking for beginning of value"} Traceback (most recent call last): File "F:\simple-one-api\openai.py", line 5, in import openai File "F:\simple-one-api\openai.py", line 48, in message = result['error']['message'] TypeError: string indices must be integers F:\simple-one-api>python openai.py {'id': 'as-f58fyz6321', 'object': 'chat.completion', 'created': 1719405301, 'model': 'ERNIE-Tiny-8K', 'choices': [{'index': 0, 'message': {'role': 'assistant', 'content': '我是由人工智能技术开发的模型,属于一个开源的机器学习平台。我来自多个公司,但并没有具体的公司背景。如果您需要关于特定模型或公司的信息,建议您访问相关的官方网站或社交媒体平台。'}, 'logprobs': None, 'finish_reason': 'completed'}], 'usage': {'prompt_tokens': 7, 'completion_tokens': 45, 'total_tokens': 52}} 配置如下 { "models": [ "llama3-70b-8192", "llama3-8b-8192", "gemma-7b-it", "mixtral-8x7b-32768" ], "enabled": true, "credentials": { "api_key": "gsk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" }, "server_url": "https://api.groq.com/openai/v1" }

openai.py 这个脚本可以将返回的http body打印一下出来 错误信息吗?

有一个配置又是正常的,但不记得怎么弄出来的了,其他的baidu,tencent,xinghuo大模型都正常,就这个这个样

你改好了么,我也一样,怎么都配不好。。。。

没有

botoai commented 1 week ago

同样的配置, F:\simple-one-api>python openai.py {'error': "error, status code: 403, message: invalid character '<' looking for beginning of value"} Traceback (most recent call last): File "F:\simple-one-api\openai.py", line 5, in import openai File "F:\simple-one-api\openai.py", line 48, in message = result['error']['message'] TypeError: string indices must be integers F:\simple-one-api>python openai.py {'id': 'as-f58fyz6321', 'object': 'chat.completion', 'created': 1719405301, 'model': 'ERNIE-Tiny-8K', 'choices': [{'index': 0, 'message': {'role': 'assistant', 'content': '我是由人工智能技术开发的模型,属于一个开源的机器学习平台。我来自多个公司,但并没有具体的公司背景。如果您需要关于特定模型或公司的信息,建议您访问相关的官方网站或社交媒体平台。'}, 'logprobs': None, 'finish_reason': 'completed'}], 'usage': {'prompt_tokens': 7, 'completion_tokens': 45, 'total_tokens': 52}} 配置如下 { "models": [ "llama3-70b-8192", "llama3-8b-8192", "gemma-7b-it", "mixtral-8x7b-32768" ], "enabled": true, "credentials": { "api_key": "gsk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" }, "server_url": "https://api.groq.com/openai/v1" }

openai.py 这个脚本可以将返回的http body打印一下出来 错误信息吗?

{"error":"error, status code: 403, message: invalid character '\u003c' looking for beginning of value"} {'error': "error, status code: 403, message: invalid character '<' looking for beginning of value"} Traceback (most recent call last): File "F:\simple-one-api\simple-oneapi.py", line 46, in print("\r\n", result["choices"][0]["message"]["content"].strip()) KeyError: 'choices'

fruitbars commented 1 week ago

这是json解析时候报错,解析之前收到的http body的数据能print出来吗?

botoai commented 1 week ago

这是json解析时候报错,解析之前收到的http body的数据能print出来吗? 怎么打印法?或者要怎么配置?

我代码 `apikey = "sk-123456" #4

设置 API 密钥和 API URL

url = "http://192.168.1.32:3035/v1/chat/completions"

设置请求头

headers = { "Content-Type": "application/json", "Authorization": "Bearer " + apikey, }

设置请求体

prompt = "which model are you? who developed you?" field = { "model":"llama3-70b-8192",

"model":"Atom-13B-Chat",

"messages":[
    {"role": "user", "content": prompt},
]

}

发送 HTTP POST 请求

response = requests.post(url, headers=headers, data=json.dumps(field))

解析响应结果

result = response.json() print(result) print("\r\n", result["choices"][0]["message"]["content"].strip())`

fruitbars commented 1 week ago

类似这样吧,👀看具体输出的消息内容

response = requests.post(url, headers=headers, data=json.dumps(field))

if response.status_code != 200: print(response.text) else:

解析response

pass
botoai commented 1 week ago

response = requests.post(url, headers=headers, data=json.dumps(field)) print(response.text) print(response.json())

返回 {"error":"error, status code: 403, message: invalid character '\u003c' looking for beginning of value"} {'error': "error, status code: 403, message: invalid character '<' looking for beginning of value"}

botoai commented 1 week ago

2024-06-27T12:19:01.133+0800 ERROR handler/openai_openai_handler.go:157 An error occurred {"req": {"model":"llama3-70b-8192","messages":[{"role":"user","content":"1+1=?"}],"temperature":0.1}, "error": "error, status code: 403, message: invalid character '<' looking for beginning of value"}

Blackwatch927 commented 1 week ago

json解析报错,回传的HTML可以看一下,大概率是从国内访问被block了。可以挂下代理看看有没有恢复。

botoai commented 1 week ago

是代理问题,可以关掉了。