Spaces:
Running
Running
File size: 2,930 Bytes
34d98fd b4ef713 34d98fd b4ef713 34d98fd edf4acf 34d98fd edf4acf 34d98fd edf4acf 34d98fd edf4acf b4ef713 34d98fd e1bda81 34d98fd e1bda81 34d98fd b4ef713 edf4acf b4ef713 e1bda81 b4ef713 e1bda81 b4ef713 e1bda81 b4ef713 34d98fd b4ef713 edf4acf b4ef713 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 |
## ローカルで作業する
```
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"をリポジトリで登録しておくとよい
```
|