始める無料で始める

モデル登録用の POST エンドポイント

先ほど作成した GET エンドポイントは既存モデルの情報を取得するためのものでした。今度は、承認されたチームメンバーが新しいモデルを登録したり、既存モデルの情報を更新したりする手段が必要です。

チームメンバーが新しいモデルの登録や既存モデルの更新を行えるよう、POST エンドポイントを作成しましょう。 このエンドポイントは、モデル情報をサーバーに保存します。

この演習はコースの一部です

FastAPI を使った AI のプロダクション環境へのデプロイ

コースを見る

演習の手順

  • "/register-model"POST リクエストのエンドポイントを作成してください。
  • 受け取ったモデル情報を ModelInfo Pydantic モデルで受け付け・検証するよう、関数パラメータ model_info を定義してください。
  • ModelInfo オブジェクトを辞書に変換し、model_db に保存してください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

model_db = {}

class ModelInfo(BaseModel):
    model_id: int
    model_name: str
    description: str

# Create the POST request endpoint
@app.____("/register-model", status_code=201)
# Pass the model info from the request as function parameter 
def register_model(____: ModelInfo):
    # Add new model's information dictionary to the model database
    model_db[model_info.model_id] = model_info.____()
    
    return {"message": "Model registered successfully", "model": model_info}, 201
コードを編集して実行