英語| |
基於Node.js的電報的ChatGpt機器人支持基於瀏覽器和基於瀏覽器的API。
? V2已發布!
- 支持@Vadko的每塊對話。
- 支持設置消息隊列作為@Vadko的可選。
- 添加超時機制,以防止消息隊列卡住。您可以覆蓋配置文件中的默認超時。
- 您現在可以從Docker Hub中取出預製的Docker圖像!
- 支持官方的OpenAI聊天完成API。
- 通過使用自定義獲取功能來支持代理。
我們強烈建議您使用official API。有傳言說,如果您繼續使用unofficial和browser API,OpenAI可能會禁止您的帳戶。
- 支持消息隊列以避免速率限制。
- 改善降級解析。
- 支持自定義提示前綴和後綴(允許您自定義機器人的身份和行為)。
- 支持Node.js V19。
我們添加了 @acheong08對非官方代理API的支持。該API使用代理服務器,該服務器允許用戶繞過CloudFlare保護並使用真實的Chatgpt。請參閱用法以獲取更多詳細信息。
對於以前的用戶,我們已更新了API選項。
api.version現在是api.type,具有選項browser(以前的v3),official(以前的v4)和unofficial。請相應地更新您的配置文件。
根據反向代理服務器的一位維護者的說法,OpenAI修補了此方法。因此,您必須將無瀏覽器官方API與官方型號(花費金錢)或基於瀏覽器的解決方案一起使用。
我們已發布該機器人的v2.0.0,該機器人支持瀏覽器和基於瀏覽器的API。您可以使用配置文件隨時在兩個API之間切換。此外,我們還重構了代碼庫,以使其更可維護和易於擴展。
對於舊用戶,您需要在
config/文件夾下的.env文件中切換。
| 私人聊天 | 小組聊天 |
|---|---|
![]() | ![]() |
api.official.systemMessage )感謝 @Transitive-Bullshit使這張易於理解的桌子!
| 類型 | 自由的? | 強壯的? | 品質? |
|---|---|---|---|
official | 不 | ✅是的 | ✅真正的chatgpt模型 |
unofficial | ✅是的 | ☑️也許 | ✅真正的chatgpt |
browser | ✅是的 | 不 | ✅真正的chatgpt |
official :默認使用gpt-3.5-turbo模型使用官方的OpenAi Chat Conterions API(官方,強大的方法,但不是免費的)unofficial :使用非官方的代理服務器以繞過Cloudflare的方式訪問ChatGpt的後端API(使用真實的Chatgpt且非常輕巧,但依賴於第三方服務器,並且是速率可限制的)browser (不推薦):使用Puppeteer訪問官方Chatgpt WebApp(使用真實的Chatgpt,但非常片狀,重量級和錯誤)警告
有傳言說,如果您繼續使用
unofficial和browserAPI,OpenAI可能會禁止您的帳戶。使用它自己的風險。
要開始,請按照以下步驟:
config/文件夾下創建local.json 。您可以將config/default.json複製為模板。local.json 。 local.json中的設置將覆蓋default.json中的默認設置。api.type設置為official 。然後提供您的OpenAI API密鑰和其他設置。您可以參考此信息以獲取更多詳細信息。請注意,這將花費您的信用。api.type設置為unofficial 。然後提供您的OpenAI訪問令牌(如何獲取訪問令牌?)和其他設置。您可以參考此信息以獲取更多詳細信息。api.type設置為browser 。然後提供OpenAI / Google / Microsoft憑據和其他設置。您可以參考此信息,以獲取更多詳細信息。確保安裝了基於鉻的瀏覽器。然後,您可以使用以下方式啟動機器人:
pnpm install
pnpm build && pnpm start要開始,請按照以下步驟:
創建一個名為config的文件夾,並在其中創建一個local.json文件。您可以按照“選擇#1:節點”部分中的說明進行自定義設置。
運行以下命令啟動機器人:
docker run -d -v ./config:/app/config raineggplant/chatgpt-telegram-bot:latest這將吸引僅支持無瀏覽器API的最新圖像。如果要使用基於瀏覽器的API,則可以在標籤中添加一個-browser後綴,例如, raineggplant/chatgpt-telegram-bot:latest-browser 。
要與電報中的機器人聊天,您可以:
/chat或您在JSON配置文件中指定的命令)請注意,請確保您在將機器人的隱私模式添加到組之前,否則將回复組中的每個消息。
該機器人還具有多個命令。
/help :顯示幫助信息。/reset :重置當前聊天線程並啟動一個新的聊天線程。/reload (需要管理,僅基於瀏覽器的API):刷新ChatGpt會話。請注意,在組中使用命令時,請確保在命令之後包含提及,例如
/help@chatgpt_bot。
您可以使用XVFB在無頭服務器上創建虛擬FrameBuffer並運行此程序:
xvfb-run -a --server-args= " -screen 0 1280x800x24 -nolisten tcp -dpi 96 +extension RANDR " pnpm start我們建議您使用Google Auth避免複雜的登錄recaptchas。如果使用OpenAI帳戶,則可能必須使用Nopecha或2captcha或手動求解Recaptcha(使用X11VNC連接到顯示服務器)。有關驗證碼求解的更多詳細信息,請參閱API存儲庫。
麻省理工學院許可證。
如果您覺得這個項目有用,請留下一顆星星。