Working implementation of Perceiver for Generation using a small configuration. The repository focuses on transparent code and repeatable smoke tests; benchmark claims are deliberately omitted.
Runs On
What it takes to serve course-generation (16,576 parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.
| Precision | Weights | Memory needed | Cheapest setup | Per hour | Also fits |
|---|---|---|---|---|---|
| 16-bit | 0.0 GB | 0.0 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
| 8-bit | 0.0 GB | 0.0 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
| 4-bit | 0.0 GB | 0.0 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Sep 18, 2026.
Model Card
By Alberto G. Jimenez, published under bsd-3-clause, revision aeb3ba2b1500.
Working implementation of Perceiver for Generation using a small configuration. The repository focuses on transparent code and repeatable smoke tests; benchmark claims are deliberately omitted. - The Python file contains the model and runnable example or training entry point. - config.json records the generated architecture settings. - trainingargs.json records the default experiment recipe. - model.safetensors is a valid initialization checkpoint for smoke tests; it is not presented as a trained benchmark checkpoint. - No benchmark score is claimed in this repository. The included configuration uses lion with a polynomial schedule. These are starting values in the script, not evidence of a…
Read Alberto G. Jimenez's full model card
Perceiver for Generation
Overview
Working implementation of Perceiver for Generation using a small configuration. The repository focuses on transparent code and repeatable smoke tests; benchmark claims are deliberately omitted.
Repository status
- The Python file contains the model and runnable example or training entry point.
config.jsonrecords the generated architecture settings.training_args.jsonrecords the default experiment recipe.model.safetensorsis a valid initialization checkpoint for smoke tests; it is not presented as a trained benchmark checkpoint.- No benchmark score is claimed in this repository.
Architecture
| Item | Value |
|---|---|
| Architecture | Perceiver |
| Scale | small |
| Attention | flash |
| Fusion | concat mlp |
| Activation | approx gelu |
| Normalization | rmsnorm |
Default experiment recipe
The included configuration uses lion with a polynomial schedule. These are starting values in the script, not evidence of a completed run. For a meaningful evaluation, train all baselines with the same data exposure, tuning budget, and random seeds.
Quick check
python main.py --help
Inspect the script's __main__ block for its generated smoke-test example. Because this is a custom implementation, generic automatic loading APIs require an explicit adapter before use.
Evaluation guidance
A useful first evaluation would use a task-specific held-out set, report the task metric across at least three seeds, and include a matched-capacity baseline. Keep training logs and environment versions with any published result.
Limitations
The initialization checkpoint has not been trained or audited for robustness, fairness, or domain transfer. The implementation should be treated as an experimental starting point. Results from a future trained checkpoint must be documented separately from the defaults shipped here.
Files
main.py— primary artifactREADME.md— this documentationconfig.json— architecture configurationtraining_args.json— default experiment settingsmodel.safetensors— initialization checkpoint
License
Released under bsd-3-clause. Review the source-data terms separately when this repository is used with external datasets.
Configuration
- Architecture
- CustomResearchModel
- Context length (tokens)
- 256
- Layers
- 6
- Hidden size
- 128
- Feed-forward size
- 256
- Attention heads
- 2
- Model type
- perceiver
Identity and Version
- Repository
- albertojimenez/course-generation
- Publisher
- Alberto G. Jimenez
- Task
- Not stated by the source
- Modality
- Other
- Library
- Not stated by the source
- Parameters
- 16,576 parameters
- Languages
- Not stated by the source
- Revision
- aeb3ba2b1500a6dba4d2b3686de4fbb1eb6e46bc
- First published
- 2026-09-18
- Last updated
- 2026-09-18
Files and Weights
6 files, 73.9 KB in total. The weights are 1 file totalling 66.8 KB in safetensors.
Every file
| File | Type | Size | SHA-256 |
|---|---|---|---|
| model.safetensors | Weights | 66.8 KB | 4ed61401de93 |
| config.json | Configuration | 443 B | — |
| main.py | Configuration | 2.5 KB | — |
| training_args.json | Configuration | 190 B | — |
| README.md | Documentation | 2.5 KB | — |
| .gitattributes | Repository | 1.5 KB | — |
License and Download
- License
- bsd-3-clause
- Access
- Open weights, no gate
- Download size
- 66.8 KB
Released by Alberto G. Jimenez through its official repository on Hugging Face. Read the license.
Memory Requirements
| Precision | Weights in memory |
|---|---|
| As published | 66.8 KB |
| 16-bit | 0.0 GB |
| 8-bit | 0.0 GB |
| 4-bit | 0.0 GB |
Weights only, from the published parameter count; the key-value cache and runtime add to this.
Questions About course-generation
How much GPU memory does course-generation need?
About 0 GB at 16-bit and 0 GB at 4-bit: the weights (16,576 parameters) plus a working margin. A long context needs more.
What is the cheapest GPU to run course-generation on?
At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.
Can I use course-generation commercially?
Yes. course-generation is released under BSD 3-Clause License. The BSD 3-Clause License is permissive. It permits commercial use and redistribution with the copyright notice, and forbids using the authors' names to endorse derived products without permission.
What is course-generation's context length?
256 tokens, from the maximum position embeddings in its published configuration.