🚀 功能建议:建议加入GeminiPro API
androidcn opened this issue · 14 comments
Hello androidcn, Thank you for your first issue contribution 🎉
可以加,但是考虑到各种大模型实在太多,一个个去添加支持会很耗费精力,所以,当前我的建议是通过 one-api 将第三方的 LLM 接口转为标准的 OpenAI 接口,这样就能直接在 Easydict 中使用了。
比如 Google 的 Gemini,我现在已经在 Easydict 用上了。
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.
如果有小伙伴来 PR 支持第三方大模型,我们很乐意接受。
版本问题不大,最极端情况,我们甚至可以不用官方的 Swift SDK,像目前项目中 objc 写的 OpenAI 一样,手动封装网络请求。
但应该没必要,升到 macOS 12 其实也可以。 我简单弄了个分支 https://github.com/tisfeng/Easydict/tree/gemini ,测了一下,虽然它使用了 async 特性,但和 objc 配合也没问题。
我主要是担心模型太多,耗费精力
考虑到各种大模型实在太多,一个个去添加支持会很耗费精力
我这几天使用了 Gemini,效果确实还可以,最主要 API 还免费,因此感觉可以加,这样能让更多人更方便地使用。
@Jerry23011 你方便做一下这个功能吗?
@Jerry23011 你方便做一下这个功能吗?
这个没有像上次腾讯那样可以CV彩云,不确定能否成功,不过我可以试试,不懂的再请教你😄
可以,你就在我弄的 gemini 分支上开发,基本步骤和其他服务差不多:
- 参照已有的 Swift 服务,例如彩云,搭建服务架子;
- 参考目前的 OpenAI 服务,类似实现单词,英语句子和翻译类型分流处理;
- 参考 Google 官方的 demo 实现接口请求部分处理。
第三点可能麻烦一点,你先试试看,如果遇到解决不了的问题,可以找我。
我过两天试试,这两天刚放假🥹
👌
@tisfeng
要是想同时使用chatGPT和Gemini有可能吗?
感觉用户在增加各种查询服务。有没有可能后期 swift 重写时重构为模块,可以依据一些规范来自定义查询词典?
可以,这个 issue 就是新添加一个 gemini 翻译,并不影响之前的 chatGPT 翻译。
要是想同时使用chatGPT和Gemini有可能吗?
等重完好设置页后 #285 ,会添加 GUI 方式配置各个服务所需的参数,包括自定义 OpenAI prompt。
依据一些规范来自定义查询词典
注意,由于 Gemini 官方 API 限制 google-gemini/generative-ai-swift#83 ,仅 macOS 12.0+ 支持流式响应,macOS 11 会一次性返回。