将棋AIの学習・Lambdaへのデプロイ・ReactによるWebアプリ上でのプレイを行う
- AIの学習
- 強化学習
- PyTorch
- DQN
- CNN
- 教師あり学習
- PyTorch
- 強化学習
- サーバーサイド
- APIサーバー
- FastAPI
- LambdaのRestAPI
- Lambda (Docker)
- APIサーバー
- クライアントサイド
- React
- Recoil
- MUI (v5)
python3.9
学習
$ PYTHONPATH=. python3 training/reinforcement_learning/train.py推論
$ PYTHONPATH=. python3 training/reinforcement_learning/test.py事前に kifu/hcp にhcp形式のファイルを保存してください
$ PYTHONPATH=. python3 training/supervised_learning/train.pyサーバーの立ち上げ
$ PYTHONPATH=. uvicorn apps.app_server:app --reloadリクエストを送る
$ curl -XPOST -d '{"moves": ["7776FU", "3334FU"]}' -H "Content-Type: application/json" localhost:8000/move※ CPUでCNNの推論を行うため、Memory ~ 3GB, Duration ~ 1sほど要します.
dockerイメージ作成
$ docker build -t shogi-lambda:latest -f ./apps/Dockerfile .dockerコンテナの実行開始
$ docker run -p 9000:8080 shogi-lambda:latestリクエストを送る
$ curl -XPOST "http://localhost:9000/2015-03-31/functions/function/invocations" -d '{"moves": ["7776FU", "3334FU"]}'