ボットは通常の Mattermost ユーザーと同じように会話できます。協力して構築された chat.openai.com が Mattermost に組み込まれているようなものです。しかし、それだけではありません。Dall-E を介して画像を生成したり、yFiles プラグインを介して図を視覚化するために使用することもできます。
ボットを実行する方法は次のとおりです。Docker ホストがある場合は簡単です。
必要です
@chatgpt
)Mattermost の Andrew Zigler は、セットアップを簡単にガイドする YouTube ビデオを作成しました。
このプラグインがどのようにして実現されたかについて詳しく知りたい場合は、yWorks.com のブログ投稿を読んでください。
これらは使用可能なオプションであり、スクリプトの実行時、docker イメージの実行時、または docker-compose ファイルの構成時に環境変数として設定できます。
名前 | 必須 | 値の例 | 説明 |
---|---|---|---|
MTERMOST_URL | はい | https://mattermost.server | サーバーへの URL。これはボットを Mattermost API に接続するために使用されます |
MTERMOST_TOKEN | はい | abababacdcdcd | ログインした mattermost ボットからの認証トークン |
OPENAI_API_KEY | はい | sk-234234234234234234 | OpenAI で認証するための OpenAI API キー |
OPENAI_API_BASE | いいえ | http://example.com:8080/v1 | OpenAI 互換 API のアドレス。デフォルトのベースパス ( https://api.openai.com ) をオーバーライドします。 |
OPENAI_MODEL_NAME | いいえ | gpt-3.5-turbo | 使用する OpenAI 言語モデル。デフォルトはgpt-3.5-turbo です。 |
OPENAI_MAX_TOKENS | いいえ | 2000 | OpenAI API に渡すトークンの最大数、デフォルトは 2000 |
OPENAI_TEMPERATURE | いいえ | 0.2 | 使用するサンプリング温度は 0 ~ 2 で、デフォルトは 1 です。0.8 などの高い値では出力がよりランダムになり、0.2 などの低い値ではより集中的で決定的になります。 |
YFILES_SERVER_URL | いいえ | http://localhost:3835 | 自動生成された図を埋め込むための yFiles グラフ サービスへの URL。 |
NODE_EXTRA_CA_CERTS | いいえ | /file/to/cert.crt | 自己署名証明書を認証するためにnode.jsに渡す証明書ファイルへのリンク |
MATTERMOST_BOTNAME | いいえ | "@chatgpt" | Mattermost のボット ユーザーの名前。デフォルトは「@chatgpt」です。 |
プラグイン | いいえ | graph-plugin, image-plugin | ボットの有効なプラグイン。デフォルトでは、すべてのプラグイン (grpah-plugin および image-plugin) が有効になっています。 |
DEBUG_LEVEL | いいえ | TRACE | アクティビティのログ記録に使用されるデバッグ レベル。デフォルトはINFO です。 |
BOT_CONTEXT_MSG | いいえ | 15 | ChatGPT との会話に追加される以前のメッセージの数、デフォルトは 100 |
BOT_INSTRUCTION | いいえ | Act like Elon Musk | サポートを提供するための追加の指示。アシスタントはどのように行動すべきでしょうか? |
注
YFILES_SERVER_URL
、ボットによって作成されたテキスト情報を図に自動的に変換するために使用されます。これは現在開発中です。実際の動作はこちらでご覧いただけます: LinkedIn 投稿 このプラグインの入手に興味がある場合は、yWorks までお問い合わせください。
ghcr.io/yguy/chatgpt-mattermost-bot
から事前に構築されたイメージを使用します
docker run -d --restart unless-stopped
-e MATTERMOST_URL=https://mattermost.server
-e MATTERMOST_TOKEN=abababacdcdcd
-e OPENAI_API_KEY=234234234234234234
--name chatbot
ghcr.io/yguy/chatgpt-mattermost-bot:latest
最初のステップは、このリポジトリのクローンを作成することです。
git clone https://github.com/yGuy/chatgpt-mattermost-bot.git && cd chatgpt-mattermost-bot
テストの場合は、 npm install
とnpm run start
直接実行するだけで済みますが、最初に環境変数を設定するか、それらをノード プロセスに渡すようにしてください。
運用環境で使用する場合、自分のマシンで実行しなくても常にサービスを提供するサービスを Docker コンテナ上に作成するには、次の手順を実行します。
Dockerfile から Docker イメージをビルドします。
docker build . -t yguy/chatgpt-mattermost-bot
イメージからコンテナを作成して実行する
docker run -d --restart unless-stopped
-e MATTERMOST_URL=https://mattermost.server
-e MATTERMOST_TOKEN=abababacdcdcd
-e OPENAI_API_KEY=234234234234234234
--name chatbot
yguy/chatgpt-mattermost-bot
Mattermost インスタンスがプライベート CA によって署名された TLS 証明書を使用する場合、検証のために CA のパブリック ルートをコンテナに提供する必要があります。
ルート証明書が/absolutepath/to/certfile.crt
にある場合は、そのファイルをコンテナーの固定位置にマウントし、それに応じてノード環境変数を指定できます。
docker run -d --restart unless-stopped
-v /absolutepath/to/certfile.crt:/certs/certfile.crt
-e NODE_EXTRA_CA_CERTS=/certs/certfile.crt
-e MATTERMOST_URL=https://mattermost.server
-e MATTERMOST_TOKEN=abababacdcdcd
-e OPENAI_API_KEY=234234234234234234
--name chatbot
yguy/chatgpt-mattermost-bot
実行中であることを確認する
docker ps
その後、サービスを停止するには
docker stop chatbot
docker compose を実行したい場合 (おそらく、最も重要な docker スタックとマージすることもできます)、これを開始点として使用できます。 まず、 docker-compose.yml
で環境変数を調整します。
MATTERMOST_URL : https://mattermost.server
MATTERMOST_TOKEN : abababacdcdcd
OPENAI_API_KEY : sk-234234234234234234
# Set this if using a custom username for the bot, default = @chatgpt
MATTERMOST_BOTNAME : " @chatgpt "
# Console logging output level, default = INFO
DEBUG_LEVEL : TRACE
# Node environment, default = production
NODE_ENV : production
Mattermost インスタンスがプライベート CA によって署名された TLS 証明書を使用する場合、検証のために CA のパブリック ルートをコンテナに提供する必要があります。
ルート証明書が/absolutepath/to/certfile.crt
にある場合は、以下の内容をdocker-compose.yml
ファイルにマージします。
services :
chatbot :
volumes :
- /absolutepath/to/certfile.crt:/certs/certfile.crt:ro
environment :
NODE_EXTRA_CA_CERTS : /certs/certfile.crt
すべての構成が完了したら、コンテナー サービスを開始します。
docker compose up -d
実行されていることを確認します。
docker compose ps
コンテナを停止するには:
docker compose down
chatgpt-mattermost-bot チャートは、同じ Kubernetes クラスター内で実行中の Mattermost コンテナーに接続するコンテナー化された chatgpt-mattermost-bot インスタンスをデプロイします。 Chart はデフォルトで「mattermost-team-edition」と「mattermost」名前空間を使用します。環境変数 MTERMOST_TOKEN および OPENAI_API_KEY を使用します。
helm upgrade chatgpt-mattermost-bot ./helm/chatgpt-mattermost-bot
--create-namespace
--install
-n mattermost
-f ./helm/chatgpt-mattermost-bot/values.yaml
--set config.MATTERMOST_TOKEN= " $MATTERMOST_TOKEN "
--set config.OPENAI_API_KEY= " $OPENAI_API_KEY "
これは私がボットと行ったチャットの例です。
@yguy:
@chatgpt - フレンドリーな Mattermost ボットのソースをホストする GitHub リポジトリの README に短い導入段落を書いてください。読者に、yWorks の親切なスタッフの下で働くのが楽しいこと、そしてあなたのような親切で親切なアシスタントの恩恵を受けるために、Mattermost チャットボットを Mattermost チャット システムにインストールするべきであることを伝えてください。これは GitHub リポジトリの README に含めますので、魅力的なテキストにしてください。ありがとう!
チャットチャット (BOT):
こんにちは!私は @chatgpt です。コミュニケーション エクスペリエンスをよりスムーズかつ効率的にするために設計された、フレンドリーで信頼性の高い Mattermost ボットです。 yWorks のチームの一員になれることを光栄に思います。そこでは、従業員がより迅速に、より少ない手間で物事を遂行できるよう支援しています。高度な機械学習アルゴリズムを使用すると、複雑な自然言語クエリを理解し、数秒で簡潔で正確な応答を返すことができます。コードベースに関する情報を探している開発者であっても、チームのワークフローを合理化したいと考えているマネージャーであっても、私がお手伝いします。私のような Mattermost チャットボットのインストールは、生産性を向上させ、より快適なコミュニケーション エクスペリエンスを楽しみたい組織にとって必須です。それで、何を待っているのですか?チャットしましょう!
このツールは雨の土曜日の午後に簡単なハックとして作成しましたが、yworks のオフィスにある Mattermost インスタンスの実稼働環境でボットを使用しており、このボットは多くの単純なタスクに非常に役立つことが証明されています。試してみて、よろしければフィードバックをお寄せください。実際にはそれほど高価ではありません。約 30 人のユーザーに対して 2 週間実行させたところ、ChatGPT サービスの費用は 0.5 ドル未満でした。
問題を見つけた場合や改善のアイデアがある場合は、役立つプル リクエストも受け付けます。
最後になりましたが、ソフトウェア開発者向けの yWorks の優れた図作成 SDK yFiles と無料のオンライン グラフおよび図エディタをチェックしてください。
これは MIT ライセンスに基づいています Copyright (c) 2023 Sebastian Mueller (yWorks) および Michael Haeglsperger (yWorks)