使用 Docker 部署 GPT
雖然ChatGPT熱度已經(jīng)過,大家接觸過,使用過后,發(fā)現(xiàn)它并沒有當(dāng)初那么神秘。但是并不妨礙它是目前比較好用的AI工具。
隨著ChatGPT 的安全限制越來越嚴(yán),部分網(wǎng)友的賬號可能已經(jīng)被封。又隨著ChatGPT加了Cloudflare的驗(yàn)證,還有使用公共機(jī)場的IP 也受到了限制。即使賬號沒有被封,也無法訪問了。即使能訪問,也沒有那么絲滑。
你可能已經(jīng)遇到了以下的頭疼場景。
機(jī)場IP被封
只能到處找可用VPN,費(fèi)時費(fèi)力,更費(fèi)錢。因?yàn)楣矙C(jī)場的IP都是大家共用的,很容易被ChatGPT識別出來并封號。
系統(tǒng)負(fù)載高
用的正爽,突然不能用,掃興。
人機(jī)驗(yàn)證
需要反復(fù)刷新和驗(yàn)證自己是一個人。
原理
如果不感興趣可直接下拉到【安裝前準(zhǔn)備】【本地安裝】段落。
ChatGPT使用了 Cloudflare 提供的服務(wù),那么我們先來了解下Cloudflare
Cloudflare
Cloudflare 是一家專業(yè)的互聯(lián)網(wǎng)安全和性能公司,提供了一系列強(qiáng)大的服務(wù),包括分布式防御、內(nèi)容傳遞網(wǎng)絡(luò)(CDN)、SSL/TLS 加密、安全防護(hù)等。
Cloudflare 的分布式防御可以幫助抵御惡意攻擊,如DDoS攻擊,以保持服務(wù)的穩(wěn)定性和可用性。它還提供防火墻和惡意攻擊攔截功能,幫助阻止惡意請求和保護(hù)用戶數(shù)據(jù)的安全。
Cloudflare 的 CDN 功能可以加速數(shù)據(jù)傳輸,特別是在不同地理位置的用戶之間,使得響應(yīng)更快,提高用戶體驗(yàn)。
Cloudflare 提供的 SSL/TLS 加密功能可以確保用戶和服務(wù)之間的通信是加密的,防止敏感信息被竊取或篡改。
Cloudflare的防護(hù)機(jī)制包括JavaScript驗(yàn)證、IP封鎖和Cookie驗(yàn)證等。JavaScript驗(yàn)證要求客戶端執(zhí)行JavaScript腳本以驗(yàn)證訪問者的真實(shí)性。IP封鎖根據(jù)IP地址的黑名單和白名單來限制訪問。Cookie驗(yàn)證通過驗(yàn)證瀏覽器中的Cookie來確認(rèn)訪問者的身份。這些防護(hù)措施有效地保護(hù)網(wǎng)站免受惡意爬蟲和非法訪問的攻擊。
自己訪問自己
ChatGPT是利用Cloudflare來進(jìn)行網(wǎng)絡(luò)防護(hù)的,封禁來自各個云服務(wù)提供商的請求,aws,GCP,Vultr這些大的提供商更是早就上了黑名單。
Cloudflare在國內(nèi)也是提供服務(wù)的。那么就簡單了,在Cloudflare建一個代理,然后用代理訪問ChatGPT,就相當(dāng)于“自己”訪問“自己”。
目前大部分方案都是用Cloudflare 的 Workers 來代理 OpenAI 的 API 地址,配合自己的域名即可在境內(nèi)實(shí)現(xiàn)訪問。而且 Cloudflare Workers 有每天免費(fèi) 10 萬次的請求額度,也有可以免費(fèi)注冊的域名,幾乎可以說是零成本。
不過最方便最快速的方法還是使用docker本地部署。
安裝前準(zhǔn)備
安裝docker,首先了解下什么是docker,大神請無視。
什么是docker
通俗地講,Docker 就像是一個魔法鞋盒,里面可以放很多玩具,每個玩具都有不同的形狀和顏色。在計(jì)算機(jī)世界里,我們有很多不同的軟件和應(yīng)用程序,它們也像是各種各樣的玩具。
但是有個問題,有些軟件需要特別的環(huán)境才能運(yùn)行,就像有些玩具需要特別的場地才能玩一樣。如果我們每次都要重新搭建這些特別的環(huán)境,那可真是太麻煩了!
這時候,Docker 就派上用場啦!它就像是一個魔法鞋盒,可以把軟件和它們需要的環(huán)境一起打包進(jìn)去,形成一個“魔法鞋盒”,這個魔法鞋盒我們就稱之為“容器”。
每個容器都是獨(dú)立的,就像每個魔法鞋盒里的玩具一樣,它們不會互相影響。而且這些魔法鞋盒還可以輕松地在不同的電腦上運(yùn)行,就像你可以把玩具帶到朋友家一樣。
這樣一來,我們就不用擔(dān)心軟件在不同電腦上的問題啦!Docker 真是一個非常方便的工具,讓軟件開發(fā)部署變得輕松!
docker安裝
這個網(wǎng)上一大堆教程,可查詢適合自己電腦系統(tǒng)型號的安裝
本地安裝
docker 安裝成功后,使用命令下載docker鏡像:
docker pull pengzhile/pandora
docker pull pengzhile/pandora
運(yùn)行docker鏡像:
docker run -e PANDORA_CLOUD=cloud -e PANDORA_SERVER=0.0.0.0:8899 -p 8899:8899 -d pengzhile/pandora
docker run -e PANDORA_CLOUD=cloud -e PANDORA_SERVER=0.0.0.0:8899 -p 8899:8899 -d pengzhile/pandora
打開docker 主界面:
本地訪問:http://127.0.0.1:8899/
這里我們使用Access Token登錄。Token獲得地址:http://chat.openai.com/api/auth/session
看不清楚的話,可以使用json 視圖工具。
點(diǎn)擊下面的按鈕。
登錄成功:
歷史記錄也同步了,速度喜人。
最后
畢竟是開源工具,如果擔(dān)心自己的賬號安全的話,可以用一些公開的免費(fèi)賬號。