Huggingface.js documentation
Interface : CommitEditFile
Interface : CommitEditFile
Modifier un fichier existant en remplaçant des plages d'octets de son contenu d'origine.
Lorsque originalContent est un XetBlob (comme retourné par downloadFile pour les fichiers gérés par xet), les parties inchangées du fichier ne sont ni téléchargées ni re-morcelées : le serveur CAS fournit des fenêtres d’édition alignées sur les blocs et des données merkle partielles (GET /v2/file-chunk-hashes), de sorte que seules les régions modifiées (ainsi que leur voisinage aux limites de blocs) sont récupérées, re-morcelées et hachées.
- Pour les buckets (sans sha256), cela signifie que les modifications et les ajouts ne nécessitent aucun téléchargement des données inchangées.
- Pour les modèles/datasets/spaces, les données inchangées sont toujours diffusées une seule fois pour calculer le sha256 du nouveau fichier (exigé par le protocole LFS), au lieu de deux fois (sha256 + découpage).
Avec tout autre Blob en tant que originalContent, l’intégralité du contenu est re-chunké localement et les chunks inchangés sont dédupliqués par rapport à la version distante (le téléversement est ignoré, mais le contenu est lu en entier).
Propriétés
modifications
• modifications : { content : Blob ; end : number ; start : number }[]
Défini dans
packages/hub/src/lib/commit.ts:77
opération
• opération : "edit"
Défini dans
packages/hub/src/lib/commit.ts:73
originalContent
• originalContent : Blob
Plus tard, ce sera ContentSource. Pour l'instant, il est plus simple de gérer uniquement les blobs.
Défini dans
packages/hub/src/lib/commit.ts:76
path
• path : string
Défini dans
packages/hub/src/lib/commit.ts:74
Update on GitHub