Official fitted Jacobian lens for JLD and JLD-fast, by Shreshth Saini, Balu Adsumilli, and Alan C. Bovik. JLD measures the perceptual distance between an aligned reference image and a distorted image. Lower scores mean more similar images. It projects early DINOv2 patch features onto directions selected by the encoder's output sensitivity. The lens is fitted from unlabeled images without human quality ratings. This installs the versioned release wheel and records it in uv.lock. The distribution is named jacobian-lens-distance; the Python import remains jld. The package already includes this lens. The encoder weights are downloaded separately through timm on first use. Python 3.10 or newer…
trivago-recsys-moe is an open-weight model for other from Taha Moula, released under MIT License. Its published files total 492.6 MB.
Trained weights and artifacts for tmoula/trivago-recsys-moe, the Polanyi Labs prototype. It does session-based hotel recommendation on the Trivago RecSys Challenge 2019 data.
Model Card
By Taha Moula, published under mit, revision da0f074fe2bf.
Trained weights and artifacts for tmoula/trivago-recsys-moe, the Polanyi Labs prototype. It does session-based hotel recommendation on the Trivago RecSys Challenge 2019 data. It also includes an experimental persona-conditioned mixture-of-experts bridge that transfers retail browsing behaviour (Yoochoose, RecSys Challenge 2015) into the travel domain. The code (model classes, preprocessing, training and inference scripts) lives on GitHub. This repo only hosts the files too large for git. The model takes two left-padded [batch, 20] tensors, refids and actionids, and returns logits over all 400,278 tokens (index 0 is padding). Decode the results with mappings["idx2ref"]. - Unrelated pairings…
Read Taha Moula's full model card
Trained weights and artifacts for tmoula/trivago-recsys-moe, the Polanyi Labs prototype. It does session-based hotel recommendation on the Trivago RecSys Challenge 2019 data. It also includes an experimental persona-conditioned mixture-of-experts bridge that transfers retail browsing behaviour (Yoochoose, RecSys Challenge 2015) into the travel domain.
The code (model classes, preprocessing, training and inference scripts) lives on GitHub. This repo only hosts the files too large for git.
Files
| File | Size | What it is |
|---|---|---|
context_sasrec_best.pt |
413 MB | ContextAwareSASRec state dict: 103M params, 400,277 hotel/reference tokens, 10 action types, hidden size 128, 2 transformer layers, 4 heads |
mappings.pkl |
10 MB | action2idx, ref2idx, idx2ref for the checkpoint above. Rebuilt from the sorted train.csv so the ids line up with the checkpoint |
sasrec_source_encoder.pt |
67 MB | Phase 1 SASRecSourceEncoder (52,739 Yoochoose items, hidden size 256, 4 layers), pre-trained on next-click prediction |
archetypes.json |
small | 7 behavioural shopper archetypes (K-Means over Yoochoose sessions): label, description, centroid features |
persona_P_vectors.npy |
2.8 MB | [50000, 7] persona-to-archetype mixtures for the 50k Nemotron personas |
Usage
git clone https://github.com/tmoula/trivago-recsys-moe && cd trivago-recsys-moe
pip install -e .
python scripts/download_weights.py # pulls this repo into ./artifacts
python scripts/recommend.py --events "search for destination:0" "interaction item image:9753022" "clickout item:9753022"
Or in Python:
import pickle, torch
from huggingface_hub import hf_hub_download
from trivago_moe.models import ContextAwareSASRec
repo = "tmoula/trivago-recsys-moe"
mappings = pickle.load(open(hf_hub_download(repo, "mappings.pkl"), "rb"))
model = ContextAwareSASRec(num_refs=mappings["NUM_REFS"], num_actions=mappings["NUM_ACTION_TYPES"])
model.load_state_dict(torch.load(hf_hub_download(repo, "context_sasrec_best.pt"), map_location="cpu"))
model.eval()
The model takes two left-padded [batch, 20] tensors, ref_ids and action_ids, and returns logits over all 400,278 tokens (index 0 is padding). Decode the results with mappings["idx2ref"].
Training
| Data | Trivago RecSys 2019 train.csv: 649,297 sessions that contain a clickout, split randomly 80/10/10 |
| Target | the last clickout item reference in each session |
| Input | the last 20 (reference, action type) events of the session |
| Optimisation | Adam, lr 1e-3, StepLR(5, 0.5), batch 2048, 20 epochs, best val HR@10 checkpoint, 1×A100 |
Evaluation and limitations
| Metric (test split) | Value |
|---|---|
| HR@10 | 0.753 |
| HR@20 | 0.755 |
These numbers are inflated by target leakage. The input window includes the target clickout itself, so the model mostly learns to copy the last clicked hotel. That is why HR@10 and HR@20 are almost the same. Treat this checkpoint as a pipeline and demo artifact, not a benchmark result. The GitHub repo has a leak-free training option (
scripts/train_context_sasrec.py --exclude-target).
Other known limitations:
- Unrelated pairings in the MoE stage. Retail vectors, personas and travel sessions are paired by index, not by a real user link. No MoE bridge checkpoint is published.
- Reference tokens are not all hotels. They include non-hotel references (city names, filter values, "0" for empty), so check that a predicted id is a real hotel before showing it to users.
- Dataset terms apply. The Trivago and Yoochoose datasets were released for research use, so check their terms before any commercial use of these weights.
See Known issues on GitHub for details.
License
Code and weights: MIT. The underlying datasets keep their own terms.
Identity and Version
- Repository
- tmoula/trivago-recsys-moe
- Publisher
- Taha Moula
- Task
- Other
- Modality
- Other
- Library
- pytorch
- Parameters
- Not stated by the source
- Languages
- Not stated by the source
- Revision
- da0f074fe2bf5c41d482bb006c5e56fcbf2a065b
- First published
- 2026-10-17
- Last updated
- 2026-10-17
Files and Weights
7 files, 492.6 MB in total. The weights are 2 files totalling 479.8 MB in pt.
Every file
| File | Type | Size | SHA-256 |
|---|---|---|---|
| context_sasrec_best.pt | Weights | 413.1 MB | 72dd40a92aff |
| sasrec_source_encoder.pt | Weights | 66.7 MB | 2a3d96310738 |
| archetypes.json | Configuration | 3.1 KB | — |
| README.md | Documentation | 4.3 KB | — |
| mappings.pkl | Other | 10.1 MB | 16194c867d21 |
| persona_P_vectors.npy | Other | 2.8 MB | 21678aa1936b |
| .gitattributes | Repository | 1.5 KB | — |
License and Download
- License
- mit
- Access
- Open weights, no gate
- Download size
- 479.8 MB
Released by Taha Moula through its official repository on Hugging Face. Read the license.
Memory Requirements
| Precision | Weights in memory |
|---|---|
| As published | 479.8 MB |
Weights only, from the published parameter count; the key-value cache and runtime add to this.
Questions About trivago-recsys-moe
Can I use trivago-recsys-moe commercially?
Yes. trivago-recsys-moe is released under MIT License. The MIT License is a short permissive license. It permits commercial use, modification and redistribution, provided the copyright notice and permission notice are included.
Similar Models
ONNX conversion of cua-ai/cua-s1-forms, prepared for lightweight local inference experiments with ONNX Runtime, ONNX Runtime Web, WebAssembly (WASM), and WebGPU. Please read the original model card before using this conversion. It contains the authoritative description of the model's architecture, training setup, evaluation, limitations, and intended scope. CUA-S1 Forms is a small specialist "System One" model for form-oriented computer-use tasks. Unlike an autoregressive LLM, it does not generate text token-by-token. For each UI element, it receives: 1. a short structured context describing the task, form, and element, and 2. a set of candidate options such as extracted document values…
Sculpt real ECMWF ERA5 atmospheric state into publish-ready video, GIF, and sound. Not animation. Not simulation. Real observed weather, rendered through 4 tuned presets. - Global 0.25 deg x 7 days (5 variables: t2m, u10, v10, tp, msl) - China region 0.25 deg x 30 days (5 variables) - 4 presets: temperature waves / wind streamlines / rain curtain / pressure vortex - Weather sonification (WAV) - "hear" the atmosphere - Pre-downloaded, zstd-compressed, SHA-256 checksummed https://roblitz-spec.github.io/weather-sculpt/ - Full dataset + commercial license: https://robloxer31.gumroad.com/l/Weather-Sculpt ECMWF ERA5 reanalysis (CC-BY 4.0). The same dataset used by meteorologists worldwide.
A frozen, non-learning recursive network built on the real fruit-fly MaleCNS connectome (Janelia 2024). Feed any stimulus, get an organic, structured "instinctive" signal that is more alive than noise, less predictable than a script. Not AI. Not a brain. Not learning. Just real neural wiring, frozen. - Real MaleCNS connectome subset (1,587,930 edges, ~25 MB) - 4 tuned presets: escape / sugar / startle / explore - Zero training. Weight-frozen. Deterministic per seed. https://roblitz-spec.github.io/fly-instinct/ - Full 1.05GB connectome + commercial license: https://robloxer31.gumroad.com/l/Fly-Instinct
Pretrained DiT decoders for TT-VidT (Decoupling the Temporal Axis for Efficient Motion-Centric Video Pretraining, NeurIPS 2026). Paper · Each TT-VidT encoder pretraining run initialises its decoder from one of these; the training code downloads them automatically through DECODERPRETRAINED, e.g. "KBlueLeaf/TTVidT-decoders/pretrainvideoSqknorm". The decoders work in the 32x32x4 latent space of the frozen f8 frame VAE KBlueLeaf/latentmaid-vae and are conditioned on DINOv3 ViT-B/16 features (768-d). - ImageNet decoders reconstruct an ImageNet image from its DINOv3 class token. - Video decoders reconstruct a later video frame from its class token plus, through cross-attention, the spatial…
NYS is not a transformer. It is a coupled-oscillator organism: phases \(\thetai\), amplitudes, natural frequencies \(\omegai\), and a sparse coupling graph \(K\). Language, compiler bits, and speech-frame IDs live on one graph (\(N = 5{,}000{,}000\) nodes, \(k = 512\) edges per node). The native graph trains by Equilibrium Propagation (free RK4, then same-moment free/nudged branches, then a contrastive \(K\) update), without backprop or a cross-entropy objective. A separate sparse context head now provides retrieved language inputs. The GPU Qwen teacher uses PyTorch/Transformers; that does not make the native graph a transformer. Dakuwon Moody (YNSScarSaiyan) · Saiyan Corp The…
