API文檔|發行|嘰嘰喳喳

一個封閉式的CHATGPT機器人,用於電報。
Telegpt是基於Teloxide框架和Async_openai的電報機器人。它提供了一種使用您自己的API密鑰的最新ChatGpt模型進行交互的簡便方法。
?用純銹代碼庫快速閃電。
?所有類型的聊天(私人和組)支持。
實時流式傳輸令牌您的消息氣泡。
⌨️電報 - 流動的Markdown渲染支持。
?令牌使用統計記錄和可查詢的命令。
完全可以使用基於文件的配置進行自定義。
管理員功能(Beta)和用戶訪問控制支持。
我們建議您在部署專用服務器時使用預製的Docker映像,它通過GitHub Action通過GitHub容器註冊表發布。當前,支持具有AMD64體系結構的機器。
docker login -u your_github_username -p your_personal_access_token https://ghcr.ioconfig.json文件: cp config.json.example config.json請按照以下說明填寫config.json中的令牌。
docker-compose up -d # start the container您可能會發現有用的其他命令:
docker-compose logs -f # check the logs, press ctrl+c to stop viewing
docker-compose down # stop the container
docker-compose pull # pull the latest image要在內部部署或測試,您可以直接從“版本”頁面下載預構建的二進製文件。目前,支持Linux和MacOS(英特爾和蘋果矽)主機。
克隆存儲庫並運行:
$ cargo build --release在運行機器人之前,您需要創建一個配置文件。該程序默認情況下從當前工作目錄中讀取telegpt.config.json ,您還可以通過-c選項指定配置文件路徑。
該文檔中描述了配置,這是一個示例:
{
"openaiAPIKey" : " sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx " ,
"botToken" : " 8888888888:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX " ,
"adminUsernames" : [ " cyandev " ],
"conversationLimit" : 30 ,
"databasePath" : " ./path/to/telegpt.sqlite " ,
"i18n" : {
"resetPrompt" : " I’m ready for a new challenge. What can I do for you now? "
}
}要啟動機器人,只需運行:
$ /path/to/telegpt當您看到消息Bot is started ,您就可以開始了!
注意:用戶的輸入將以
DEBUG級別記錄。要保護用戶隱私,請不要在生產環境中啟用它。
對於調試目的,您可以通過設置RUST_LOG環境變量來啟用詳細日誌。例如:
$ RUST_LOG=TRACE /path/to/telegpt此功能取決於數據庫以存儲配置。為了確保您的數據在重新啟動後不會丟失,您需要在配置文件中設置數據庫路徑。
該機器人具有一些內置的基本管理功能。您可以控制允許誰使用機器人,並通過一組命令動態更改成員列表。
默認情況下,該機器人可用於公共使用。這意味著每個添加它的人都可以與之聊天,這可能會使您的令牌付出很大的代價。如果您只想在一小部分人中部署和使用該機器人,請發送/set_public off命令以使bot私有。當您想再次公開它時,請發送/set_public on 。
當機器人處於私有模式時,只有管理員用戶和受邀成員才能與之聊天。您可以通過/add_member和/del_member命令添加或刪除成員。論點是用戶名。例如: /add_member cyandev 。
當前,只有管理員用戶可以使用管理員命令,其他成員用戶不允許使用它們。
該機器人將使用SQLITE數據庫存儲運行時產生的一些數據。默認情況下,如果您不提供本地文件路徑,則數據將存儲在內存數據庫中。重新啟動機器人時,所有以前的數據(例如添加成員)將丟失。我們建議您使用基於文件的數據庫來實現可用性。
電視將在最近積極維護,其中有一些計劃中的功能正在開發中。
問題和公關受到歡迎。在提交新問題或PR之前,最好先檢查現有問題。討論和功能請求在開始工作之前很高興。
麻省理工學院