現在其實已經有很多線上的llm服務了,當然也存在許多開源部署方案,但是不知道大家有沒有發現一個問題,目前基於ChatGPT開發的應用,都是使用的OpenAI的介面。換句話說,如果沒有OpenAI賬號,就沒有辦法使用這些應用。但是其實這些應用並不是強依賴於OpenAI的介面,其他的線上llm服務也是可以的,如claude、cohere等,自己部署的模型當然也行。
假如有這麼一個東西,可以讓你不再受限於只能使用OpenAI介面,相信工作問題將可以更快解決,早早下班指日可待。受於claude-to-chatgpt啟發,於是我決定做一個這樣的專案,to-chatgpt,讓我們可以更加隨意自由地使用所有ChatGPT應用!!!
使用之前,需要保證當前服務可以存取相關的llm服務,比如說claude、cohere都有區域限制。至於這麼處理這個限制,github上有很多方案,搜尋一下就知道了,提示只能這麼多了。
值得注意的是,目前有兩種介面卡,一種是非同步的,一種是同步的。 決定使用哪個類別的因素是當前存取線上LLM服務的sdk。如果提供了非同步介面,則優先考慮非同步實現。
通過-a
指定介面卡,目前已經實現的介面卡包括了:
非同步介面卡:
同步介面卡:
如果想在 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 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獲取方式:
更多細節:Bard
如果你認為專案不錯,幫忙Github star and star