Ollama přestala opisovat otisky všech vrstev do konfigurace modelu
Ollama 9. srpna odstranila z hlavní vývojové větve pole rootfs.diff_ids, které do konfigurace modelu podruhé zapisovalo otisky všech vrstev. U modelů tvořených soubory pro jednotlivé tensory podle autora změny přesahovala tato nepoužívaná kopie 100 kB; samotné vrstvy i jejich otisky zůstávají v manifestu.
Ollama 9. srpna odstranila z hlavní vývojové větve pole rootfs.diff_ids. Do konfigurace modelu se v něm zapisovaly stejné otisky, jaké už obsahuje seznam vrstev v manifestu. Program podle autora změny tuto kopii nikde nečetl.
Úprava je malá, ale ukazuje, jak se formát původně určený pro kontejnery přizpůsobuje modelům umělé inteligence. Váhy mohou mít desítky gigabajtů, zatímco zde se šetří kilobajty metadat. Důvodem není nedostatek místa pro jeden soubor, nýbrž počet položek: u modelů tvořených soubory pro jednotlivé tensory narostla kopie seznamu podle popisu commitu přes 100 kB.

Manifest už otisky všech vrstev má
Commit projektu Ollama mění dvě části zápisu modelu. Z datové struktury konfigurace mizí objekt rootfs a funkce, která konfiguraci vytváří, už nedostává seznam vrstev. Před změnou procházela každou vrstvu a její otisk přidala do pole diff_ids. Po změně uloží pouze vlastnosti modelu, například architekturu, formát nebo jeho schopnosti.
Vrstvy se neztrácejí. Manifest si dál drží seřazený seznam jejich popisů, velikostí a otisků. Právě otisk celého manifestu podle autora commitu určuje identitu modelu, takže manifest už zahrnuje vazbu na každou vrstvu. Odstraněné pole stejnou informaci pouze opakovalo uvnitř dalšího objektu.
Změnu schválil jiný člen projektu a pull request číslo 17619 se sloučil 9. srpna. Součástí jsou upravené testy vytváření a kopírování modelů. Jde však o stav hlavní větve zdrojového kódu. Z commitu ani pull requestu neplyne, že už je úprava součástí konkrétní vydané verze Ollamy.
Sto kilobajtů vzniklo opakováním stejného seznamu
Každá položka obsahovala dlouhý kryptografický otisk vrstvy. U běžného modelu s několika velkými vrstvami jde o drobnost. Jinak to vypadá u modelu rozděleného na mnoho částí: seznam se prodlužuje s každou další vrstvou a celý se zapisoval podruhé.
Hranice přes 100 kB pochází z popisu změny od vývojáře Ollamy, není to naše nezávislé měření. Commit neuvádí konkrétní model ani přesnou velikost před a po úpravě. Nelze proto poctivě tvrdit, o kolik se zrychlí stažení nebo vytvoření modelu. Jisté je jen to, že nově vytvořená konfigurace už tento nepoužívaný seznam neobsahuje.
Testy zároveň dostaly nové očekávané otisky konfiguračních blobů. To je přirozený důsledek obsahového adresování: změní-li se JSON, změní se i jeho otisk. Neznamená to změnu vah. Ty zůstávají v samostatných vrstvách a manifest na ně dál odkazuje.
Ollama si z kontejnerů bere jen část pravidel
Specifikace OCI Image Configuration vyžaduje objekt rootfs a v něm seřazené pole diff_ids. U spustitelného kontejnerového obrazu popisuje kořenový souborový systém, který vznikne složením vrstev. Model Ollamy ale není běžný kontejner a jeho vrstvy nepředstavují souborový systém.
Zdrojový kód Ollamy přesto novou konfiguraci označuje typem application/vnd.docker.container.image.v1+json. Samotný manifest a vrstvy používají obsahové otisky podobně jako kontejnerové registry, význam uložených dat je však vlastní Ollamě. Odstranění rootfs tuto odlišnost zviditelňuje: program si ponechává způsob adresování a přenosu vrstev, ale zahazuje údaj, který by dával smysl při skládání kontejnerového souborového systému.
Specifikace manifestu OCI s takovým rozšířením počítá: neznámý typ konfigurace může implementace považovat za libovolná data. Ollama ovšem stále používá označení Dockeru, nikoli vlastní typ konfigurace. Pull request tuto volbu nemění ani nevysvětluje, a proto z něj nelze odvodit, jak by se k novému blobu měl chovat obecný kontejnerový nástroj.
Staré modely se samy nepřepisují
Commit upravuje cestu, která vytváří konfigurační blob při sestavení nebo kopírování modelu. Neobsahuje migraci už uložených manifestů a blobů. Starší model tedy nepřijde o svou dosavadní konfiguraci jen instalací budoucí verze. Nový, menší tvar vznikne až ve chvíli, kdy Ollama konfiguraci znovu vytvoří.
Pro člověka, který Ollamu používá doma, se nemění příkazy ani obsah vah. Praktický dopad se odehrává uvnitř úložiště modelů: nová konfigurace nenese druhý seznam stejných otisků. Důležitější než ušetřených 100 kB je odstranění údaje, který neměl čtenáře a mohl naznačovat význam kontejnerového souborového systému tam, kde žádný není.
Zdroje: commit Ollamy a související pull request z 9. srpna 2026; nezávislé srovnání poskytují dokumenty projektu Open Container Initiative pro konfiguraci obrazu a manifest.