このリポジトリには、Interface 2023年11月号の「ChatGPTとプログラミング」(以下、本誌)の中西が担当した部分のサポートページです。 以下の内容が含まれます。
- 各章・コラムのChatGPTとのやり取り全文(./prompts/)
- 第3部第6章の認識サーバーのソースコード(./app)
- 第3部第6章の認識サーバー用のDocker関係ファイル(./docker)
不備があれば、イシューぺージを活用ください。
イントロダクションのViTの全文のURL部分
(誤)https://github.com/kurusugawa-computer/interface-2023-11-chatgpt/prompts/イントロダクション/ViT.md
(正)https://github.com/kurusugawa-computer/interface-2023-11-chatgpt/blob/main/prompts/イントロダクション/ViT.md
「プログラマ向け 活用テクニック13」のログ・ディレクトリのURL部分
(誤)https://github.com/kurusugawacomputer/interface-2023-11-chatgpt/prompts/各論編
(正)https://github.com/kurusugawa-computer/interface-2023-11-chatgpt/blob/main/prompts/各論編
認識サーバーの動作にはdockerを用います。
./app/launch.shを用いてコンテナを起動し、そこで認識サーバーのAPIサーバープロセスや推論プロセスを動作させてます。
認識サーバーは適切なGPU環境が必要です(OS:Linux, CPU:x86-64, NVIDIA製GPU, docker, NVIDIAドライバー, NVIDIA Container Toolkit)。 詳細は本誌を確認ください。
このリポジトリをダウンロードします。
$ git clone https://github.com/kurusugawa-computer/interface-2023-11-chatgpt
$ cd interface-2023-11-chatgpt
Dockerコンテナを起動します。初回実行時はダウンロードに時間がかかります。
$ bash ./app/launch.sh
起動時にappディレクトリをコンテナにマウントします。
コンテナを起動し、コンテナ内でuvicornコマンドでAPIサーバープロセスを起動します。
$ bash ./app/launch.sh
$ uvicorn server:app \
(--port ポート番号(指定しない場合8000))
(--host ローカルIPアドレス等を指定)
別PCなどの外部からアクセスする場合は、本誌で説明したように、引数(host,post)を適切に指定してください。
コンテナを起動し、推論プロセスを起動します。複数起動しない想定です。
$ bash ./app/launch.sh
$ python ./interface.py
./app/test_model.pyは「ステップ1:推論コードの作成」で作成した推論コードをテストするコードです。 以下のコマンドで実行します。実行すると推論結果が表示されます。
$ bash ./app/launch.sh
$ python ./test_model.py
./app/repeat.shは「大量アクセス」の節のスクリプトです。環境に合わせてHOSTとPORTを変更して用いてください。