bobert / README.md
token03's picture
Release v14.1
920da54 verified
|
Raw History Blame Contribute Delete
1.56 kB
---
license: mit
tags:
- osu
- representation-learning
- similarity-search
---
# BoBERT 路 v14.1
Dense osu!standard beatmap representations from `.osu` hit-object sequences.
The encoder was pretrained on roughly 500,000 beatmaps; collection-derived adaptation
refines the embeddings for recommendation and similarity search.
[Source and architecture](https://github.com/token03/bobert) 路 [Live recommender](https://bobert-web.pages.dev/)
## Release
- Embeddings: 498,962 beatmaps, 384 dimensions.
- Encoder: 9 layers, 6 heads, 4,096 hit-object limit.
- Index generated: 2026-09-14T15:25:19.001095+00:00.
- Adapter: collection-trained linear projection.
- Export workspace: `a65b9137198c8e64378960a881d66036fd4fbe19`.
## Download
From the source checkout:
```sh
uv run --no-default-groups --group serve fetch-run --repo token03/bobert --revision v14.1
docker compose up --build api
```
To inspect the model directly:
```python
import torch
from core.model import BobertEncoder
model, stats = BobertEncoder.from_pretrained("model.safetensors", torch.device("cpu"))
```
`model.safetensors` contains the encoder, adapter, normalization statistics, and model configuration.
`embeddings.parquet` contains beatmap IDs, vectors, densities, and embedded pooling/retrieval metadata.
The index records its model's SHA-256 checksum. Keep the two files together for online queries.
`data/` contains the metadata and strain catalogs required by the API.
See the source repository for the training pipeline, acknowledgements, limitations and evaluation tools.