尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Suggests anime based on your own MyAnimeList history.
A model learns your taste from the scores on your MAL list, then ranks the most popular titles on MAL that you haven't watched yet. The picks are published as a small web page.
LIKE_THRESHOLD (default 7) or higher means
liked. A lower score, or a dropped title, means disliked. Unscored
titles are ignored./rate page. It shows anime you haven't watched and lets you answer
👍 or 👎. Once a model exists, it asks about the titles the model is least
sure about (active learning). Your answers are saved to data/ratings.json
and override list scores. This is useful when your list has few low scores.MaxAbsScaler.Pipeline.
Training logs the cross-validated average precision.NUM_CANDIDATES titles of the MAL ranking are
scored. Everything already on your list is skipped, except plan-to-watch. The
best TOP_N are written to data/recommendations.json.Requires Python 3.11+.
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"
cp .env.example .env # then fill in MAL_CLIENT_ID and MAL_USERNAME
Create the client ID at https://myanimelist.net/apiconfig. Your anime list must be public.
animerec serve # http://localhost:5000; rate anime at /rate, then click "Retrain"
animerec train # same as the button: fit the model -> models/model.joblib
animerec update # score the MAL ranking -> data/recommendations.json
animerec build-site # static page -> site/index.html
Commit data/ratings.json so that the scheduled GitHub Actions run trains with
your ratings too.
GitHub Pages (no server). The workflow
.github/workflows/pages.yml retrains the model,
refreshes the picks and publishes the static page every Monday. To set it up:
MAL_CLIENT_ID and MAL_USERNAME.Docker (Render, Fly.io, Railway, ...). Run animerec update first, so that
data/recommendations.json is baked into the image:
docker build -t animerec .
docker run -p 8000:8000 animerec
pytest
ruff check . && ruff format .
nbstripout --install # strip notebook outputs on commit
The notebooks/ folder holds the original 2022 exploration: the
MySQL ETL, model comparison and active learning. They are kept for reference and
are not used by the package.