はじめに 例えば機械学習モデルを運用する際に、WebAPI形式で予測を提供するのは一般的な方法と言えます。ここで推論処理に時間がかかる場合には、リクエストに対するレスポンスだけ先に返しておき、処理の本体はバックグラウンドで非同期的に実行するという選択肢が存在します。 本記事では、Pythonベースの分散タスクキューツールであるCeleryを用いて、WebAPIへのリクエストに対応したタスクを非同期実行し、結果を確認するまでを紹介します。サンプルコードは以下に配置しました。 Celeryとは 公式ドキュメントの冒頭には以下のように書かれています。 Celery is a simple, flexible, and reliable distributed system to process vast amounts of messages, while providing operation