やっと venv がわかってきた。
python3 -m venv venv
venv/bin/pip install fastapi uvicorn ollama
python3 で venv してから venv/bin のコマンド(pipとかpython3なども)を使うということやね。わかりにくすぎる。
bin/uvicorn main:app –reload
この uvicorn というのが python3 から起動する httpサーバーらしい。main.py から fastapi を呼ぶ。
uvicorn は localhost (127.0.0.1) からアクセスできるが外に公開するには apache2 の ProxyPass を使った方がよさげである。
a2enmod proxy
a2enmod proxy_http
systemctl restart apache2
journalctl -xeu apache2
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
ProxyRequests Off
ProxyPass “/api/” “http://127.0.0.1:8000/”
ProxyPassReverse “/api/” “http://127.0.0.1:8000/”
やっとここまではきた。次に api サーバーから ollama を呼ぶところだな。