公式インテグレーション&SDK
FastAPI、Django、Flask 向けの非同期画像最適化
httpx と Pillow フォールバックを備えたモダンな非同期 Python クライアント。Django モデル、FastAPI エンドポイント、Celery / RQ タスク内でメディアを容易に最適化。
インストール:
PYTHON パッケージpip install smallpict実装コード例
python# FastAPI / Async Python Example
from fastapi import FastAPI, UploadFile, File
from smallpict import AsyncSmallPictClient, ImageFormat
app = FastAPI()
client = AsyncSmallPictClient(api_key="sp_live_key_xxxxx")
@app.post("/api/upload")
async def upload_image(file: UploadFile = File(...)):
image_bytes = await file.read()
result = await client.optimize(
image_bytes,
format=ImageFormat.AVIF,
quality=80,
max_width=1400
)
return {
"cdn_url": result.cdn_url,
"savings": f"{result.savings_percentage}%",
"original_size": result.original_size,
"optimized_size": result.new_size
}連携ステップ
11. pip install によるインストール
PyPI から公式パッケージ pip install smallpict をインストールします。
22. クライアントの初期化
同期アプリには SmallPictClient、ASGI には AsyncSmallPictClient を使用します。
33. アップロード処理に統合
Django FileField や FastAPI ストリームを client.optimize() でラップします。
主なメリット
- httpx コネクション再利用を備えたネイティブ asyncio サポート
- Django モデルフィールド統合(SmallPictImageField)
- Celery および RQ バッチ実行用デコレータを提供
- Pydantic スキーマによる完全な型定義サポート
公式開発者ドキュメント
完全な実装ガイドと API 仕様をお探しですか?
公式 Python & Django パッケージ 開発者ガイドで、パラメータ仕様、認証、エラーコード、ローカル検証手順をご確認いただけます。
Python & Django パッケージ の画像パイプラインを最大化
アプリケーションで 50ms 未満の高速 AVIF / WebP 配信を実現。初期費用なし、即時利用可能なサンドボックスキーを提供。
