Oris Notes

Short technical notes on Oris models, architectures and training runs.

Notes

Vyuhu 1.0

The Vyuhu architecture has completed its initial architecture-validation stage. The current design is stable enough to move from architecture experiments to a full training run.

Development now focuses on Vyuhu 1.0, a larger generation of the architecture built from the lessons learned with OrisTeam/Vyuhu-280M-Base-1704m ↗ .

Scope of this note. This is a development note, not a paper or an ablation study. Several changes are described briefly on purpose. The current run is meant to test the combined Vyuhu 1.0 recipe, not to isolate every component independently.
Vyuhu 1.0 snapshot
1.041B
training tokens seen
Old generation reference
1.704B
Vyuhu 280M checkpoint used in the sample comparison
Old run final archive
3.012B
later 280M architecture-validation checkpoint

Architecture

Property Vyuhu 280M Vyuhu 1.0
Parameters282.68M~493M
Hidden size11521280
Context10241536
Q / KV heads18 / 620 / 4
Head dimension6464
FFN35843840
GQA anchors46
Elastic stages35
Elastic blocks1217
Compute paths43
Engram memory2 / 3-gram
MTPt+2 training objective

Compute paths

Profile Schedule Active blocks
HIGH[2, 4, 5, 4, 2]23
MEDIUM[1, 2, 3, 2, 1]15
LOW[0, 1, 1, 1, 0]9

The new generation keeps deterministic compute selection while increasing global attention depth and adding lightweight n-gram memory and multi-token prediction during training.

Frozen eval progression

A fixed 10M-token evaluation sample is reused across checkpoints. The important part is not only that all paths improve, but that after the early catch-up phase they continue to fall in a remarkably similar way.

Step HIGH MEDIUM LOW
10004.69234.92075.6081
15004.15474.22834.4372
20003.93313.98004.0886
25003.81153.84223.9300
30003.71983.74583.8220
35003.64153.66003.7384
40003.58033.60133.6675
45003.52553.54623.6127
50003.47853.49313.5710
55003.46753.47833.5403
60003.41993.43403.5122
65003.38073.39153.4657
70003.35353.36293.4334
80003.32173.33213.4044
90003.26543.27703.3469
100003.23513.24613.3190
105003.22153.23253.3090
From step 6500 to ~10500 the three paths improve by almost the same absolute amount. That is different from the early phase, where LOW has to catch up rapidly. At this point there is still no obvious capacity wall: the paths are separated, but they are still moving downward together.

Protocol: frozen 10M-token sample · identical tokenized data at every checkpoint · selected checkpoint evaluation.

Training exposure

The current qualitative comparison is intentionally early for Vyuhu 1.0. The 1.0 snapshot has seen about 1.041B tokens, while the old 280M checkpoint used for the generation examples had seen about 1.704B. The archived 280M run later continued to about 3.012B tokens.

Vyuhu 1.0 snapshot
~2.1
tokens / stored parameter: 1.041B / ~493M
Old tested checkpoint
~6.0
tokens / stored parameter: 1.704B / 282.68M
Old final archive
~10.7
tokens / stored parameter: 3.012B / 282.68M
These ratios are only rough orientation. Vyuhu 1.0 is a shared supernetwork: HIGH, MEDIUM and LOW do not activate the same parameter set, and shared blocks receive updates from more than one path. A better accounting would measure active parameter-token exposure per block or per path. The simple stored-parameter ratio is shown only to make one point clear: the current 1.0 snapshot is still much earlier in training exposure than the old 280M run.

That is why the generation comparison below should not be read as “1.0 already wins”. The useful observation is narrower: at an earlier training stage, the new run already shows a different failure profile — especially in how well even LOW preserves Polish syntax, document form and local continuity.

Dataset changes

The dataset change is real, but it is not a completely different pipeline. Vyuhu 1.0 still comes from the same Oris-style Polish filtering idea used in the older run: separate very clean text from usable text, keep the strongest Polish sources, and mix them deliberately.

Component Old Vyuhu 280M recipe Vyuhu 1.0 direction
CLEAN 50% still the main high-quality Polish stream
KEEP 25% still a major secondary stream
Wikipedia 10% retained, with the balance changed
SPLIT 10% removed from the current 1.0 recipe
Other 5% small specialist Polish sources remain
Wikipedia Extended added as a small knowledge-focused component
Dense Knowledge Binary added at a small share

Wikipedia Extended and Dense Knowledge Binary are not meant to dominate the mix. They are small Pure-Polish additions selected for text with a high density of coherent information: passages that stay mostly on one subject, contain multiple related facts, and express that knowledge in reasonably clean natural language.

The important distinction is therefore modest: the old run already used a similar CLEAN / KEEP / Wikipedia pipeline. Vyuhu 1.0 changes the proportions, drops SPLIT, and adds a small amount of more explicitly knowledge-dense Polish material. It would be misleading to attribute the generation change entirely to the dataset.

Engram and MTP

Two additions in Vyuhu 1.0 sound more complicated than they are. The short version: Engram gives the model a cheap learned memory for recurring local token patterns; MTP adds one extra training target.

Engram: small hashed memory beside the main model

Engram does not replace attention and it is not an external retrieval system. The normal token stream still goes through the same anchors and elastic blocks. Engram simply builds an additional vector from the recent local token history and lets selected anchor positions decide how much of that vector is useful.

n-gram orders2 and 3
hashes per order4
table size65,536 entries per hash table
embedding width64
injection rank192
injection pointsselected anchors, currently 0 and 2

For each position, the trainer canonicalizes token IDs and forms the recent 2-token and 3-token histories. Each history is sent through several independent hashes. Those hashes index small learned tables; their embeddings are combined into one memory representation. A low-rank gated injector then compares that memory with the current hidden state and adds only the amount the model learns to use.

conceptual flow
tokens
  ↓
canonical IDs
  ↓
recent 2-gram + 3-gram
  ↓
4 hashes for each order
  ↓
small learned embedding tables
  ↓
combined Engram vector
  ↓
gated low-rank injection
  ↓
selected Vyuhu anchors

The useful intuition is that common Polish local patterns do not always need to be reconstructed from scratch by the expensive path. Engram can learn a compact side representation for recurring morphology, short expressions and local lexical combinations. Because the injection starts effectively neutral, the main network can ignore it until training finds a useful signal.

MTP: one auxiliary future-token target

The ordinary next-token loss remains the main objective. During training, an auxiliary low-rank predictor also uses ht to predict xt+2; its loss is added with a smaller weight (0.25 in the current run). It is a training signal, not an extra generation step required at inference.

Oris does not currently plan separate Engram-on/off, MTP-on/off, old-data/new-data or full factorial runs. That would require several independent long trainings, while the current Vyuhu 1.0 run already takes roughly 2.5× more wall-clock time than the previous generation. The goal here is to document the combined system and its trajectory, not to claim a clean causal ablation for each component.

Generation comparison

The qualitative check used 8 prompts × 3 seeds × 6 compute paths = 144 sampled generations. All runs used the same sampling setup: temperature 0.8, top-k 40, top-p 0.95 and repetition penalty 1.15. These are examples from that batch, not benchmark scores.

Old Vyuhu paths: Vasudeva, Sankarshana and Aniruddha. Vyuhu 1.0 paths: HIGH, MEDIUM and LOW. The old text examples come from the 1.704B checkpoint; the new examples come from Vyuhu 1.0 at 1.041B tokens.

Old 280M · Sankarshana · seed 2026 · “Historia Polski”
Historia Polski od początku XX wieku do końca XIX wieku, a Polska od początku XXI wieku.
Należałoby zatem wyróżnić się z tłumu. Każdy zainteresowany może zostać zaproszony na konferencję historyczną [...]
Vyuhu 1.0 · HIGH · seed 1234 · “Historia Polski”
Historia Polski 1917–1918, cz. 2
1.2. Historia Polski 1918–1920, cz. 2
2.3. Historia Polski 1919–1920, cz. 3
3.4. Historia Polski 1918–1921, cz. 4 [...]
Old 280M · Aniruddha · seed 1234 · “Polska jest”
Polska jest, że jego "oznaczenie" i "animację moralna".
- A jednak to nie tylko jest to, jak by było. A może o tym powiedzieć nam wszyscy [...]
Vyuhu 1.0 · LOW · seed 1234 · “Rząd poinformował, że”
Rząd poinformował, że na terenie gminy Czerniaków w dniach od 6 do 14 czerwca nie będzie możliwości parkowania.
- W związku z tym, że w najbliższym czasie planujemy kolejne inwestycje. Będziemy starali się o to, by nie kolidowały z budową oświetlenia [...]
Old 280M · Vasudeva · seed 7777 · “Historia Polski”
Historia Polski
Po zakończeniu I wojny światowej, Polska odzyskała niepodległość. W 1954 roku na mocy traktatu wersalskiego zawartego w Warszawie [...]
Vyuhu 1.0 · LOW · seed 2026 · “Historia Polski”
Historia Polski 1935–1945. Do 1945 roku w Polsce niepodległość, Polska utraciła na rzecz Polski przez okupację sowiecką, a następnie wcielona do III Rzeszy.
Na mocy traktatu ryskiego z 1792 r. [...]
Old 280M · Sankarshana · seed 7777 · “Według najnowszych danych”
Według najnowszych danych, w piątek minister zdrowia w rządzie Francji Jean-Claude Juncker poinformował, że od początku pandemii COVID-19 wzrosła liczba przypadków koronawirusa [...]
Vyuhu 1.0 · HIGH · seed 1234 · “Według najnowszych danych”
Według najnowszych danych, z raportu "Branża przemysłowa i elektroenergetyka" wynika, że w Polsce na początku maja tego roku z usług telekomunikacyjnych skorzystało 1,5 mln gospodarstw domowych [...]
The interesting difference is not that Vyuhu 1.0 suddenly became factual. It did not. The new model still invents dates, mixes events and produces plausible but false details. What changes earlier is the shape of the continuation: the model more often knows whether it is writing a news item, an encyclopedic fragment, a report, a quotation or an administrative note, and it preserves that structure for longer.

What the current snapshot suggests

  • The strongest visible difference is structural. Vyuhu 1.0 more often preserves Polish syntax, local coherence and the expected form of the document, including on LOW.
  • This happens at an earlier training stage. The shown 1.0 snapshot is at ~1.041B tokens; the old comparison checkpoint is at 1.704B and the archived old run later reached ~3.012B.
  • Knowledge use is beginning to appear, but it is not reliable yet. The new model reaches for dates, institutions, named entities, reports and historical framing more readily, while still mixing or inventing facts.
  • That is not evidence for one specific component. Architecture, path layout, Engram, MTP and the data recipe changed together.
  • LOW is already qualitatively different from the old minimum path. It often looks like a lower-compute view of the same shared model rather than a path that has lost basic language competence.
  • HIGH and MEDIUM are still very close on frozen eval. Around step 10.5k the gap is only ~0.011 loss. Whether HIGH later benefits more from its extra capacity remains an open training question.
This note is intentionally descriptive. It records that the second-generation system is learning differently at the current checkpoint; it does not claim that the architecture, Engram, MTP or the new data mixture has individually caused the change.

Status

Full base-model training in progress. Current qualitative generation comparison uses Vyuhu 1.0 around 1.041B training tokens against Vyuhu 280M at about 1.704B. The archived 280M architecture-validation run later continued to about 3.012B tokens.