このリポジトリには、長期的なメモリ、高度なロジック、埋め込み、およびデータベースを活用して、本当にユニークなユーザーエクスペリエンスを提供するOpenai APIで作成された高度なチャットボットが含まれています。事前定義されたルールやスクリプトに基づいてユーザー入力に単純に応答する従来のチャットボットとは異なり、このチャットボットは、以前の会話で言ったことを思い出し、その知識に基づいてよりパーソナライズされた関連する応答を提供することができます。
チャットボットの高度なロジック機能は、より複雑な会話を処理し、より微妙な応答を提供できることを意味し、実際の人とチャットしているように感じます。さらに、チャットボットは埋め込みとデータベースを使用して長期的なメモリを実現し、以前の会話から情報を保持し、その情報を使用して将来の相互作用を通知できるようにします。
安全なユーザーエクスペリエンスを確保するために、チャットボットには、Googleログインを介して顧客(KYC)認証も含まれています。この機能は、ユーザーのアイデンティティを検証し、詐欺や虐待を防ぐのに役立ちます。
このチャットボットの重要な機能の1つは、柔軟なプロンプトです。たとえば、デフォルトのプロンプトは、チャットボットをイタリアの教師のように振る舞わせるように設計されていますが、プロンプトを簡単に変更して、念頭に置いている他のユースケースに合わせて適合させることができます。これにより、チャットボットは非常に用途が広く、幅広いユースケースに適応できます。
高度な自然言語処理にOpenai APIの最新モデル(GPT-3.5-ターボ)を使用します
埋め込みとデータベースを通じて達成される長期メモリ
柔軟なプロンプトにより、あらゆるユースケースに簡単にカスタマイズすることができます
高度なロジック機能により、より複雑な会話と微妙な応答が可能になります
Googleログインを介したKYC認証により、安全なユーザーエクスペリエンスが保証されます
さまざまなアプリケーションやプラットフォームに簡単に統合できます
簡単なスクリプトやルールを超えて、よりパーソナライズされた魅力的なユーザーエクスペリエンスを提供しながら、ユーザー情報のセキュリティを維持しながら、よりパーソナライズされた魅力的なユーザーエクスペリエンスを提供できる場合は、このAIを搭載したチャットボット、長期的なメモリ、高度なロジック、KYC認証は完璧なソリューションです。

チャットボットを使用するには、まずこのリポジトリをローカルマシンにクローンする必要があります。これを行うことができます。端末で次のコマンドを実行できます。
git clone https://github.com/FaustoNisida/AI-Chatbot-Long-Term-Memory thefolderofyourchoise
cd thefolderofyourchoise
次に、クライアントおよびサーバーアプリケーションのすべての依存関係をインストールする必要があります。これを行うには、最初に端末のクライアントディレクトリに移動します。
cd client
次に、次のコマンドを実行して、クライアントの依存関係をインストールします。
npm install --force
インストールプロセス中にエラーが発生した場合、-forceフラグが必要になる場合があることに注意してください。
次に、端末のサーバーディレクトリに移動します。
cd ../server
次に、次のコマンドを実行してサーバーの依存関係をインストールします。
npm install
依存関係をインストールした後、次の環境変数を含むクライアントディレクトリとサーバーディレクトリの両方で.ENVファイルを作成する必要があります。
OPENAI_API_KEY=<youropenaiapikey>
ここでOpenAIキーを作成します
API_KEY=<yourcustomapikeyforaccessingtheserver>
選択したパスワードやキーをAPI_KEYフィールドに配置できます。
VITE_Api_Key=<yourcustomapikeyforaccessingtheserver>
VITE_Google_Client_id=<yourgoogleclientid>
プロジェクトを作成してから、ここにGoogleクライアントIDを作成します
GoogleクライアントIDが適切に構成されていることを確認するには、作成プロセス中に次の起源を含めることが不可欠です。
承認されたJavaScriptの起源:
承認されたリダイレクトURI:


VITE_Api_Keyフィールドでは、クライアントのAPI_KEY Enviromental変数に配置したのと同じパスワードまたはキーを配置する必要があります。ENVファイル
これで、アプリケーションを使用する準備ができました
端子ウィンドウを開きます。
コマンドcd serverを実行して、サーバーディレクトリに移動します。
コマンドnpm run serverを実行してサーバーを起動します。
サーバーは現在、http:// localhost:3000で実行されています
デフォルトでは、チャットボットはイタリアの教師のように振る舞うように設定されています。ただし、プロンプトを簡単に変更して、念頭に置いている他のユースケースに適合することができます。サーバーディレクトリのindex.jsファイルの97行でプロンプトを編集して、目的のプロンプトを含めるだけです。
現在クライアントを実行している端末を閉じることなく、2番目の端末ウィンドウを開きます。
コマンドcd clientを実行して、クライアントディレクトリに移動します。
コマンドnpm run devを実行して、クライアントを開始します。
クライアントとサーバーが実行されているため、Webブラウザのhttp:// localhost:5173にアクセスしてアプリケーションにアクセスできます。
使用法をお楽しみください!
WeaviateやPineconeなど、ベクター検索をサポートするデータベース内のものに関連する埋め込みと出力を保存することをお勧めします。ローカルJSONファイルは(時間のためにこのプロジェクトに使用したように)、小規模プロジェクトやプロトタイピングのデータベースとして使用できますが、埋め込みや関連データを扱う際には、特殊なデータベースを使用するのがベストプラクティスです。
ベクター検索データベースに埋め込みデータと関連データを保存することにより、より複雑で遅いデータベースクエリに依存することなく、必要に応じて関連情報を簡単に検索および取得できます。これにより、チャットボットの全体的な速度と効率が大幅に向上し、ユーザーエクスペリエンスが向上します。
これらのデータベースは大きな利点を提供できますが、従来のデータベースと比較して追加のセットアップとメンテナンスが必要になる場合があることに注意してください。ベクトル検索データベースを使用することを決定する前に、特定のニーズとリソースを検討してください。
このプロジェクトに貢献したい場合は、提案された変更でプルリクエストをお気軽に送信してください。ドキュメントのバグ修正、新機能、改善など、すべての貢献を歓迎します。
このプロジェクトについて質問やフィードバックがある場合は、お気軽にご連絡ください。
私たちはあなたから聞いてみたいです、そしてあなたが遭遇するかもしれないあらゆる問題を喜んで助けてくれます。