Talk-to-SlackサンプルWebアプリ
ユーザーの知識をRememberizerへのクエリを通じてLLMと統合するシンプルなウェブアプリケーションを作成するのは非常に簡単です。
アプリのソースコードはこちらにあります。
このセクションでは、ステップバイステップの指示と完全なソースコードを提供し、あなたが自分のアプリケーションを迅速に作成できるようにします。
私たちはOpenAIでTalk-to-Slack GPTを作成しました。Talk-to-Slackウェブアプリは非常に似ています。


総論
このガイドでは、ステップバイステップの手順と全ソースコードを提供し、あなたが私たちのTalk-to-Slack GPT連携と同様のアプリケーションを独自に作成するのを支援します。Rememberizer.aiとの連携とは異なり、ウェブアプリはウェブスクレイピング、ローカルデータベースへのアクセス、グラフィックとアニメーション、支払いの収集など、より多くの機能と制御を提供します。プラス、プレミアムgenAIアカウントがなくても誰でも使用できます。
概要
私たちの示例アプリケーションである「Talk to Slack」はHeroku上にホストされ、OpenAIのLLMとRememberizer.aiを統合してあなたのSlack体験を向上させます。このウェブアプリはFlaskを用いて構築されており、OAuth2の統合、Slackデータのアクセス、直感的なユーザーインターフェースなどの機能を提供しています。
機能
- Flaskベースのアーキテクチャ: バックエンドの操作、フロントエンドの通信、APIとの接続はFlaskによって処理されます。 
- OAuth2統合: RememberizerのOAuth2フローによる安全な認証とデータアクセス。 
- Slackデータアクセス: RememberizerのAPIを使用して、ユーザーが接続したSlackのデータを安全に取得します。 
- OpenAI LLM統合: OpenAIのLLMサービスを用いてクエリを処理し、洞察に満ちたレスポンスを得られます。 
- 直感的なユーザーインターフェイス: モダンなUIデザインによる簡単なナビゲーションと対話。 
- ベストプラクティス: シームレスな統合のためのセキュリティとユーザーエクスペリエンスの標準に準拠しています。 
セットアップとデプロイメント
前提条件
- Python 
- Flask 
環境設定
以下の環境変数を設定します:
- APP_SECRET_KEY:Flask用のユニークな秘密鍵。
- REMEMBERIZER_CLIENT_ID:あなたのRememberizerアプリのクライアントID。
- REMEMBERIZER_CLIENT_SECRET:あなたのRememberizerアプリのクライアントシークレット。
- OPENAI_API_KEY:あなたのOpenAI APIキー。
アプリケーションの実行
- Flaskアプリを起動: ターミナルで - flask runを実行し、アプリに- http://localhost:5000でアクセスします。
- コールバックURLをRememberizerアプリの設定にコピー: - https://<YOURHOST>/auth/rememberizer/callback例:- http://localhost:5000/auth/rememberizer/callback。
クラウドへのデプロイ
Heroku、Google Cloud Platform (GCP)、Amazon Web Services (AWS)、またはMicrosoft Azureなどのプラットフォームへのデプロイを推奨します。
Herokuデプロイ
- Herokuアカウントを作成: Heroku CLIをインストールします。 
- アプリケーションを準備: - Procfile、- runtime.txt、および- requirements.txtが存在することを確認します。
- デプロイ: Heroku CLIまたはGitHub統合を使用してデプロイします。 
詳細な手順
- HerokuをGitHubに接続: シームレスな更新のためにGitHubリポジトリからの自動デプロイを有効にします。 
- 手動でデプロイ: より多くの制御が必要な場合は、手動デプロイを使用します。 
追加設定
- Heroku CLIをインストール: - brew tap heroku/brew && brew install heroku(macOS)。
- SSL証明書を追加: 初期HTTPS設定のために自己署名証明書を使用します。 
- Herokuの環境変数を設定: 重要なキーのために - heroku config:set KEY=valueを使用します。
他のクラウドプラットフォーム
- GCP: GCPアカウントを設定し、 - app.yamlでアプリを準備し、- gcloud app deployを使用してデプロイします。
- AWS: AWSアカウントとAWS CLIを設定した後、Elastic Beanstalkを使用してデプロイします。 
- Azure: Azureアカウントを作成し、Azure CLIをインストールした後、Azure App Serviceを通じてデプロイします。 
セキュリティとベストプラクティス
デプロイ前に、requirements.txtを確認し、プロダクション用に設定を調整し、OAuthリダイレクトURIを更新してください。
アプリケーションコードノート
@app.route('/') (インデックスルート):
このルートは、ルートURL(/)にアクセスされたときにindex.htmlテンプレートをレンダリングします。アプリケーションのホームページとして機能します。
@app.route('/auth/rememberizer') (Rememberizer認証ルート):
このルートは、Rememberizer.aiとのOAuth2認証プロセスを開始します。ランダムな状態値を生成し、それをセッションに保存し、必要なパラメータ(クライアントID、リダイレクトURI、スコープ、および状態)を使用して認証URLを構築し、ユーザーをRememberizer.aiの認証ページにリダイレクトします。
@app.route('/auth/rememberizer/callback') (Rememberizerコールバックルート):
このルートは、ユーザーがアプリケーションを認証した後のRememberizer.aiからのコールバックを処理します。クエリパラメータから認証コードを抽出し、Rememberizer.aiのトークンエンドポイントを使用してアクセス トークンと交換し、アクセス トークンをセッションに保存します。その後、ユーザーを/dashboardルートにリダイレクトします。
@app.route('/dashboard') (ダッシュボードルート):
このルートは、ユーザーにダッシュボードページを表示します。セッションにアクセス トークンがあるかどうかを確認し、ない場合は認証ルートにリダイレクトします。ユーザーが認証されている場合、Rememberizer.aiのアカウントエンドポイントにリクエストを行い、アカウント情報を取得し、この情報でdashboard.htmlテンプレートをレンダリングします。
@app.route('/slack-info') (Slack統合情報ルート):
このルートは、ユーザーのRememberizer.aiとのSlack統合に関する情報を表示します。アクセス トークンを確認し、Rememberizer.aiの統合エンドポイントにリクエストを行い、統合データを取得します。その後、このデータでslack_info.htmlテンプレートをレンダリングします。
@app.route('/ask', methods=['POST']) (質問ルート):
このルートは、ユーザーからの質問の送信を処理します。アクセス トークンを確認し、フォームデータからユーザーの質問を取得し、Rememberizer.aiのドキュメント検索エンドポイントにリクエストを行い、関連情報を見つけます。その後、OpenAIのGPT-4モデルを使用して、質問と検索結果に基づいて回答を生成します。回答はanswer.htmlテンプレートにレンダリングされます。
追加の注記
- アイコン制作: AIとコミュニケーションの統合を反映した、詳細な折り紙アートスタイルでデザインされました。私たちのアイコンはMidjourneyとImage2Iconで作成されました。 
- SSL設定: OpenSSLを使用して自己署名証明書を生成し、安全な通信を行います。 
探索と革新
自分自身のAI統合ウェブアプリを使って探索と革新を奨励し、プラットフォーム内での生産性とコラボレーションを向上させることを目指します。
この改訂されたドキュメントは、開発者がTalk-to-Slackに似た自分自身のAI統合ウェブアプリを作成するための包括的なガイドを提供します。セットアップ、デプロイメント、およびアプリケーションコードの概要に関する詳細な指示が含まれており、ベスト
Last updated