Huggingface.js documentation
Interfaz: CommitEditFile
Interfaz: CommitEditFile
Edit an existing file by replacing byte ranges of its original content.
Cuando originalContent es un XetBlob (tal como lo devuelve downloadFile para
archivos respaldados por xet), las partes del archivo que no se han modificado no se descargan ni se vuelven a dividir en fragmentos:
el servidor CAS proporciona ventanas de edición alineadas con fragmentos y datos parciales de merkle
(GET /v2/file-chunk-hashes), por lo que solo se obtienen, se vuelven a dividir en fragmentos y se calcula el hash de las regiones modificadas (junto con su vecindad en los límites de fragmento).
- Para los buckets (sin sha256 involucrado), esto significa que las ediciones y las adiciones requieren no descargar en absoluto los datos que no han cambiado.
- Para modelos/conjuntos de datos/espacios, los datos sin cambios aún se transmiten una vez para calcular el sha256 del nuevo archivo (requerido por el protocolo LFS), en lugar de dos veces (sha256 + segmentación).
Con cualquier otro Blob como originalContent, todo el contenido se vuelve a dividir en fragmentos localmente y los fragmentos sin cambios se deduplican contra el remoto (se omite la carga, pero el contenido se lee por completo).
Propiedades
ediciones
• edits: { content: Blob ; end: number ; start: number }[]
Definido en
packages/hub/src/lib/commit.ts:76
operación
• operación: "edit"
Definido en
packages/hub/src/lib/commit.ts:72
originalContent
• originalContent: Blob
Más adelante, será ContentSource. Por ahora, es más sencillo manejar solo blobs
Definido en
packages/hub/src/lib/commit.ts:75
path
• path: string
Definido en
packages/hub/src/lib/commit.ts:73
Update on GitHub