02. ChatGPT API の基本的な使い方
この資料は 2025 年 11 月時点での田中正吾の雑感として書いたものです。あくまでもハッカソンでザっと AI の連携を作れるようにするために、動かして進められるような説明用の資料とサンプル群を用意した次第です。
OpenAI ChatGPT API を使って、AI と会話するプログラムを書いてみます。
学べること
- OpenAI SDK の初期化方法
- Chat Completions API の基本的な使い方
- API キーの設定方法
準備するもの
- Node.js (v18 以上)
- OpenAI API キー
API キーは OpenAI Platform で取得できます。
セットアップ
サンプルコードは本教材の Codespace(リンク集を参照)の 02_api-basics/ にあります。
フォルダ移動
まず、ターミナルに表示されているカレントディレクトリ(現在の作業フォルダ)を確認しましょう。
/workspaces/hackathon-ai-and-mcp-sample-202511-codespace/の場合は、以下のコマンドでフォルダ移動します。
cd 02_api-basics
- 続けて 01 から勉強している場合は、カレントディレクトリが
/workspaces/hackathon-ai-and-mcp-sample-202511-codespace/01_setupで一つ階層が深いので、以下のコマンドでフォルダ移動します。
cd ../02_api-basics
手元の Visual Studio Code で作業されている方は、現在作業中のカレントディレクトリを確認いただいて上記を参考にフォルダを移動しましょう。
※フォルダ移動について詳しくは「Codespace でのフォルダ移動」を参照してください。
インストール
カレントディレクトリの移動が確認できたら、関連ライブラリをインストールして準備します。
npm install
これ以降はこのカレントフォルダでコマンドを打って作業していきましょう。
API キーの設定
simple.js の先頭にある API キー設定箇所を、あなたの OpenAI API キーに書き換えます。
// OpenAI API キー
// お使いになる OpenAI API キーに差し替えましょう
const OPENAI_API_KEY = "ここにあなたのAPIキーを入力";
実行してみる
node simple.js
実行すると、ChatGPT から返事が返ってきます。
コードの説明
OpenAI SDK の初期化
const OpenAI = require("openai");
const openai = new OpenAI({
apiKey: OPENAI_API_KEY
});
OpenAI SDK を読み込んで、API キーを設定します。これで openai オブジェクトが使えるようになります。
Chat Completions API の呼び出し
const completion = await openai.chat.completions.create({
messages: [
{ role: "user", content: "こんにちは!ChatGPTさん!" }
],
model: "gpt-4o",
});
messages: ユーザーからのメッセージを配列で渡しますrole: "user": ユーザー(あなた)からのメッセージであることを示しますcontent: 実際のメッセージ内容model: 使用する AI モデル(今回はgpt-4o)
結果の取得
console.log(completion.choices[0].message.content);
ChatGPT からの返答は completion.choices[0].message.content に入っています。
知っておくと良いこと
async/await について
async function main() {
const completion = await openai.chat.completions.create({...});
}
API 呼び出しは時間がかかるので、async と await を使って結果を待ちます。API からの応答を受け取ってから次の処理に進むことができます。
モデルの選択
gpt-4o: 高性能、コストは高めgpt-4o-mini: 軽量、コストは安め
ハッカソンで試すなら、まずは gpt-4o-mini で動かしてみて、必要に応じて gpt-4o に切り替えるのがおすすめです。
次のステップ
基本的な API 呼び出しができましたね。次は Function Calling を使って、AI にツールを使わせてみましょう。