ChatGPT と DALL-E 用の OpenAI ライブラリを統合したシンプルな Discord ボットで、Discord の会話でテキストと画像を生成できます。
ドキュメントを確認する »
デモを見る · バグを報告する · 機能をリクエストする
以前は「Aurora AI」として知られていた Aurora AI は、OpenAI による GPT-3.5-Turbo 言語モデルを利用する Discord チャットボットです。 discord.js で構築されており、ユーザー入力に対する応答を会話形式で生成します。シンプルさを重視して設計されており、Discord 内で GPT-3.5-Turbo の機能を探索するのに最適なツールです。さらに、同じく OpenAI によって開発された画像生成モデルである DALL-E の使用もサポートしており、自然言語機能に加えてクリエイティブな画像を生成できます。
(トップに戻る)
(トップに戻る)
必要な API キーを取得する
リポジトリのクローンを作成する
git clone https://github.com/KrozT/openai-discord.git
パッケージをインストールする
pnpm install
API キーを環境変数に追加します。
DISCORD_API_KEY = <YOUR DISCORD API KEY>
OPENAI_API_KEY = <YOUR OPENAI API KEY>
プロジェクトのビルド
pnpm run build
バイナリを開始する
pnpm run start
(トップに戻る)
プロジェクトを初期化したら、ボットをサーバーに追加して楽しんでください。
指示 | オプション | タイプ | 説明 |
---|---|---|---|
/ping | ephimeral | embed-info | ボットに ping を実行してオンラインかどうかを確認します |
/about | ephimeral | embed-info | ボットに関する情報を取得する |
/help | ephimeral | embed-info | すべてのコマンドのリストを取得する |
/chat | question ephimeral | embed-request embed-response | ボットとチャットする |
/clear | amount | embed-info | ボットとのチャット履歴をクリアする |
/image | prompt quantity size ephimeral | embed-request embed-response | 提供されたプロンプトでイメージを生成します |
オプション | 指示 | 必須 | デフォルト | 選択肢 | 説明 |
---|---|---|---|---|---|
question | /chat | true | なし | なし | ボットに尋ねる質問 |
prompt | /image | true | なし | なし | 画像を生成するテキスト |
quantity | /image | false | 1 | 1 から10 まで | 生成する画像の量 |
size | /image | false | 256x256 | 256x256 512x512 1024x1024 | 生成する画像のサイズ |
amount | /clear | false | 100 | 1 から100 まで | クリアするメッセージの量 |
ephimeral | /ping /about /help /chat /image | false | false | true false | 他のユーザーからの応答を非表示にする |
(トップに戻る)
ボットは、各メッセージのフッターにあるさまざまな視覚的な埋め込みコードを使用します。次の表では、埋め込みとその色について説明します。
フッター | 色 | 説明 |
---|---|---|
embed-info | アクア | ボットによるシステムメッセージ |
embed-error | 赤 | ボットによるエラーメッセージ |
embed-response | 緑 | AI が生成したコンテンツによるボットによる応答 |
embed-request | 金 | ユーザーからのリクエスト |
(トップに戻る)
次の手順に従って、新しいコマンドをプロジェクトに追加できます。
src/bot/commands
フォルダーに新しいファイルを作成します (例: testCommand.ts
)。Command
を拡張し、すべてのメソッドを実装するクラスを作成します。コマンド例:
import { Command } from '@/bot/models/command' ;
import { Client , CommandInteraction } from 'discord.js' ;
export class TestCommand extends Command {
public configure ( ) : void {
this . setName ( 'test' ) ;
this . setDescription ( 'Test command' ) ;
this . addEphemeralOption ( ) ; // Add the ephemeral option to the command
}
protected async execute ( client : Client , interaction : CommandInteraction ) : Promise < void > {
await interaction . reply ( { content : 'Test command executed' , ephemeral : this . ephermeral } ) ;
}
}
(トップに戻る)
提案された機能 (および既知の問題) の完全なリストについては、未解決の問題を参照してください。
(トップに戻る)
オープンソース コミュニティを学び、インスピレーションを与え、創造するための素晴らしい場所にするのは、貢献のおかげです。皆様の貢献は大変感謝しております。
これを改善するための提案がある場合は、リポジトリをフォークしてプル リクエストを作成してください。 「拡張」タグを付けて問題を開くこともできます。プロジェクトにスターを付けることを忘れないでください。再度、感謝します!
git checkout -b feature/AmazingFeature
)git commit -m 'Add some AmazingFeature'
)git push origin feature/AmazingFeature
)(トップに戻る)
MIT ライセンスに基づいて配布されます。詳細については、 LICENSE
を参照してください。
(トップに戻る)
(トップに戻る)