ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript と Gemini AI を使用したチャットボットの作成: バックエンドの作成

JavaScript と Gemini AI を使用したチャットボットの作成: バックエンドの作成

Patricia Arquette
リリース: 2025-01-04 09:26:35
オリジナル
854 人が閲覧しました

保存してください! o

JavaScript と Gemini AI を使用したチャットボットの作成を続けて、プロジェクトの「バックエンド」を追加します。前回は、HTML、CSS、JavaScript を使用してフロントエンドを作成し、ユーザー インターフェイスがユーザーとチャットボット間の会話を反映することを保証しました。

次に、サーバーを作成し、Gemini API と通信するために Express.js でルートを構成する必要があります。さあ行こう!

プロジェクトの依存関係のインストール

そうですね、express.js、Google Gemini SDK が必要になります。また、API キーを保護するために、環境変数を操作するために dotenv をインストールします。

npm install @google/generative-ai express dotenv
ログイン後にコピー
ログイン後にコピー

これで、ローカル環境変数を使用してプライベート データを保護するなどのベスト プラクティスを採用したサーバーを作成する準備が整いました。

これを行うには、プロジェクトのルートフォルダーにserver.jsというファイルを作成します。このファイルでは、依存関係をインポートし、必要なリソースを構成することから始めます。

const express = require("express");
require("dotenv").config();
const { GoogleGenerativeAI } = require("@google/generative-ai");

const app = express();
const port = 3000;

const genAI = new GoogleGenerativeAI(process.env.GOOGLE_GEMINI_API_KEY);

app.use(express.static("public"));

app.use(express.json());
ログイン後にコピー
ログイン後にコピー

このコードは、「パブリック」フォルダーから静的ファイルを提供し、JSON ペイロードを含むリクエストを受け入れるように Express を構成します。このため、index.html、styles.css、script.js ファイルをこのフォルダーに配置します。また、ポート 3000 で実行されるようにアプリケーションを構成しました。

@google/generative-ai ライブラリを使用して Gemini API を統合し、GOOGLE_GEMINI_API_KEY という環境変数に保存されているキーで認証します。

しかし、この API キーはどこで入手できるのでしょうか?それがこれから分かることです。

Gemini API キー

キーの入手

Gemini API キーを取得するには、「@gmail.com」アカウントにログインすることをお勧めします。その後、このリンクにアクセスすると、次のような画面が表示されます:

Criando um Chatbot com JavaScript e Gemini AI: criando o backend

「API キーの作成」ボタンをクリックし、このキーを使用するプロジェクトを指定すれば完了です。キーが下に表示され、それを表示したり、コピーして次のステップに進むこともできます。

API キーを保護する

ここで、プロジェクト内で、プロジェクトのルート フォルダーに .env.local または単に .env という名前のファイルを作成します。このファイルに次のように API キーを入力します:

GOOGLE_GEMINI_API_KEY="sua-chave-vai-aqui"
ログイン後にコピー
ログイン後にコピー

ファイルを保存すれば完了です。前の手順を正しく実行した場合、API キーは機能します。

追記: API キーに表示されるプランに注意してください。 Gemini は、キーが返すことができるトークンの量が制限された無料プランを提供します。より多くのトークンが必要な場合は、有料プランへの加入を検討してください。無料プランを使用します。制限はありますが、チャットボットといくつかのメッセージを交換できます。

/chat ルートの作成

依存関係が設定され、API キーが手元にあるので、人工知能で何ができるかという可能性の扉を開いてみましょう。

server.js ファイルに /chat ルートを作成します:

npm install @google/generative-ai express dotenv
ログイン後にコピー
ログイン後にコピー

私たちのルートは POST タイプであり、本文でメッセージ、正確にはチャットを操作するユーザーからのメッセージを受け取ることになります。したがって、このメッセージでは、少し防御的なプログラミングを使用し (注意しても誰も損しません (笑))、メッセージがないことを確認します。そうしないと、エラーが応答として返され、メッセージがスローされます。

メッセージがある場合は、次のように、選択したモデルのプロンプトとしてメッセージを送信します。

const express = require("express");
require("dotenv").config();
const { GoogleGenerativeAI } = require("@google/generative-ai");

const app = express();
const port = 3000;

const genAI = new GoogleGenerativeAI(process.env.GOOGLE_GEMINI_API_KEY);

app.use(express.static("public"));

app.use(express.json());
ログイン後にコピー
ログイン後にコピー

この通信は非同期プロセスであるため、try/catch を使用して応答を処理します。まず、使用する Gemini モデルを定義します (このリンクでモデルのリストを確認できます)。この場合、gemini-1.5-flash を選択しました。

2 番目のステップは、チャットを開始することです。そのため、model.startChat() を使用して、応答に必要なトークンの最大数 (この場合は応答ごとに 100 トークン) を構成して、Gemini との通信を開始できます。

chat.sendMessage(message) でモデルにメッセージを送信した後、この応答を待ちます。応答を取得したら、モデルから返されたテキスト形式を JSON に変換して、要求を行った人に応答を返します。

そして最後に重要なことですが、エラーが発生した場合は、catch 内でこのエラーをスローしてコンソールにステータス 500 を返すことができるため、この「ミニ API」を使用するクライアントの作業が容易になります。美しさ?

ここで必要なのは、以下のコード スニペットで「ミニ API」が実行される場所を指定することだけです。

GOOGLE_GEMINI_API_KEY="sua-chave-vai-aqui"
ログイン後にコピー
ログイン後にコピー

私たちの API は、最初に指定したポートで実行されます。完全なserver.jsコードを以下に示します:

app.post("/chat", async (req, res) => {
  const { message } = req.body;

  if (!message) {
    return res.status(400).json({ error: "Mensagem não pode estar vazia." });
  }

  //...
});
ログイン後にコピー

チャットボットのテスト

いよいよチャットボットをテストする、最も待ち望まれている瞬間がやって来ました。これを行うには、ターミナルを開いて次のコマンドを入力しましょう:

try {
    const model = genAI.getGenerativeModel({
      model: "gemini-1.5-flash",
    });

    const chat = model.startChat({
      history: [],
      generationConfig: { maxOutputTokens: 100 },
    });

    const result = await chat.sendMessage(message);
    res.json({ response: result.response.text() });
  } catch (error) {
    console.error(error);
    res.status(500).json({ error: "Erro ao processar mensagem." });
  }
ログイン後にコピー

このコマンドを実行すると、ターミナルに次のメッセージが表示されます:

app.listen(port, () => {
  console.log(`Servidor rodando em http://localhost:${port}`);
});
ログイン後にコピー

URL http://localhost:3000 にアクセスし、入力欄にメッセージを書き込んで送信ボタンを押すと、AI がメッセージに応答し、画面に表示されます。

Criando um Chatbot com JavaScript e Gemini AI: criando o backend

とてもクールですね?

結論

これで、JavaScript と Google Gemini API を使用したチャットボットの作成が完了しました。フロントエンドを最初から作成し、スタイルを適用し、DOM を操作する方法を確認しました。 Express.js でサーバーを作成し、Gemini API を使用して、アプリケーション クライアントと通信するための POST ルートを構成し、独自に開発した独自のインターフェイスを通じて AI と通信することができました。


しかし、できることはそれだけではありません。このチャットボットは、言語アシスタントから、数学やプログラミングに関する質問に答える仮想教師まで、さまざまなタスクに合わせてカスタマイズおよび構成できます。それはあなたの創造性によって異なります。

AI をパーソナライズされたアシスタントに変えるには、コード自体よりもモデルの応答方法や動作方法を中心にモデルをトレーニングする必要があります。

これについては今後の記事でいくつか説明します。

それではまた!

以上がJavaScript と Gemini AI を使用したチャットボットの作成: バックエンドの作成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート