现在其实已经有很多在线的llm服务了,当然也存在许多开源部署方案,但是不知道大家有没有发现一个问题,目前基于ChatGPT开发的应用,都是使用的OpenAI的接口。换句话说,如果没有OpenAI账号,就没有办法使用这些应用。但是其实这些应用并不是强依赖于OpenAI的接口,其他的在线llm服务也是可以的,如claude、cohere等,自己部署的模型当然也行。

假如有这么一个东西,可以让你不再受限于只能使用OpenAI接口,相信工作问题将可以更快解决,早早下班指日可待。受于claude-to-chatgpt启发,于是我决定做一个这样的项目,to-chatgpt,让我们可以更加随意自由地使用所有ChatGPT应用!!!

运行说明

使用之前,需要保证当前服务可以访问相关的llm服务,比如说claude、cohere都有区域限制。至于这么处理这个限制,github上有很多方案,搜索一下就知道了,提示只能这么多了。

adapter 参数

值得注意的是,目前有两种适配器,一种是异步的,一种是同步的。 决定使用哪个类别的因素是当前访问在线LLM服务的sdk。如果提供了异步接口,则优先考虑异步实现。

通过-a指定适配器,目前已经实现的适配器包括了:

异步适配器

  • claude,使用 anthropic-sdk-python 实现。 活期账户需要申请,成功后可免费使用,供个人日常使用。
  • cohere,使用 cohere-python 实现。 只需要注册一个账号,个人就可以免费使用,但是有频率限制,一分钟五次。
  • new_bing,使用 EdgeGPT 实现,EdgeGPT 是微软 Bing Chat AI 的逆向工程 API。 因为目前new bing没有提供官方sdk,所以这种方式不稳定。

同步适配器

  • bard,使用 Bard 实现,是 Google Bard 的逆向工程 API,不稳定。

如果想在 ChatGPT 应用程序中使用 cohere api,你只需要启动服务,如:

python app.py -a cohere

还有一点需要注意的是,因为有些API是非异步的,比如现在的bard,需要运行app_sync.py文件,比如:

python app_sync.py -a bard

源码运行

git clone https://github.com/SimFG/to-chatgpt
cd to-chatgpt pip install poetry
poetry install
python app.py -a new_bing

docker 运行

docker pull simfg/to_chatgpt:latest

docker run -d -p 8000:8000 simfg/to_chatgpt:0.1

指定adapter运行

docker run -d -p 8000:8000 simfg/to_chatgpt:latest poetry run python app.py -a new_bing

使用说明

如果发现服务没有正常响应,可以查看服务控制台是否有错误输出,很可能访问llm服务有问题。

如果要指定服务的端口,可以使用-p参数。

将chatgpt应用中的openai base url设置为服务地址。 一般这个选项在openai api key附近。

不同的适配器有不同的使用方法,说明如下。

  • claude

    启动服务后,在需要OPENAI_API_KEY的地方指定claude服务的api key。

  • cohere

    启动服务后,在需要OPENAI_API_KEY的地方指定cohere服务的api key。

  • new_bing

    不需要设置,但不稳定。

  • bard

    启动服务后,在需要OPENAI_API_KEY的地方指定__Secure-1PSID cookie。

cookie获取方式

  • F12 控制台
  • 复制值
    • 会话:转到应用程序 → Cookie → __Secure-1PSID。 复制该 cookie 的值。

更多细节:Bard

如果你认为项目不错,帮忙Github star and star,感谢感谢

To ChatGPT:让你更加随意地使用所有ChatGPT应用的更多相关文章

  1. 快速使用ChatGpt Web Server

    快速使用ChatGpt Web Server ChatGpt Web Server是使用Blazor Server模式部署的一个服务,所有的逻辑和代码执行都会在服务器执行,然后通过SignalR传输到 ...

  2. 玩 ChatGPT 的正确姿势「GitHub 热点速览 v.22.49」

    火了一周的 ChatGPT,HG 不允许还有小伙伴不知道这个东西是什么?简单来说就是,你可以让它扮演任何事物,据说已经有人用它开始了颜色文学创作.因为它太火了,所以,本周特推在几十个带有"c ...

  3. 如何使用ChatGPT来自动化Python任务

    1.概述 最近,比较火热的ChatGPT很受欢迎.今天,笔者为大家来介绍一下ChatGPT能做哪些事情. 2.内容 ChatGPT是一款由OpenAI开发的专门从事对话的AI聊天机器人.它的目标是让A ...

  4. ChatGPT/InstructGPT详解

    作者:京东零售 刘岩 前言 GPT系列是OpenAI的一系列预训练文章,GPT的全称是Generative Pre-Trained Transformer,顾名思义,GPT的目的就是通过Transfo ...

  5. ChatGPT与人工智能

    一.ChatGPT相关信息 1.微软新版Bing搜索引擎集成ChatGPT,访问地址:https://www.bing.com/new 2.谷歌版ChatGPT灾难级发布,市值一夜狂跌7000亿,熬夜 ...

  6. 用ChatGPT来了解ChatGPT

    用ChatGPT来了解ChatGPT 之前学习一个新技术, 想着要搞清楚这6个问题(来自陈皓介绍的学习方法): 1.这个技术出现的背景, 初衷, 要达到什么样的目标或是要解决什么样的问题. 2.这个技 ...

  7. 你好 ChatGPT, 帮我看下这段代码有什么问题?

    点赞再看,动力无限. 微信搜「程序猿阿朗 」. 本文 Github.com/niumoo/JavaNotes 和 未读代码博客 已经收录,有很多系列文章. 今天一个很简单的功能,触发了一个 BUG,处 ...

  8. 冰河指南AI技术社区基于ChatGPT正式启动运营

    大家好,我是冰河~~ 最近ChatGPT真的太火了,科技圈几乎都在争相报导这个黑科技,它能够通过学习和理解人们的语言来和人类进行对话,能够与人们进行交流,甚至可以对你提出的问题进行分析,尽可能给出你想 ...

  9. ChatGPT国内镜像模板,国内使用ChatGPT中文版本

    @ 目录 一.什么是ChatGPT国内镜像 二.ChatGPT国内镜像使用教程 免费ChatGPT镜像的功能: 三.ChatGPT中文版作用 四.怎么使用ChatGPT国内镜像 五.中文ChatGPT ...

  10. 国内“谁”能实现chatgpt,短期穷出的类ChatGPT简评(算法侧角度为主),以及对MOSS、ChatYuan给出简评,一文带你深入了解宏观技术路线。

    1.ChatGPT简介[核心技术.技术局限] ChatGPT(全名:Chat Generative Pre-trained Transformer),美国OpenAI 研发的聊天机器人程序 ,于202 ...

随机推荐

  1. 官方文档 | 【JVM调优体系】「GC底层调优实战」XPocket为终结性能问题而生—开发指南

    XPocket 用户文档 XPocket 是PerfMa为终结性能问题而生的开源的插件容器,它是性能领域的乐高,将定位或者解决各种性能问题的常见的Linux命令,JDK工具,知名性能工具等适配成各种X ...

  2. Python的函数和方法如何区分呢?

    结论>>>:无论是函数还是方法都用def关键字来定义 方法:只要是自动传值都是方法.由谁来调用.会把自身传入 函数:有几个值就传几个值否则会报错 目录 一.详细介绍函数和方法 二.用 ...

  3. [中间件]Fastjson [转载]

    1 Fastjson的安全漏洞 本段摘自: fastjson到底做错了什么?为什么会被频繁爆出漏洞? 前段时间,fastjson被爆出过多次存在漏洞,很多文章报道了这件事儿,并且给出了升级建议. 但是 ...

  4. 一道名题-(csp 儒略日)的心得与技巧

    引: 如果你见到一个oi对着 4713,1582 146097 2299160 颠颠地笑,不用怀疑,他是在做那道名题--<csp-s2020 T1 儒略日> 这道题,我做了三年,平均每年做 ...

  5. 19.13备库duplicate恢复新主库(二)

    问题描述:主备两个库不在同一个机房,此时想从这一套库中在复制一套可读可写的新库出来.网络带宽要求比较高,需要从备库中使用备份在起一个新库,也要测试下使用duplicate从备库能够在复制一个新库.经过 ...

  6. 【Spring注解驱动】(二)AOP及一些扩展原理

    1 AOP动态代理简介及功能实现 1.1 简介 指在程序运行期间动态地将某段代码切入到指定方法的指定位置进行运行的方式. 1.2 功能实现测试 功能:实现在业务逻辑运行的时候将日志打印 ①导入aop模 ...

  7. Redis的缓存穿透+解决方案

    1.缓存穿透现象介绍 缓存穿透 :缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在,这样缓存永远不会生效,这些请求都会打到数据库. 常见的解决方案有两种: 缓存空对象 优点:实现简单,维护方便 ...

  8. 零样本文本分类应用:基于UTC的医疗意图多分类,打通数据标注-模型训练-模型调优-预测部署全流程。

    零样本文本分类应用:基于UTC的医疗意图多分类,打通数据标注-模型训练-模型调优-预测部署全流程. 1.通用文本分类技术UTC介绍 本项目提供基于通用文本分类 UTC(Universal Text C ...

  9. 读《mysql是怎样运行的》有感

    最近读了一本书<mysql是怎样运行的>,读完后在大体上对mysql的运行有一定的了解.在以前,我对mysql有以下的为什么: InnoDB中的表空间.段.区和页是什么? redo log ...

  10. blog图片资源