0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OpenAI APIを使ってMVPを作ってみる

Last updated at Posted at 2025-10-10

OpenAIはChatGPTが脚光を浴びていますが、開発者視点からするとAPI(Application Programming Interface)を利用して、さまざまなアプリケーション、システムを構築できることに価値があるのだと思います。このAPIを使う際にはAPIキーが必要となります。でも、初めてAPIを使おうという人にとっては「どうしたらいいんだ?」となってしまうかと思います。

ということで、OpenAI APIを使い始めて、Minimum Viable Product(実用最小限の製品)を作るまでの流れをまとめました。

執筆時点では、APIの無料プランは確認できませんでした。クレジットカードによる支払いが必須となっています。

OpenAI APIとは

  • OpenAIが公開しているAPI(Application Programming Interface)
    • APIはソフトウェア、アプリケーションが互いのデータ、機能をやり取りするためのインタフェースです
    • このインタフェースの仕様を理解することが重要となります
  • ChatGPTで使っているAIモデルをプログラムからアクセス可能です
  • 自分で作ったプログラムやサービスからChatGPTの機能を利用することができます
  • 利用にはアカウント登録とクレジットの購入が必要です
  • APIの利用にはAPIキーが必要となります

OpenAIへのサインアップ

https://platform.openai.com/ にアクセス。右上のSign upをクリックします。

スクリーンショット 2025-10-10 20.55.03.JPG

お好きな方法でサインアップ、Googleで続行がおすすめです。
スクリーンショット 2025-10-10 20.55.17.JPG
スクリーンショット 2025-10-10 20.55.25.JPG
スクリーンショット 2025-10-10 20.55.34.JPG

氏名と生年月日を入力します。
スクリーンショット 2025-10-10 20.55.43.JPG

Organizational nameとWhat best describe you?を入力します。PersonalとEngineerとかで大丈夫です。
スクリーンショット 2025-10-10 20.56.21.JPG

チームメンバーを招待できますが、今回はI’ll invite my team later(チームは後で招待する)で大丈夫です。
スクリーンショット 2025-10-10 20.56.31.JPG

APIキーを作成します。Generate API Keyをクリックします。
スクリーンショット 2025-10-10 20.56.45.JPG

APIキーが表示されます。これをコピーしておきます。
スクリーンショット 2025-10-10 20.56.54.JPG

APIキーは厳重に管理してください!第三者に共有しないでください!

APIは有料です。クレジットを追加します。$5(750円程度)を購入しましょう。
スクリーンショット 2025-10-10 20.57.29.JPG

課金の管理

クレジットカードでの支払い後はUsageページで使用料、Billingページでクレジット残高を確認できます。
スクリーンショット 2025-10-10 21.46.07.JPG

クレジットがゼロになるとAPIは利用できなくなります。オートリチャージの設定をすることで、クレジット残高が一定地を下回った際に一定額のクレジットを追加することができます。また、月間の最大リチャージ量の制限をかけることができます。
スクリーンショット 2025-10-10 21.58.11.JPG

Google Colabでのデモ

ColabではAPIキーのように重要な情報をシークレットとして管理できます。名前openai_api_keyなどを指定し、に上で取得したAPIキーを入力することで、安全にキーを利用できるようになります
スクリーンショット 2025-10-10 21.02.14.JPG

デモ①:7行で“動く”を確認

pip install openai
from openai import OpenAI
from google.colab import userdata
openai_api_key = userdata.get('openai_api_key')

client = OpenAI(api_key=openai_api_key)

response = client.responses.create(model="gpt-5-nano", input="AIに関する俳句を書いてください")
print(response.output_text)
以下、AIを題材にした俳句を3つご用意しました。

1)
人工知能は
静かな心の海
夜の風を読む

2)
コードの灯が
星をつなぐ糸となり
朝を呼ぶ

3)
学ぶ影は
人の夢を映して
風となる

もっと厳密に5-7-5の形式に揃えたい場合や、別の雰囲気(ユーモラス、切ない、未来感など)をご希望なら教えてください。調整します。

コードの詳細な説明です。

# OpenAI APIを使用するためのクライアントライブラリをインポート
from openai import OpenAI

# Google Colabのユーザーデータ機能(秘密情報を安全に保存する機能)をインポート
from google.colab import userdata

# Google Colabに保存されているOpenAI APIキーを取得
# userdata.get()を使用することで、コード内にAPIキーを直接書かずに安全に管理できる
openai_api_key = userdata.get('openai_api_key')

# OpenAI APIクライアントのインスタンスを作成
# api_keyパラメータに取得したAPIキーを渡して認証を行う
client = OpenAI(api_key=openai_api_key)

# OpenAI APIにリクエストを送信してレスポンスを生成
# model: 使用するAIモデルを指定(ここでは"gpt-5-nano")
# input: AIに送る指示やプロンプト(ここでは「AIに関する俳句を書いてください」)
response = client.responses.create(
    model="gpt-5-nano", 
    input="AIに関する俳句を書いてください"
)

# APIから返されたレスポンスのテキスト部分を取得して出力
# output_textプロパティには生成されたテキスト(この場合は俳句)が格納されている
print(response.output_text)

デモ②:コンサルタント

SYSTEM_INSTRUCTIONS = """\
[Role] 生成AIの導入支援コンサルとして回答。
[Constraints] 箇条書き3点・各40字以内。専門用語は()で補足。
[Format] 「Q:」「A:」で明示。最後に次アクション1行。
"""

def ask(question: str) -> str:
   client = OpenAI(api_key=openai_api_key)
   resp = client.responses.create(
       model="gpt-5-nano",
       instructions=SYSTEM_INSTRUCTIONS,
       input=[
           {
               "role": "user",
               "content": f"Q:{question}\n"
                          "上記ルールを厳守してA:から出力してください。"
           }
       ]
   )
   return resp.output_text.strip()

ask("社内で生成AIを安全に導入するコツは?")
Q:
A:
- ガバナンス体制と責任分担を整える(組織ルール)
- データ最小化(不要データ削減)と権限管理(アクセス制御)で情報漏洩を抑制
- 用途と出力の監査を定期実施(出力検証の記録)
次アクション: 導入計画のドラフトを作成する。

デモ③:要約

SYSTEM_INSTRUCTIONS = """\
[Role] 日本語が流暢な言語学者。
[Constraints] 要約を箇条書き3点・各40字以内。専門用語は()で補足。
[Format] 「Q:」「A:」で明示。
"""

def ask(question: str) -> str:
    client = OpenAI(api_key=openai_api_key)
    resp = client.responses.create(
        model="gpt-5-nano",
        instructions=SYSTEM_INSTRUCTIONS,
        input=[
            {
                "role": "user",
                "content": f"Q:{question}\n"
                           "上記ルールを厳守してA:から出力してください。"
            }
        ]
    )
    return resp.output_text.strip()

ask("ビッグデータ分析に最適なオープンソースの分散処理システムであるApache Sparkはそのリリース以来、さまざまな業種の企業に採用され、急速な拡大を遂げています。Netflix、Yahoo、eBay などのインターネット大手も、Spark を大規模にデプロイし、8000 を超えるノードのクラスターで、複数のペタバイトデータをまとめて処理しています。Apache Spark は現在、250 を超える組織から 1000 名以上が参加する、ビッグデータの最大のオープンソースコミュニティへと急速に成長しています。")
Q:ビッグデータ分析に最適なオープンソースの分散処理システムであるApache Sparkはそのリリース以来、さまざまな業種の企業に採用され、急速な拡大を遂げています。Netflix、Yahoo、eBay などのインターネット大手も、Spark を大規模にデプロイし、8000 を超えるノードのクラスターで、複数のペタバイトデータをまとめて処理しています。Apache Spark は現在、250 を超える組織から 1000 名以上が参加する、ビッグデータの最大のオープンソースコミュニティへと急速に成長しています。
A:
- Sparkはオープンソースの分散処理(フレームワーク)
- 大手企業が8000ノード超のクラスター(大規模群)でペタバイト級データ処理
- 現在は1000名以上が参加する活発なオープンソースコミュニティ(協同開発)

DMM 生成AI 学び放題では、初心者から上級者まで、安心して進められる「学習コース」を用意しています。開発・営業・マーケ… あなたにピッタリな学習ステップで、日々成長を実感できるような、体系化されたカリキュラムをご活用ください!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?