Spaces:
Running
Running
| ## ローカルで作業する | |
| ``` | |
| git clone https://huggingface.co/spaces/yuto0o/django-ai-chat | |
| uv sync | |
| cd django-ai-chat | |
| ``` | |
| ``` | |
| uv run ./key.py | |
| # 出力されたやつが`dev-key`となる | |
| ``` | |
| config/settings.py の DEBUG は True にしておくと色々様子が見えやすい | |
| ``` | |
| DEBUG =True | |
| ``` | |
| `django-ai-chat/.env` をつくって"dev-key"を入れておくとよい | |
| ``` | |
| #.env | |
| dev-key={さっき出力されたdev-key} | |
| ``` | |
| ``` | |
| # config/settings.py | |
| # 設定したdev-keyはここで読み取られる | |
| SECRET_KEY = os.environ.get("SECRET_KEY", "dev-key") | |
| ``` | |
| ローカルで起動 | |
| ``` | |
| uv run python manage.py migrate # 初めの一回だけでよい | |
| ur run python manage.py runserver #起動したいときは毎回 | |
| ``` | |
| こんなのがでてくる | |
| ``` | |
| http://127.0.0.1:8000/api/docs | |
| # ここにアクセスし、postを入力するところに | |
| {"text": "こんにちは!元気ですか?"} | |
| # こんなかんじで書いてtry it out で編集してexecuteをクリックすると返信が返ってくる | |
| # runserverしたのとは別のターミナルで以下を直接打ち込んでもよい | |
| curl -X POST http://localhost:8000/api/chat/ -H "Content-Type: application/json" -d '{"text": "こんにちは!元気ですか?"}' | |
| ``` | |
| ## requirement.txt 更新するときは | |
| ``` | |
| uv pip compile pyproject.toml -o requirements.txt | |
| ``` | |
| を使うこと | |
| ## build 実行(docker) | |
| ``` | |
| docker build -t my-django-bot . | |
| docker run -p 7860:7860 my-django-bot | |
| ``` | |
| view とか書き換えただけの時?毎回ビルドが重くならないように | |
| ``` | |
| docker run -p 7860:7860 \ | |
| -v ~/.cache/huggingface:/code/cache \ | |
| my-django-bot | |
| ``` | |
| docker で動かしているときは | |
| ``` | |
| http://localhost:7860/api/docs/ にアクセスして | |
| {"text": "こんにちは!元気ですか?"} | |
| # こんなかんじで書いてtry it out で編集してexecuteをクリックすると返信が返ってくる | |
| ターミナルで以下を打ち込んでもよい | |
| curl -X POST http://localhost:7860/api/chat/ -H "Content-Type: application/json" -d '{"text": "こんにちは!元気ですか?"}' | |
| ``` | |
| ## 容量解放 | |
| ``` | |
| # 特定のモデルだけ消すのが面倒な場合、hubフォルダごと消しても、 | |
| # 次回使う時に再ダウンロードされるだけなので安全です。 | |
| rm -rf ~/.cache/huggingface/hub/ | |
| # 使っていないイメージやコンテナを一括削除 | |
| docker system prune -a | |
| # uv cache clean | |
| uv cache clean | |
| ``` | |
| ## huggingface に push するとき | |
| ``` | |
| uv run hf auth login | |
| # あとはtokenとかを貼る? | |
| git config --global credential.helper store | |
| #トークン確認 | |
| cat ~/.cache/huggingface/token | |
| # なんかpushできないとき | |
| git push https://YOUR_USER_NAME:YOUR_HF_TOKEN@huggingface.co/spaces/yuto0o/django-ai-chat main | |
| # SECRET_KEY = os.environ.get("SECRET_KEY", "dev-key")の"SECRET_KEY"をリポジトリで登録しておくとよい | |
| ``` | |