このリポジトリは、自分自身をホストし、OpenAIを使用してスレッドとチャネルを要約する機能のロックを解除できる、すぐに実行できる基本的なSlack AIソリューションです(需要がある場合は、代替およびオープンソースLLMのサポートが追加されます)。公式のSlack AI製品は素晴らしく見えますが、アクセスとアドオンの価格が限られているため、2023年9月に作成したバージョンをオープンソースすることにしました。
稼働した後(プロセス全体の指示を以下に示します)、すべてのSlackユーザーは、パブリックとプライベートの両方に生成できます。
/tldr_since anonymize the summary
。注:これにはまだスレッドが含まれていません。/tldr_extended anonymize the summary
。注:これは非常に長くなる可能性があります! これらの指示に従って、開発とテストの目的で地元のマシンでプロジェクトのコピーを稼働させます。
地元の開発マシンに次の事前に設定またはインストールされていることを確認してください。
poetry install
poetry run python -m spacy download en_core_web_md
.env
ファイルを作成し、APIキーとトークンで入力します。 example.env
ファイルをテンプレートとして使用します。 cp example.env .env && open .env
manifest.json
のコピーを作成し、要求URLをngrokまたはサーバーURLに変更します。
ここで新しいスラックアプリを作成し、 manifest.yaml
ファイルを使用して構成します。
他の変更を加える必要はありませんが、名前、説明、その他のコピーに関連する設定を変更できます。
スラッシュコマンドの名前を調整する場合は、 slack_server.py
変更する必要があります。
構成したら、「インストールアプリ」ページから「ボットユーザーOAuthトークン」を取得し、 .env
ファイルにSLACK_BOT_TOKEN
として追加します。
次に、アプリレベルのトークンの下の基本情報ページで、 SLACK_APP_TOKEN
connections:write
トークン.env
作成します。
アプリケーションを実行するには、Fastapiサーバーを実行します。
poetry run uvicorn ossai.slack_server:app --reload
その後、ngrokを使用してサーバーをインターネットに公開する必要があります。
次のコマンドでngrokを実行します: ngrok http 8000
次に、Slackアプリの設定にngrok URLを追加します。
主なカスタマイズオプションは次のとおりです。
topic_analysis.py
でchatgptプロンプトをカスタマイズしますsummarizer.py
でchatgptプロンプトをカスタマイズしますこのプロジェクトでは、 pytest
とpytest-cov
を使用してテストを実行し、テストカバレッジを測定します。
これらの手順に従って、カバレッジでテストを実行します。
プロジェクトルートディレクトリに移動します。
次のコマンドを実行して、カバレッジでテストを実行します。
pytest --cov=ossai tests/
このコマンドはtests/
ディレクトリですべてのテストを実行し、 ossai
モジュールのカバレッジレポートを生成します。
テストを実行した後、テストでカバーされているコードの割合を示すレポートが端末に表示され、カバーされていない行が強調表示されます。
仮想環境を使用している場合は、これらのコマンドを実行する前にアクティブ化されていることを確認してください。
/tldr_since
コマンドを追加して、特定の日付からチャネルのメッセージを要約する私は貢献を歓迎します!フィードバック、バグ、機能リクエスト、拡張機能、または自分のプルリクエストを送信する方法の詳細については、 CONTRIBUTING.md
をお読みください。
このプロジェクトは、GPL -3.0ライセンスに基づいてライセンスされています。詳細については、 LICENSE.md
ファイルを参照してください。