Node.jsを使用したOpenAI開発環境の構築

  • 873単語
  • 4分
  • 25 Jun, 2024

OpenAIは、自然言語処理やテキスト生成など、さまざまなアプリケーションに利用できる強力なAPIを提供しています。本文では、Node.jsを使用してOpenAI開発環境を構築する方法を紹介し、環境設定、依存関係のインストール、およびサンプルコードの説明を行います。これにより、OpenAI APIを迅速に習得することができます。

環境設定

1. Node.jsのインストール

まず、Node.jsがインストールされていることを確認してください。以下のコマンドでNode.jsがインストールされているかを確認できます:

Terminal window
1
node -v

もしNode.jsがインストールされていない場合は、Node.js公式サイトから最新バージョンをダウンロードしてインストールしてください。

2. プロジェクトの初期化

プロジェクトディレクトリで以下のコマンドを実行して、新しいNode.jsプロジェクトを初期化します:

Terminal window
1
mkdir openai-nodejs-project
2
cd openai-nodejs-project
3
npm init -y

これにより、依存関係や設定を管理するためのpackage.jsonファイルが作成されます。

依存関係のインストール

1. OpenAI SDKのインストール

OpenAIは公式のNode.js SDKを提供しています。以下のコマンドでインストールできます:

Terminal window
1
npm install openai

2. その他の依存関係のインストール

開発を便利にするために、環境変数を管理するdotenvライブラリや、HTTPリクエストを行うためのaxiosライブラリ(必要に応じて)をインストールします:

Terminal window
1
npm install dotenv axios

環境変数の設定

プロジェクトのルートディレクトリに.envファイルを作成し、OpenAI APIキーを追加します:

Terminal window
1
OPENAI_API_KEY=your_openai_api_key_here

次に、プロジェクトで環境変数を読み込みます。index.jsファイルを作成または変更し、以下のコードを追加します:

1
require("dotenv").config();
2
const { Configuration, OpenAIApi } = require("openai");
3
4
const configuration = new Configuration({
5
apiKey: process.env.OPENAI_API_KEY,
6
});
7
const openai = new OpenAIApi(configuration);
8
9
async function generateText(prompt) {
10
const response = await openai.createCompletion({
11
model: "text-davinci-003",
12
prompt: prompt,
13
max_tokens: 150,
14
});
15
return response.data.choices[0].text.trim();
16
}
17
18
(async () => {
19
try {
20
const text = await generateText("機械学習の基本概念を説明してください。");
21
console.log(text);
22
} catch (error) {
23
console.error("テキスト生成エラー:", error);
24
}
25
})();

サンプルコードの説明

1. 環境変数の読み込み

1
require("dotenv").config();

この行のコードは、dotenvライブラリを使用して.envファイル内の環境変数を読み込み、process.env.OPENAI_API_KEYをコード内で使用できるようにします。

2. OpenAI APIの設定

1
const { Configuration, OpenAIApi } = require("openai");
2
3
const configuration = new Configuration({
4
apiKey: process.env.OPENAI_API_KEY,
5
});
6
const openai = new OpenAIApi(configuration);

ここでは、openaiライブラリからConfigurationOpenAIApiクラスをインポートし、APIキーを設定してOpenAIApiインスタンスを作成します。

3. テキスト生成関数

1
async function generateText(prompt) {
2
const response = await openai.createCompletion({
3
model: "text-davinci-003",
4
prompt: prompt,
5
max_tokens: 150,
6
});
7
return response.data.choices[0].text.trim();
8
}

この関数はプロンプトを受け取り、OpenAIのcreateCompletionメソッドを使用してテキストを生成します。max_tokensパラメータは生成されるテキストの最大長を指定します。

4. テキスト生成関数の呼び出し

1
(async () => {
2
try {
3
const text = await generateText("機械学習の基本概念を説明してください。");
4
console.log(text);
5
} catch (error) {
6
console.error("テキスト生成エラー:", error);
7
}
8
})();

ここでは、即時実行関数を使用してgenerateTextを呼び出し、生成されたテキストをコンソールに表示します。エラーが発生した場合は、エラーメッセージをコンソールに表示します。

まとめ

以上の手順を通じて、Node.jsを使用してOpenAI開発環境を構築し、簡単なサンプルコードを使ってテキストを生成することができました。この記事が、OpenAI APIを迅速に習得し、その強力な機能をプロジェクトで最大限に活用するための助けとなることを願っています。