Huggingface.js documentation

Интерфейс: CommitEditFile

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Интерфейс: CommitEditFile

Редактируйте существующий файл, заменяя диапазоны байтов его исходного содержимого.

Если originalContent является XetBlob (как возвращает downloadFile для файлов, поддерживаемых xet), неизменённые части файла не скачиваются и не переупаковываются в чанки: сервер CAS предоставляет окна редактирования, выровненные по чанкам, и частичные данные меркла (GET /v2/file-chunk-hashes), поэтому загружаются, переупаковываются в чанки и хешируются только изменённые области (а также их окрестности на границах чанков).

  • Для бакетов (без использования sha256) это означает, что при редактировании и добавлении данных не требуется вообще загружать неизменённые данные.
  • Для моделей/датасетов/spaces неизменённые данные по-прежнему стримятся один раз для вычисления sha256 нового файла (это требуется протоколом LFS), а не дважды (sha256 + чанкинг).

Если в качестве originalContent используется любой другой Blob, всё содержимое повторно разбивается на блоки локально, а неизменённые блоки дедуплицируются по сравнению с удалённым хранилищем (загрузка пропускается, но содержимое читается полностью).

Свойства

изменения

• изменения: { content: Blob ; end: number ; start: number }[]

Определено в

packages/hub/src/lib/commit.ts:76


операция

• операция: "edit"

Определено в

packages/hub/src/lib/commit.ts:72


originalContent

• originalContent: Blob

Позже это будет ContentSource. Пока проще просто обрабатывать блобы

Определено в

packages/hub/src/lib/commit.ts:75


path

• path: string

Определено в

packages/hub/src/lib/commit.ts:73

Update on GitHub