songquanpeng / one-api

OpenAI 接口管理 & 分发系统,支持 Azure、Anthropic Claude、Google PaLM 2 & Gemini、智谱 ChatGLM、百度文心一言、讯飞星火认知、阿里通义千问、360 智脑以及腾讯混元,可用于二次分发管理 key,仅单可执行文件,已打包好 Docker 镜像,一键部署,开箱即用. OpenAI key management & redistribution system, using a single API for all LLMs, and features an English UI.
https://openai.justsong.cn/
MIT License
17.5k stars 3.98k forks source link

gamini具体该如何使用啊?没看懂.............. #887

Open CatCars opened 8 months ago

CatCars commented 8 months ago

例行检查

问题描述 我首先是按照更新日志内/pull/826的图片 feat: add Google Gemini Pro support by @cnbeining in https://github.com/songquanpeng/one-api/pull/826 进行模型中转 { "gpt-3.5-turbo": "gemini-pro" } 用浏览器插件:沉浸式翻译,openai测试报错 服务返回错误:401, 说明未登录或登录态失效,请重新登录。 {"error":{"message":"Incorrect API key provided: AIzaSyBG***1aP4. You can find your API key at https://platform.openai.com/account/api-keys. (request id: 20231230193639954279483jxAmn2Le)","type":"invalid_request_error","param":"","code":"invalid_api_key"}}

然后我打算试试直接请求gemini-pro模型 用浏览器插件:沉浸式翻译,gemini模式测试报错 插件的自定义 API 接口地址: https://服务器IP/v1/models/{model}:generateContent?key={key}

报错 服务返回错误,代码:404: Not Found{"error":{"message":"Invalid URL (POST /v1/models/{model}:generateContent)","type":"invalid_request_error","param":"","code":""}}

复现步骤 没搞懂使用方法所以100%报错 预期结果

请问gamini具体该如何使用,它的运行方式是只能把请求中转到gemini-pro么?具体如何操作 还有可不可直接调用gemini-pro模型,自定义 API 接口地址该如何填写,渠道内的代理需要填写内容么? 没翻到说明文档..............

panxiaoguang commented 8 months ago

oneAPI应该是把GeminiPro的接口调用方式转换成openAI的形式了,但是你的调用方式是按照Gemini-pro的,所以你不该使用oneAPI,你只是需要一个代理而已,可以搜索其他项目

songquanpeng commented 7 months ago

渠道配置贴一下

2catycm commented 7 months ago

oneAPI应该是把GeminiPro的接口调用方式转换成openAI的形式了,但是你的调用方式是按照Gemini-pro的,所以你不该使用oneAPI,你只是需要一个代理而已,可以搜索其他项目

不是的,我看楼主就是按照OpenAI格式去调用Gemini失败了

panxiaoguang commented 7 months ago

oneAPI应该是把GeminiPro的接口调用方式转换成openAI的形式了,但是你的调用方式是按照Gemini-pro的,所以你不该使用oneAPI,你只是需要一个代理而已,可以搜索其他项目

不是的,我看楼主就是按照OpenAI格式去调用Gemini失败了

那是不是API输入错了,我看他输的格式很像原生的Google API,Oneapi的令牌都是S开头的吧

huameiwei-vc commented 7 months ago

我也是添加了映射,但是错误, 当前分组 default 下对于模型 gpt-3.5-turbo 无可用渠道 (request id: 20240102090351225209344zrTrsEqF)

image
qingfengfenga commented 7 months ago

同样的问题,google原生的key直接在 ChatGPT-Next-Web直接使用或者是使用代理都是可以使用的。但是加到one-api里面,目前好像都不行。

panxiaoguang commented 7 months ago

同样的问题,google原生的key直接在 ChatGPT-Next-Web直接使用或者是使用代理都是可以使用的。但是加到one-api里面,目前好像都不行。

哥们用的啥版本的oneapi啊,我现在用的alpha4, 一切都正常呢。

CatCars commented 7 months ago

我也是添加了映射,但是错误, 当前分组 default 下对于模型 gpt-3.5-turbo 无可用渠道 (request id: 20240102090351225209344zrTrsEqF) image

删除one-api.db 文件或者补全路径

CatCars commented 7 months ago

发现问题了,我是手动部署的(alpha2),没使用MySQL数据库。删除驱动重新添加时右上角弹了ID什么什么的弹窗然后马上消失,进到渠道列表里查看刚才添加的渠道都在但是调用时保报错没有模型,我删了one-api.db 数据库文件重新设置,再次调用就正常了。复现发现,举例你添加10个渠道然后删除,再添加10个渠道这10个渠道测试是无效的,然后继续添加10个渠道ID11-20的这20个渠道正常就很迷。 删除one-api.db 文件,或者用MySQL数据库就正常了。 one-api.db 文件权限设置为777也不行,不知道哪里出了问题像是删渠道删不干净。 还有自定义域名需要填到/v1或者/v1/chat/completions,发现openai可以不补全的程序用gemini就报错必须补全路径。

zsio commented 7 months ago

我也是添加了映射,但是错误, 当前分组 default 下对于模型 gpt-3.5-turbo 无可用渠道 (request id: 20240102090351225209344zrTrsEqF) image

image 我这么配置的 正常使用 没有问题

kitaev-chen commented 7 months ago

我也是添加了映射,但是错误, 当前分组 default 下对于模型 gpt-3.5-turbo 无可用渠道 (request id: 20240102090351225209344zrTrsEqF) image

image 我这么配置的 正常使用 没有问题

我遇到的情况是,模型那栏去掉 gemini-pro 才能正常工作,否则报上游错误。这一块很多回答都搞反了,比较混乱。

模型:显示名 模型重定向:{"显示名": "实际名"}

比如 my-gemini, {"my-gemini": "gemini-pro"} 我最终是这样配置才能工作,当然,cutoff date还是回答错误。

zsio commented 7 months ago

我遇到的情况是,模型那栏去掉 gemini-pro 才能正常工作,否则报上游错误。这一块很多回答都搞反了,比较混

它的逻辑是 key 映射为 value。 用户请求时使用左面的 key,程序会改变为对应的 value 像 llm 服务发出去。

【模型】这一栏是此服务的配置允许用户调用的模型列表

换句话说,如果你希望把 gpt-3.5-turbo 映射到 gemini-pro,那么需要在映射那里填写我上面发的图片中的配置,并且在模型一栏中添加 gpt-3.5-turbo 才可以。

panxiaoguang commented 7 months ago

各位更新最新版本就好了,最新版本,Geminipro和vision都是正常使用的。

panxiaoguang commented 7 months ago

各位更新最新版本就好了,最新版本,Geminipro和vision都是正常使用的。

而且不要做任何的重定向

leoleelxh commented 7 months ago

各位更新最新版本就好了,最新版本,Geminipro和vision都是正常使用的。

更新到0.5.11,还是不行,还有什么需要注意的么?前端用chat next web image

panxiaoguang commented 7 months ago

各位更新最新版本就好了,最新版本,Geminipro和vision都是正常使用的。

更新到0.5.11,还是不行,还有什么需要注意的么?前端用chat next web image

那就是你服务器不支持Gemini了

leoleelxh commented 7 months ago

各位更新最新版本就好了,最新版本,Geminipro和vision都是正常使用的。

更新到0.5.11,还是不行,还有什么需要注意的么?前端用chat next web image

那就是你服务器不支持Gemini了

我是nas部署的one-api,需要什么服务器配置啊?求教!

panxiaoguang commented 7 months ago

各位更新最新版本就好了,最新版本,Geminipro和vision都是正常使用的。

更新到0.5.11,还是不行,还有什么需要注意的么?前端用chat next web image

那就是你服务器不支持Gemini了

我是nas部署的one-api,需要什么服务器配置啊?求教!

谷歌API需要特殊地区,你走代理了吗?NAS不是在你自己家里?你们家支持谷歌API?

kitaev-chen commented 7 months ago

各位更新最新版本就好了,最新版本,Geminipro和vision都是正常使用的。

更新到0.5.11,还是不行,还有什么需要注意的么?前端用chat next web

我是sealos部署的 v0.5.12-alpha,one-api中渠道是这样配置的

NextChat里custom models是这样配置的 -all,+gpt-3.5-turbo,+gpt-3.5-turbo-1106,+gpt-3.5-turbo-16k,+gpt-3.5-turbo-16k-0613,+gpt-4,+gpt-4-1106-preview,+gpt-4-vision-preview,+gpt-4-32k,-gpt-4-32k-0314,+gpt-4-32k-0613,+google-gemini-pro,+google-gemini-pro-vision,+SparkDesk3,+qwen-turbo,+qwen-plus,+qwen-max,+qwen-max-1201,+qwen-max-longcontext,+chatglm_turbo,+ERNIE-Bot,+ERNIE-Bot-turbo,+ERNIE-Bot-4

最后效果是这样的,当然知识截至似乎有点问题,但其它使用没问题

leoleelxh commented 7 months ago

各位更新最新版本就好了,最新版本,Geminipro和vision都是正常使用的。

更新到0.5.11,还是不行,还有什么需要注意的么?前端用chat next web

我是sealos部署的 v0.5.12-alpha,one-api中渠道是这样配置的

NextChat里custom models是这样配置的 -all,+gpt-3.5-turbo,+gpt-3.5-turbo-1106,+gpt-3.5-turbo-16k,+gpt-3.5-turbo-16k-0613,+gpt-4,+gpt-4-1106-preview,+gpt-4-vision-preview,+gpt-4-32k,-gpt-4-32k-0314,+gpt-4-32k-0613,+google-gemini-pro,+google-gemini-pro-vision,+SparkDesk3,+qwen-turbo,+qwen-plus,+qwen-max,+qwen-max-1201,+qwen-max-longcontext,+chatglm_turbo,+ERNIE-Bot,+ERNIE-Bot-turbo,+ERNIE-Bot-4

最后效果是这样的,当然知识截至似乎有点问题,但其它使用没问题

按照这个配置也不行,可能跟环境有关吧。先不折腾了。

qingfengfenga commented 7 months ago

实测:

ychappyboy commented 7 months ago

实测:

  • 请求地址在香港时,不管是否使用代理(代理只解决是否能访问带google api),都会被拒绝调用(AWS和阿里云香港服务器实测)。
{
  "error": {
    "code": 400,
    "message": "User location is not supported for the API use.",
    "status": "FAILED_PRECONDITION"
  }
}
  • 请求地址在国内时,使用代理解决网络问题,可以正常调用。(阿里云国内服务器实测)
  • chat web 为以下状态时,大概率是渠道和chatweb配置都正常,但是Api被拒绝调用。 image

你代理大概率是CF吧,换个代理就好了,CF是就近使用边缘计算的,在香港CF代理用的大概率是香港的服务器,本身就在google的拒绝范围之内,在大陆同一个CF代理走的可能是日本或韩国。

shuyaoyimei commented 6 months ago

it looks some bug in this code, the model is Gemini not Gemini pro. the utm setiing as follow. image image

0x5c0f commented 4 months ago

突然感觉你这个和我遇到的这个好像是一样的,你可以尝试下用chatbox客户端试试,正常配置openai,模型设置自定义模型,我是用nextweb也无法正常使用gemini。但chatbox就可以通oneapi代理正常用,我的版本是最新的latest ,感觉这个是nextweb的问题

DavidZhiXing commented 3 months ago

这个我终于配置成功了,比较坑的地方是,gemini需要添加gpt model, 将gpt model重定向到gemini

{
  "gemini-1.0-pro": "gemini-pro",
  "gpt-3.5-turbo": "gemini-pro"
}