FastAPI のインストールと環境設定
FastAPI は Python 3.8 以降に依存しています。このセクションでは、FastAPI のインストール方法と開発環境の設定方法を説明します。
Python バージョンの確認
FastAPI をインストールする前に、お使いの Python バージョンを確認してください:
$ python --version Python 3.11.0 # 或者 $ python3 --version Python 3.11.0
Python バージョンが 3.8 より低い場合は、先に Python をアップグレードしてください。
仮想環境の作成
仮想環境に FastAPI をインストールすることをお勧めします。システムの Python パッケージと競合するのを避けられます:
# 创建虚拟环境 $ python -m venv venv # 激活虚拟环境(macOS/Linux) $ source venv/bin/activate # 激活虚拟环境(Windows) $ venv\Scripts\activate
仮想環境は Python 開発のベストプラクティスです。各プロジェクトで独立した仮想環境を使用することで、異なるプロジェクト間の依存関係の競合を避けることができます。
FastAPI のインストール
pip を使用して FastAPI をインストールします:
$ pip install fastapi
このコマンドは FastAPI のコアパッケージのみをインストールします。FastAPI とそのすべてのオプション依存関係を一度にインストールする必要がある場合は、次を使用できます:
$ pip install "fastapi[all]"
fastapi[all]以下のコンポーネントがインストールされます:
| パッケージ名 | 用途 |
|---|---|
uvicorn[standard] | ASGI サーバー。FastAPI アプリケーションの実行に使用 |
python-multipart | フォームデータとファイルアップロードのサポート |
jinja2 | HTML テンプレートエンジン |
python-jose[cryptography] | JWT トークンのサポート |
passlib[bcrypt] | パスワードのハッシュ化と暗号化 |
python-dotenv | 環境変数の管理 |
Uvicorn のインストール
FastAPI は ASGI フレームワークであり、実行には ASGI サーバーが必要です。最もよく使われるのは Uvicorn です:
$ pip install "uvicorn[standard]"
[standard]uvloop(高性能イベントループ)と httptools(高性能 HTTP パーサー)がインストールされ、パフォーマンスが大幅に向上します。
ASGI(Asynchronous Server Gateway Interface)は、Python の非同期 Web サーバーとアプリケーション間の標準インターフェースであり、WSGI の非同期バージョンです。Flask などの従来のフレームワークは WSGI(同期)を使用しますが、FastAPI は ASGI(非同期)を使用するため、並行リクエストをより効率的に処理できます。
最初の FastAPI アプリケーションを実行する
インストールが完了したら、次の名前のmain.pyファイルを作成します:
例
# FastAPI アプリケーションのインスタンスを作成
app = FastAPI()
# ルートパスの GET ルートを定義
@app.get("/")
async def root():
return {"message": "Hello World"}
コマンドラインでアプリケーションを起動します:
$ uvicorn main:app --reload
パラメータの説明:
| パラメータ | 説明 |
|---|---|
main:app | mainファイル名 main.py を指します。appファイル内で作成された FastAPI インスタンスの変数名を指します。 |
--reload | 開発モード。コード変更後にサーバーを自動リロードします(開発環境のみ)。 |
起動が成功すると、ターミナルに次のように表示されます:
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit) INFO: Started reloader process INFO: Started server process INFO: Waiting for application startup. INFO: Application startup complete.
ブラウザを開いてアクセスしますhttp://127.0.0.1:8000。以下のような JSON レスポンスが表示されます:
{"message": "Hello World"}

同時に、FastAPI はインタラクティブな API ドキュメントを自動生成します:
| URL | ドキュメントの種類 | 説明 |
|---|---|---|
| http://127.0.0.1:8000/docs | Swagger UI | API をインタラクティブにテストできるドキュメントインターフェース |
| http://127.0.0.1:8000/redoc | ReDoc | 読みやすさを重視したドキュメントインターフェース |
FastAPI CLI を使用する
FastAPI の新しいバージョンではfastapiコマンドラインツールが提供され、より便利にアプリケーションを実行できます:
# 开发模式(自动重载) $ fastapi dev # 生产模式 $ fastapi run
fastapi devプロジェクト内の FastAPI アプリケーションを自動的に検索して開発サーバーを起動します。これは次と同等です:uvicorn main:app --reload。
推奨開発ツール
| ツール | 説明 |
|---|---|
| VS Code | 無料で軽量。Python プラグインと Pylance プラグインを組み合わせると、優れた FastAPI 開発体験が得られます。 |
| PyCharm | プロフェッショナルな Python IDE。FastAPI プロジェクトテンプレートと強力なデバッグ機能を内蔵。 |
| Alibaba Qoder | Alibaba がリリースした AI プログラミング IDE。VS Code をベースに深くカスタマイズされています。 |
| ByteDance Trae | ByteDance がリリースした AI 駆動の開発ツール。Python サポートを内蔵。 |
VS Code + Python プラグインの使用をお勧めします。FastAPI の型アノテーションと自動補完のサポートが最も優れており、完全に無料です。その他の拡張機能