このチュートリアルでは、Reactを使用して、OpenAI APIと通信するための基本的なユーザーインターフェース(UI)を作成する方法を学びます。ブラウザのURLでチャットする代わりに、ユーザーがテキストを入力して該当するAIから回答を受け取るシンプルなアプリケーションを作成します。入力の処理とOpenAI APIとの通信のためのフロントエンドコードとロジックの両方を扱います。

重要なポイント

  • Reactで入力フィールドとボタンを作成してユーザーのリクエストを送信する方法を理解します。
  • また、OpenAI APIに非同期Fetchリクエストを送信して応答をReactステータスに保存および表示する方法を学びます。

ステップバイステップガイド

新しいReactアプリケーションを作成するか、既存のアプリケーションに移動します。index.jsxファイルで相互作用のために基本的なコンポーネントを設定します。

Reactで基本的なUIをOpenAI APIと組み合わせる

最初に、ユーザーがメッセージを入力できる入力欄を追加します。これにより、ユーザーはAIと対話できます。したがって、リクエストを送信するための入力欄とボタンを追加します。

Reactを使用した基本的なUIとOpenAI API

ユーザーが入力フィールドにテキストを入力し、送信ボタンをクリックすると、この入力を処理できるようにする必要があります。APIからの応答を管理するために、useStateフックを使用できます。

Reactで基本的なUIをOpenAI APIと組み合わせる

次は、ボタンのクリックイベントを処理する必要があります。ボタンが押されると、サーバーにFetchリクエストを送信する非同期関数を作成したいです。この関数は非同期キーワードで宣言され、サーバーの応答を待機するためにawaitを使用できます。

Reactを使用した基本的なUIとOpenAI API

次のステップはこちらです。APIと通信するためにFetch関数を呼び出したいです。URLはAPI/Chat?MSG={userInput}の形式で指定され、{userInput}はユーザー入力に置換されます。最初は固定された文字列を使用して、APIリクエストが正常に機能していることを確認することができます。

OpenAI APIを使用したReactの基本的なUI

リクエストを送信した後、処理する必要がある応答を受け取ります。応答を簡単に処理するために、先にresponse.json()を呼び出すことができます。

すべてが予想どおりに機能しているかどうかを確認するために、コンソールで出力を確認してください。応答を確認した後、次にやりたいことは、先に宣言したステータスに応答を保存することです。

Reactで基本的なUIをOpenAI APIと組み合わせる

ユーザーエクスペリエンスをさらに向上させるために、ユーザーの入力が常に固定値(たとえば "hello")ではなく、実際に入力されたメッセージで送信されることを確認したいです。ユーザーがボタンをクリックしたときに入力フィールドの現在の値にアクセスするために、useRefフックを使用してください。

ReactとOpenAI APIを使用した基本的なUI

ユーザーの入力を正しく捕捉できるようになったので、アプリケーションをテストして、入力がAPIに送信され、正しく表示されるかどうかを確認します。

すべてが機能している場合、AIからの応答が適切なDIVに表示されることが確認できます。それでは、ユーザーインターフェースをさらにデザインしたり、コードを最適化したりできます。

現時点では、チャット履歴が保存されていないため、シンプルな質疑応答アプリケーションになっています。完全なチャットアプリケーションを作成するには、チャット履歴自体を保存しAPIに送信して、応答にコンテキストを提供する必要があります。

Reactを使用した基本的なUIとOpenAI API

それでも、OpenAI APIを使用して独自のアプリケーションを開発するスキルを既に持っているという事実は印象的です。今後のステップでは、実際のチャット履歴を可能にするための機能拡張を行うことができます。

要約

このチュートリアルでは、ReactでOpenAI APIとの通信を可能にする基本的なユーザーインターフェースを作成する手順を学びました。ユーザー入力の取り扱いから回答の表示まで、機能的なアプリケーションを作成するために必要なすべてが取り上げられました。