💻

【FastAPI導入】PythonでAPIの“口”を作る ~ChatGPT API 開発基礎 #2~

に公開

本記事は、「ChatGPT API 開発基礎 ~ChatGPT APIをFastAPIとStreamlitで動かす~」の第2回です。
今回は、PythonとFastAPIの導入と環境構築手順をまとめます。

👤 1. 前回のまとめ – なぜAPI化なのか?

ChatGPTに「受付支援できるAIを作りたい」と相談したら、普通にPythonコードが返ってきた。
でも、カスタムGPTではPythonコードは実行できない。
「じゃあ、APIを作って呼び出すしかないか…」という結論に至った。

API化すれば、今後フロントエンドやRPA、SlackBot、LineBot、Streamlitなど、
どこからでも受付AIを呼び出せる。構造設計思考的にも、拡張性はAPI一択だと思った。


🛠️ 2. Python環境構築

🔧 2.1. Pythonインストール

最初はMicrosoft Store版Pythonを入れてみたが、
pip installやvenv作成でエラーが出るという記事を多数発見。

結局、公式サイトにアクセスしてインストーラ版をダウンロードしてインストール。
コマンドラインから pythonを使うため、PATH追加オプションのチェックは必須。
後はInstallNowでOKです。

コマンドプロンプトを開いて、以下のコマンドで、バージョン確認して無事完了。

python --version

📝 2.2. VSCode導入

Obsidianはメモ用として既に導入済みだが、
Python開発にはVSCodeが最適ということで公式サイトからインストール。

以下のチェックがおすすめです。

  • PATHへの追加: デフォルト
  • サポートされているファイルの種類のエディタとして、Codeを登録する
  • エクスプローラーのディレクトリコンテクストメニューに[Codeで開く]アクションを追加する

インストールが終わったら、VSCodeを起動し、以下の作業をお行います。

  1. 日本語化パックのインストール

    • 左の 拡張機能アイコン(四角アイコン) をクリック
    • 検索欄に 「Japanese Language Pack for Visual Studio Code」 と入力
    • 出てきた拡張機能をインストール
    • インストール後、右下に「再起動しますか?」のような案内が出るので再起動
  2. Python拡張機能をインストール

※「Python拡張機能(ms-python.python)」 を入れると、以下が可能になります:

  • 構文ハイライト強化(キーワードや関数を色分け)
  • 補完機能(app. と書くと候補を出してくれる)
  • Linter/Formatter連携(PEP8準拠でエラーや警告を表示)
  • 仮想環境の選択(.\venv\Scripts\python.exe を自動で切り替えられる)
  • デバッグ機能(ブレークポイントを置いて変数の中身を確認)

VSCodeからターミナルを開き、Pythonが認識されていることを確認。


⚙️ 2.3. 仮想環境構築

公式ドキュメントに従い、venvをプロジェクト直下に作成。

python -m venv venv

作成後、有効化する。

# Windows PowerShell
.\venv\Scripts\Activate

プロンプトに (venv) が表示されればOK。
不要になったら deactivate で無効化できる。

🧪 venvとは?

virtual environment(仮想環境) の略。
Pythonでプロジェクトごとに依存ライブラリ(パッケージ)を分離・管理するための仕組みです。

📦 名前は venv のままでいいの?

✅ 結論:
自由に変えてOK。でも venv が一般的。


🚀 3. FastAPI初体験

📝 3.1. FastAPIインストール

pip install fastapi uvicorn

※今回は1からなので、requirements.txtは省略。

🔧 3.2. Hello FastAPI

app.pyを作成し、以下を記述。

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"message": "Hello FastAPI"}

ターミナルで起動。

uvicorn app:app --reload

http://127.0.0.1:8000 にアクセスすると、Hello FastAPIが返ってきた。
また、http://127.0.0.1:8000/docs にアクセスするとSwagger UIが自動生成されており、
エンドポイントテストも簡単にできた。


🔭 4. 次への問い

  • OpenAI APIを組み込む構成はどうするか?

次回は、#3 OpenAI API統合へ進む。

📚 ChatGPT API 開発基礎(全8回)

#1 構想と環境構築#2 FastAPI導入#3 OpenAI統合#4 UI試作#5 POST通信#6 公開テスト#7 本番環境#8 仕上げと考察

Discussion