APIドキュメント|リリース|ツイッター

Telegram用のボックス外のchatgptボット。
Telegptは、テロキシドフレームワークとASYNC_OPENAIに基づいた電報ボットです。独自のAPIキーを使用して、最新のChatGPTモデルと対話する簡単な方法を提供します。
?純粋な錆のコードベースで稲妻。
?あらゆる種類のチャット(プライベートおよびグループ)がサポートしています。
メッセージバブルへのライブストリーミングトークン。
telegram-flavoured Markdownレンダリングサポート。
?トークンの使用統計記録とコマンドを介してクエリできる。
ファイルベースの構成で完全にカスタマイズ可能。
管理者機能(ベータ)とユーザーアクセス制御サポート。
専用サーバーを展開するときに、事前に構築されたDocker画像を使用することをお勧めします。これは、GitHub ActionによってGitHub Containerレジストリを介して公開されます。現在、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(IntelとApple Silicon)のホストがサポートされています。
リポジトリをクローンして実行します。
$ 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コマンドを送信します。もう一度公開したい場合は、send /set_public on 。
ボットがプライベートモードの場合、管理者ユーザーと招待されたメンバーのみがチャットできます。 /add_memberおよび/del_memberコマンドを介してメンバーを追加または削除できます。引数はユーザー名です。例: /add_member cyandev 。
現在、管理者ユーザーのみが管理者コマンドを使用でき、他のメンバーユーザーはそれらを使用することは許可されていません。
ボットは、SQLiteデータベースを使用して、実行時に作成されたデータを保存します。デフォルトでは、ローカルファイルパスを提供しない場合、データはメモリデータベースに保存されます。ボットを再起動すると、以前のデータ(追加のメンバーなど)はすべて失われます。ユーザビリティのためにファイルベースのデータベースを使用することをお勧めします。
TeleGptは最近積極的に維持されます。開発中のいくつかの計画機能があります。
問題とPRを歓迎します。新しい問題やPRを提出する前に、最初に既存の問題を確認することをお勧めします。あなたが何かに取り組み始める前に、ディスカッションと機能のリクエストは素晴らしいことです。
mit