Huggingface.js documentation
@huggingface/hub
@huggingface/hub
Classes
- HubApiError
- InvalidApiResponseFormatError
- JsonStreamParseError
- SafetensorParseError
- __internal_XetBlob
Interfaces
- AuthInfo
- CachedFileInfo
- CachedRepoInfo
- CachedRevisionInfo
- CommitCopyFile
- CommitData
- CommitDeletedEntry
- CommitEditFile
- CommitEditFileParams
- CommitFile
- CommitInfo
- CommitOutput
- CopyDestination
- CopyFilesEntry
- CopyProgressEvent
- CopySource
- Identifiants
- DatasetEntry
- FileDownloadInfoOutput
- HFCacheInfo
- JobVolume
- LfsPathInfo
- ListFileEntry
- MlxQuantizationConfig
- ModelConfig
- ModelDerivedFields
- ModelEntry
- OAuthResult
- ParallelDownloadOptions
- PathInfo
- QuantizationConfig
- RangeEditCacheEntry
- RepoId
- SafetensorsIndexJson
- SafetensorsShardFileInfo
- SecurityFileStatus
- SpaceEntry
- SpaceResourceConfig
- SpaceResourceRequirement
- SpaceRuntime
- TensorInfo
- UserInfo
- WhoAmIApp
- WhoAmIOrg
- WhoAmIUser
- XetFileInfo
- XetReadToken
Alias de types
AccessToken
Ƭ AccessToken : string
En réalité hf_${string}, mais pour plus de commodité, en utilisant le type string
Défini dans
packages/hub/src/types/public.ts:28
AccessTokenRole
Ƭ AccessTokenRole : "admin" | "write" | "contributor" | "read"
Défini dans
packages/hub/src/types/public.ts:98
AuthType
Ƭ AuthType : "access_token" | "app_token" | "app_token_as_user"
Défini dans
packages/hub/src/types/public.ts:100
CommitOperation
Ƭ CommitOperation : CommitDeletedEntry | CommitFile | CommitEditFile | CommitCopyFile
Défini dans
packages/hub/src/lib/commit.ts:124
CommitParams
Ƭ CommitParams : { abortSignal? : AbortSignal ; branch? : string ; description? : string ; fetch? : typeof __type ; hubUrl? : string ; isPullRequest? : boolean ; maxFolderDepth? : number ; operations : CommitOperation[] ; parentCommit? : string ; rangeEditCache? : RangeEditCache ; repo : RepoDesignation ; title : string ; useWebWorkers? : boolean | { minSize? : number ; poolSize? : number } ; useXet? : boolean } & Partial<CredentialsParams>
Défini dans
packages/hub/src/lib/commit.ts:131
CommitProgressEvent
Ƭ CommitProgressEvent : { event : "phase" ; phase : "preuploading" | "uploadingLargeFiles" | "committing" } | { event : "fileProgress" ; path : string ; progress : number ; state : "hashing" | "uploading" | "error" }
Défini dans
packages/hub/src/lib/commit.ts:201
ContentSource
Ƭ ContentSource : Blob | URL
Défini dans
packages/hub/src/lib/commit.ts:45
Dtype
Ƭ Type de données : "F64" | "F32" | "C64" | "F16" | "F8_E4M3" | "F8_E4M3FNUZ" | "F8_E5M2" | "F8_E5M2FNUZ" | "F8_E8M0" | "E8M0" | "F6_E3M2" | "F6_E2M3" | "F4" | "FP4" | "BF16" | "I64" | "U64" | "I32" | "U32" | "I16" | "I8" | "U16" | "U8" | "UE8" | "BOOL"
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:291
JsonStreamEvent
Ƭ JsonStreamEvent : { type : "startObject" } | { type : "endObject" } | { type : "startArray" } | { type : "endArray" } | { key : string ; type : "key" } | { type : "value" ; value : string | number | boolean | null }
Parseur JSON minimal, sans dépendance et incrémental (style SAX).
JSON.parse nécessite de charger le document entier en mémoire deux fois (la chaîne source + l’arborescence d’objets résultante), ce qui le rend inutilisable pour des documents volumineux dont le contenu intéressant est minuscule — par exemple un model.safetensors.index.json d’un grand MoE, où les 60 Mo de weight_map ne servent qu’à indiquer les ~100 noms de fichiers de shards distincts.
Ce parseur émet à la place un flux d’événements à plat au fur et à mesure que les octets arrivent, ce qui permet au consommateur de ne conserver que ce qui l’intéresse et de laisser le reste être collecté par le ramasse-miettes. L’utilisation de la mémoire est bornée par la taille du plus grand jeton individuel (chaîne / nombre), et non par la taille du document.
L’implémentation est une machine à états résumable : tout jeton peut être scindé aux limites des blocs (y compris les séquences UTF-8 multi-octets et les échappements \uXXXX).
Rigueur : la grammaire acceptée est la RFC 8259 (identique à JSON.parse), à l’exception de quelques vérifications qui coûteraient cher pour un bénéfice limité ici — notamment les formes des nombres sont validées par Number() plutôt que par l’automate à états, si bien qu’un petit nombre d’entrées rejetées par JSON.parse sont acceptées.
Tout ce que JSON.parse accepte est accepté, avec des valeurs identiques.
Example
for await (const event of streamJson(blob.stream())) {
if (event.type === "key") { ... }
}Défini dans
packages/hub/src/utils/streamJson.ts:27
ModelAdditionalField
Ƭ ModelAdditionalField : Exclude<typeof MODEL_EXPANDABLE_KEYS[number], typeof MODEL_EXPAND_KEYS[number]> | keyof ModelDerivedFields
Défini dans
packages/hub/src/lib/list-models.ts:51
PipelineType
Ƭ PipelineType : keyof typeof PIPELINE_DATA
Défini dans
packages/tasks/dist/commonjs/pipelines.d.ts:380
RangeEditCache
Ƭ RangeEditCache : Map<string, RangeEditCacheEntry>
État en mémoire d’un fichier précédemment écrit via le chemin d’édition par plage, indexé par son hachage xet. Permet à un ajout ultérieur (ou à une édition du dernier terme du fichier) de sauter entièrement les appels d’API de reconstruction et de hachage des blocs de fichier : l’état partiel de l’arbre de Merkle et les hachages de vérification sont déjà connus.
Transmettez la même instance RangeEditCache aux appels successifs de commit qui ajoutent des données au même fichier afin d'éviter d'appeler les API de métadonnées CAS à chaque ajout.
Défini dans
packages/hub/src/utils/rangeEdit.ts:16
RepoDesignation
Ƭ Désignation du dépôt : RepoId | RepoFullName
Défini dans
packages/hub/src/types/public.ts:17
RepoFullName
Ƭ RepoFullName : string | `spaces/${string}` | `datasets/${string}` | `buckets/${string}` | `kernels/${string}`
Défini dans
packages/hub/src/types/public.ts:10
RepoType
Ƭ RepoType : "space" | "dataset" | "model" | "bucket" | "kernel"
Défini dans
packages/hub/src/types/public.ts:3
ResolveModelAdditionalFields
Ƭ ResolveModelAdditionalFields<T>: Pick<ApiModelInfo, T & keyof ApiModelInfo> & Pick<ModelDerivedFields, T & keyof ModelDerivedFields>
Paramètres de type
| Nom | Type |
|---|---|
T | hérite de ModelAdditionalField |
Défini dans
packages/hub/src/lib/list-models.ts:55
SafetensorsFileHeader
Ƭ SafetensorsFileHeader : Record<TensorName, TensorInfo> & { __metadata__? : { total_parameters? : string | number } & Record<string, string> }
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:324
SafetensorsParseFromRepo
Ƭ SafetensorsParseFromRepo : { filepaths : string[] ; header : SafetensorsFileHeader ; parameterCount? : Partial<Record<Dtype, number>> ; parameterTotal? : number ; sharded : false } | { filepaths : string[] ; headers : SafetensorsShardedHeaders ; index : SafetensorsIndexJson ; parameterCount? : Partial<Record<Dtype, number>> ; parameterTotal? : number ; sharded : true }
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:348
SafetensorsShardedHeaders
Ƭ SafetensorsShardedHeaders : Record<FileName, SafetensorsFileHeader>
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:346
SpaceHardwareFlavor
Ƭ SpaceHardwareFlavor : "cpu-basic" | "cpu-upgrade" | "cpu-performance" | "cpu-xl" | "sprx8" | "zero-a10g" | "inf2x6" | "t4-small" | "t4-medium" | "l4x1" | "l4x4" | "l40sx1" | "l40sx4" | "l40sx8" | "a10g-small" | "a10g-large" | "a10g-largex2" | "a10g-largex4" | "a100-large" | "a100x4" | "a100x8" | "h200" | "h200x2" | "h200x4" | "h200x8" | "rtx-pro-6000" | "rtx-pro-6000x2" | "rtx-pro-6000x4" | "rtx-pro-6000x8"
Défini dans
packages/hub/src/types/public.ts:53
SpaceSdk
Ƭ SpaceSdk : "streamlit" | "gradio" | "docker" | "static"
Défini dans
packages/hub/src/types/public.ts:84
SpaceStage
Ƭ SpaceStage : "NO_APP_FILE" | "CONFIG_ERROR" | "BUILDING" | "BUILD_ERROR" | "RUNNING" | "RUNNING_BUILDING" | "RUNTIME_ERROR" | "DELETING" | "PAUSED" | "SLEEPING"
Défini dans
packages/hub/src/types/public.ts:86
TensorName
Ƭ TensorName : string
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:290
WhoAmI
Ƭ WhoAmI : WhoAmIApp | WhoAmIOrg | WhoAmIUser
Défini dans
packages/hub/src/lib/who-am-i.ts:52
Variables
DATASET _ EXPANDABLE _ KEYS
• Const DATASET_EXPANDABLE_KEYS : en lecture seule ["author", "cardData", "citation", "createdAt", "disabled", "description", "downloads", "downloadsAllTime", "gated", "gitalyUid", "lastModified", "likes", "paperswithcode_id", "private", "sha", "tags"]
Défini dans
packages/hub/src/lib/list-datasets.ts:18
DATASET _ EXPAND _ KEYS
• Const DATASET_EXPAND_KEYS : en lecture seule ["private", "downloads", "gated", "likes", "lastModified"]
Défini dans
packages/hub/src/lib/list-datasets.ts:10
DEFAULT _ REVISION
• Const DEFAULT_REVISION : "main"
Défini dans
packages/hub/src/lib/snapshot-download.ts:13
DIFFUSERS _ SAFETENSORS _ FICHIER
• Const DIFFUSERS_SAFETENSORS_FILE : "diffusion_pytorch_model.safetensors"
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:21
DIFFUSERS _ SAFETENSORS _ INDEX _ FILE
• Const DIFFUSERS_SAFETENSORS_INDEX_FILE : "diffusion_pytorch_model.safetensors.index.json"
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:22
DIFFUSERS _ POIDS _ SOUSSOUS-DOSSIERS
• Const DIFFUSERS_WEIGHTS_SUBFOLDERS : en lecture seule ["transformer", "unet"]
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:23
HUB _ URL
• Const HUB_URL : "https://huggingface.co"
URL de base du Hugging Face Hub.
Défini dans
MODÈLE _ CHAMP _ DÉRIVÉ _ VERS _ CLÉ _ D'API
• Const MODEL_DERIVED_FIELD_TO_API_KEY : Record<keyof ModelDerivedFields, keyof ApiModelInfo>
Défini dans
packages/hub/src/lib/list-models.ts:47
MODEL _ EXPANDABLE _ KEYS
• Const MODEL_EXPANDABLE_KEYS : en lecture seule ["author", "cardData", "config", "createdAt", "disabled", "downloads", "downloadsAllTime", "gated", "gitalyUid", "inferenceProviderMapping", "lastModified", "library_name", "likes", "model-index", "pipeline_tag", "private", "safetensors", "sha", "spaces", "tags", "transformersInfo"]
Défini dans
packages/hub/src/lib/list-models.ts:19
MODEL _ EXPAND _ KEYS
• Const MODEL_EXPAND_KEYS : en lecture seule ["pipeline_tag", "private", "gated", "downloads", "likes", "lastModified"]
Défini dans
packages/hub/src/lib/list-models.ts:10
REGEX _ COMMIT _ HASH
• Const REGEX_COMMIT_HASH : RegExp
Défini dans
packages/hub/src/lib/download-file-to-cache-dir.ts:16
REPO _ ID _ SEPARATOR
• Const REPO_ID_SEPARATOR : string = "--"
Défini dans
packages/hub/src/lib/cache-management.ts:25
RE _ SAFETENSORS _ FILE
• Const RE_SAFETENSORS_FILE : RegExp
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:26
RE _ SAFETENSORS _ INDEX _ FILE
• Const RE_SAFETENSORS_INDEX_FILE : RegExp
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:27
RE _ SAFETENSORS _ SHARD _ FILE
• Const RE_SAFETENSORS_SHARD_FILE : RegExp
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:28
SAFETENSORS _ FICHIER
• Const SAFETENSORS_FILE : "model.safetensors"
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:17
SAFETENSORS _ INDEX _ FILE
• Const SAFETENSORS_INDEX_FILE : "model.safetensors.index.json"
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:18
SPACE _ EXPANDABLE _ KEYS
• Const SPACE_EXPANDABLE_KEYS : en lecture seule ["author", "cardData", "datasets", "disabled", "gitalyUid", "lastModified", "createdAt", "likes", "private", "runtime", "sdk", "sha", "subdomain", "tags", "models"]
Défini dans
packages/hub/src/lib/list-spaces.ts:16
SPACE _ EXPAND _ KEYS
• Const SPACE_EXPAND_KEYS : en lecture seule ["sdk", "likes", "private", "lastModified"]
Défini dans
packages/hub/src/lib/list-spaces.ts:10
Fonctions
_ _ interne _ sha256
▸ __internal_sha256(buffer, opts?) : AsyncGenerator<number, string>
Paramètres
| Nom | Type |
|---|---|
buffer | Blob |
opts? | Object |
opts.abortSignal? | AbortSignal |
opts.useWebWorker? | boolean | { minSize?: number ; poolSize?: number } |
Retourne
AsyncGenerator<number, string>
sha encodé en hexadécimal
Yields
progression (0-1)
Défini dans
packages/hub/src/utils/sha256.ts:72
assertSafeShardFilename
▸ assertSafeShardFilename(filename) : void
Les noms de fichiers de weight_map proviennent d’un fichier du dépôt, ils sont donc contrôlés par l’attaquant : ils doivent rester des chemins relatifs à l’intérieur du répertoire de l’index.
Une vérification littérale de includes("..") ne suffit pas, car l’URL dans laquelle le nom de fichier finit est analysée par l’analyseur d’URL WHATWG après la vérification, et cet analyseur décode en pourcentage les segments de points : %2e%2e (ou .%2e, %2E%2E, …) est un segment .. pour lui, ce qui permet de sortir du dépôt — et avec un identifiant joint, la requête aboutit autorisée sur l’URL resolve d’un autre dépôt.
Décodez donc avant de valider (de manière répétée, pour détecter %252e%252e), et rejetez tout ce qui n’est pas un chemin relatif simple.
Paramètres
| Nom | Type |
|---|---|
filename | string |
Retourne
void
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:511
cancelJob
▸ cancelJob(params) : Promise<ApiJob>
Annuler un job.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
Promise<ApiJob>
Défini dans
packages/hub/src/lib/jobs/cancel-job.ts:11
checkRepoAccess
▸ checkRepoAccess(params) : Promise<void>
Vérifier si nous avons un accès en lecture à un dépôt.
Lever une erreur HubApiError si nous n'avons pas accès. HubApiError.statusCode sera 401, 403 ou 404.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation } & Partial<CredentialsParams> |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/check-repo-access.ts:14
commit
▸ commit(params) : Promise<CommitOutput | undefined>
Paramètres
| Nom | Type |
|---|---|
params | CommitParams |
Retourne
Promise<CommitOutput | undefined>
undefined pour les téléversements de buckets, CommitOutput sinon
Défini dans
packages/hub/src/lib/commit.ts:1032
commitIter
▸ commitIter(params) : AsyncGenerator<CommitProgressEvent, CommitOutput | undefined>
Fonction interne pour le moment, utilisée par commit.
Peut être exposé ultérieurement pour offrir des informations de progression affinées
CommitOutput n'est pas présent pour les commits de bucket
Paramètres
| Nom | Type |
|---|---|
params | CommitParams |
Retourne
AsyncGenerator<CommitProgressEvent, CommitOutput | undefined>
Défini dans
packages/hub/src/lib/commit.ts:220
commitIterBucket
▸ commitIterBucket(params) : AsyncGenerator<CommitProgressEvent>
Paramètres
| Nom | Type |
|---|---|
params | CommitParams |
Retourne
AsyncGenerator<CommitProgressEvent>
Défini dans
packages/hub/src/lib/commit.ts:776
computeNumOfParamsByDtypeSingleFile
▸ computeNumOfParamsByDtypeSingleFile(header, quantConfig?, expertDtype?) : Partial<Record<Dtype, number>>
Somme les paramètres par dtype pour l’en-tête d’un fichier, en appliquant les facteurs d’empaquetage de quantification et en ignorant les tenseurs de gestion.
Paramètres
| Nom | Type |
|---|---|
header | SafetensorsFileHeader |
quantConfig? | QuantizationConfig |
expertDtype? | string |
Retourne
Partial<Record<Dtype, number>>
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:1379
copyFile
▸ copyFile(params) : Promise<undefined>
Copier un fichier unique d'un dépôt/bac source vers le bac de destination.
La copie est effectuée côté serveur (aucun transfert de données) lorsque le fichier source est géré par xet.
Pour les petits fichiers de dépôt non-xet (par exemple config.json), le fichier est téléchargé puis
réenvoyé vers le bucket de destination dans le même commit.
Les fichiers pointeur LFS qui n'ont pas été migrés vers xet sont rejetés d'emblée (sinon, il faudrait télécharger le blob LFS complet).
Paramètres
| Nom | Type |
|---|---|
params | { destination : CopyDestination ; source : CopySource } & SharedParams |
Retourne
Promise<undefined>
Example
await copyFile({
source: {
repo: { type: "model", name: "username/my-model" },
path: "model.safetensors",
},
destination: {
repo: { type: "bucket", name: "username/my-bucket" },
path: "models/my-model/model.safetensors",
},
accessToken: "hf_...",
});Défini dans
packages/hub/src/lib/copy-files.ts:111
copyFileIter
▸ copyFileIter(params) : AsyncGenerator<CopyProgressEvent, undefined>
Variante à itérateur asynchrone de copyFile qui produit des CopyProgressEvent pendant le téléchargement des fichiers sources non-xet (les fichiers gérés par xet sont copiés côté serveur et n’émettent pas d’événements). Consultez copyFile pour les sémantiques.
Paramètres
| Nom | Type |
|---|---|
params | { destination : CopyDestination ; source : CopySource } & SharedParams |
Retourne
AsyncGenerator<CopyProgressEvent, undefined>
Example
for await (const event of copyFileIter({ source, destination, accessToken })) {
console.log(`downloaded ${event.path} (${event.downloaded}/${event.total})`);
}Défini dans
packages/hub/src/lib/copy-files.ts:144
copyFiles
▸ copyFiles(params) : Promise<undefined>
Copier plusieurs fichiers (éventuellement issus de dépôts/buckets sources différents) vers le bucket de destination dans un seul commit.
Pour les fichiers source pris en charge par xet, la copie est effectuée côté serveur, sans transfert de données. Pour les fichiers source non-xet (généralement de petits fichiers de dépôt stockés dans git), le fichier est téléchargé puis réenvoyé dans le cadre du même commit.
Les fichiers pointeur LFS qui n'ont pas été migrés vers xet sont rejetés d'emblée.
Paramètres
| Nom | Type |
|---|---|
params | { destination : BucketDesignation ; files : CopyFilesEntry[] } & SharedParams |
Retourne
Promise<undefined>
Example
await copyFiles({
destination: { type: "bucket", name: "username/my-bucket" },
files: [
{
source: {
repo: { type: "bucket", name: "username/other-bucket" },
path: "data.bin",
},
destinationPath: "data.bin",
},
{
source: {
repo: { type: "model", name: "username/my-model" },
path: "model.safetensors",
},
destinationPath: "models/my-model/model.safetensors",
},
],
accessToken: "hf_...",
});Défini dans
packages/hub/src/lib/copy-files.ts:199
copyFilesIter
▸ copyFilesIter(params) : AsyncGenerator<CopyProgressEvent, undefined>
Variante à itérateur asynchrone de copyFiles qui produit des CopyProgressEvent pendant le téléchargement des fichiers sources non-xet (les fichiers gérés par xet sont copiés côté serveur et n’émettent pas d’événements). Consultez copyFiles pour la sémantique.
Paramètres
| Nom | Type |
|---|---|
params | { destination : BucketDesignation ; files : CopyFilesEntry[] } & SharedParams |
Retourne
AsyncGenerator<CopyProgressEvent, undefined>
Défini dans
packages/hub/src/lib/copy-files.ts:219
copyFolder
▸ copyFolder(params) : Promise<undefined>
Copier un dossier (récursivement) d'un dépôt/bac source vers le bac de destination dans un seul commit.
Les chemins par fichier sont résolus par rapport à CopySource.path ; le dossier source lui-même n’est pas conservé dans la destination à moins que CopyDestination.path ne le conserve.
Paramètres
| Nom | Type |
|---|---|
params | { destination: Omit<CopyDestination, "path"> & { path?: string } ; source: Omit<CopySource, "path"> & { path?: string } } & SharedParams |
Retourne
Promise<undefined>
Example
// Copy an entire dataset under "datasets/my-dataset/" in the bucket
await copyFolder({
source: { repo: { type: "dataset", name: "username/my-dataset" } },
destination: {
repo: { type: "bucket", name: "username/my-bucket" },
path: "datasets/my-dataset/",
},
accessToken: "hf_...",
});
// Copy a subfolder
await copyFolder({
source: {
repo: { type: "bucket", name: "username/src-bucket" },
path: "models/",
},
destination: {
repo: { type: "bucket", name: "username/dst-bucket" },
path: "backup/",
},
accessToken: "hf_...",
});Défini dans
packages/hub/src/lib/copy-files.ts:277
copyFolderIter
▸ copyFolderIter(params) : AsyncGenerator<CopyProgressEvent, undefined>
Variante à itérateur asynchrone de copyFolder qui produit des CopyProgressEvent pendant le téléchargement des fichiers sources non-xet (les fichiers gérés par xet sont copiés côté serveur et n’émettent pas d’événements). Consultez copyFolder pour les sémantiques.
Paramètres
| Nom | Type |
|---|---|
params | { destination: Omit<CopyDestination, "path"> & { path?: string } ; source: Omit<CopySource, "path"> & { path?: string } } & SharedParams |
Retourne
AsyncGenerator<CopyProgressEvent, undefined>
Défini dans
packages/hub/src/lib/copy-files.ts:297
countCommits
▸ countCommits(params) : Promise<number>
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
Retourne
Promise<number>
Défini dans
packages/hub/src/lib/count-commits.ts:8
createBranch
▸ createBranch(params) : Promise<void>
Paramètres
| Nom | Type | Description |
|---|---|---|
params | Object | - |
params.accessToken? | string | - |
params.branch | string | Le nom de la branche à créer |
params.empty? | boolean | Utilisez ceci pour créer une branche vide, sans aucun commit. |
params.fetch? | (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> | Référence MDN |
params.hubUrl? | string | - |
params.overwrite? | boolean | Utilisez ceci pour écraser la branche si elle existe déjà. Si vous spécifiez uniquement overwrite sans revision/empty, et que la branche existe déjà, l’opération sera ignorée. |
params.repo | RepoDesignation | - |
params.revision? | string | Révision à partir de laquelle créer la branche. Par défaut, la branche par défaut est utilisée. Utilisez empty: true pour créer une branche vide. |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/create-branch.ts:7
createCollection
▸ createCollection(params) : Promise<{ slug : string }>
Paramètres
| Nom | Type |
|---|---|
params | { collection: ApiCreateCollectionPayload ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string } & Partial<CredentialsParams> |
Retourne
Promise<{ slug: string }>
Défini dans
packages/hub/src/lib/create-collection.ts:8
createRepo
▸ createRepo(params) : Promise<{ id : string ; repoUrl : string }>
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; files?: { content: ArrayBuffer | Blob ; path: string }[] ; hardware?: SpaceHardwareFlavor | undefined ; hubUrl?: string ; license?: string ; private?: boolean ; repo: RepoDesignation ; resourceGroupId?: string ; sdk?: SpaceSdk | undefined ; visibility?: "public" | "private" | "protected" } & CredentialsParams |
Retourne
Promise<{ id: string ; repoUrl: string }>
Défini dans
packages/hub/src/lib/create-repo.ts:10
createScheduledJob
▸ createScheduledJob(params) : Promise<ApiScheduledJob>
Créer un job planifié.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; namespace: string } & CreateScheduledJobOptions & CredentialsParams |
Retourne
Promise<ApiScheduledJob>
Défini dans
packages/hub/src/lib/jobs/create-scheduled-job.ts:12
datasetInfo
▸ datasetInfo<T>(params): Promise<DatasetEntry & Pick<ApiDatasetInfo, T>>
Paramètres de type
| Nom | Type |
|---|---|
T | extends "author" | "cardData" | "disabled" | "gitalyUid" | "createdAt" | "tags" | "paperswithcode_id" | "sha" | "citation" | "description" | "downloadsAllTime" = never |
Paramètres
| Nom | Type |
|---|---|
params | { additionalFields?: T[] ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; name: string ; revision?: string } & Partial<CredentialsParams> |
Retourne
Promise<DatasetEntry & Pick<ApiDatasetInfo, T>>
Défini dans
packages/hub/src/lib/dataset-info.ts:10
deleteBranch
▸ deleteBranch(params) : Promise<void>
Paramètres
| Nom | Type | Description |
|---|---|---|
params | Object | - |
params.accessToken? | string | - |
params.branch | string | Le nom de la branche à supprimer |
params.fetch? | (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> | Référence MDN |
params.hubUrl? | string | - |
params.repo | RepoDesignation | - |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/delete-branch.ts:7
deleteCollection
▸ deleteCollection(params) : Promise<void>
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; slug: string } & Partial<CredentialsParams> |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/delete-collection.ts:7
deleteFile
▸ deleteFile(params) : Promise<CommitOutput | undefined>
Paramètres
| Nom | Type |
|---|---|
params | { branch?: string ; commitDescription?: string ; commitTitle?: string ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; isPullRequest?: boolean ; parentCommit?: string ; path: string ; repo: RepoDesignation } & CredentialsParams |
Retourne
Promise<CommitOutput | undefined>
Défini dans
packages/hub/src/lib/delete-file.ts:5
deleteFiles
▸ deleteFiles(params) : Promise<CommitOutput | undefined>
Paramètres
| Nom | Type |
|---|---|
params | { branch?: string ; commitDescription?: string ; commitTitle?: string ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; isPullRequest?: boolean ; parentCommit?: string ; paths: string[] ; repo: RepoDesignation } & CredentialsParams |
Retourne
Promise<CommitOutput | undefined>
Défini dans
packages/hub/src/lib/delete-files.ts:5
deleteRepo
▸ deleteRepo(params) : Promise<void>
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation } & CredentialsParams |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/delete-repo.ts:8
deleteScheduledJob
▸ deleteScheduledJob(params) : Promise<void>
Supprimer un job planifié.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/jobs/delete-scheduled-job.ts:10
downloadFile
▸ downloadFile(params) : Promise<Blob | null>
Paramètres
| Nom | Type |
|---|---|
params | { downloadInfo?: FileDownloadInfoOutput ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; parallelDownloads?: boolean | ParallelDownloadOptions ; path: string ; raw?: boolean ; repo: RepoDesignation ; revision?: string ; xet?: boolean | { readToken: XetReadToken } } & Partial<CredentialsParams> |
Retourne
Promise<Blob | null>
null lorsque le fichier n'existe pas
Défini dans
packages/hub/src/lib/download-file.ts:13
downloadFileToCacheDir
▸ downloadFileToCacheDir(params) : Promise<string>
Télécharger un fichier donné s'il n'est pas déjà présent dans le cache local.
Paramètres
| Nom | Type |
|---|---|
params | { cacheDir?: string ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; path: string ; raw?: boolean ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
Retourne
Promise<string>
le lien symbolique vers l'objet blob
Défini dans
packages/hub/src/lib/download-file-to-cache-dir.ts:46
duplicateJob
▸ duplicateJob(params) : Promise<ApiJob>
Dupliquer un job (relancer avec la même spécification).
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
Promise<ApiJob>
Défini dans
packages/hub/src/lib/jobs/duplicate-job.ts:11
encodeShardFilename
▸ encodeShardFilename(filename) : string
Défense en profondeur : l’URL de téléchargement est construite par interpolation de chaînes, il convient donc d’encoder chaque segment de chemin du nom de fichier (déjà validé) plutôt que de supposer qu’il est sûr pour une URL.
Paramètres
| Nom | Type |
|---|---|
filename | string |
Retourne
string
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:570
fileDownloadInfo
▸ fileDownloadInfo(params) : Promise<FileDownloadInfoOutput | null>
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; noContentDisposition?: boolean ; path: string ; raw?: boolean ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
Retourne
Promise<FileDownloadInfoOutput | null>
null lorsque le fichier n'existe pas
Défini dans
packages/hub/src/lib/file-download-info.ts:28
fileExists
▸ fileExists(params) : Promise<boolean>
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; path: string ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
Retourne
Promise<boolean>
Défini dans
packages/hub/src/lib/file-exists.ts:8
getBlobStat
▸ getBlobStat(blobPath, blobStats) : Promise<Stats>
Paramètres
| Nom | Type |
|---|---|
blobPath | string |
blobStats | Map<string, Stats> |
Retourne
Promise<Stats>
Défini dans
packages/hub/src/lib/cache-management.ts:254
getHFHubCachePath
▸ getHFHubCachePath() : string
Retourne
string
Défini dans
packages/hub/src/lib/cache-management.ts:19
getJob
▸ getJob(params) : Promise<ApiJob>
Obtenir un travail spécifique par ID.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
Promise<ApiJob>
Défini dans
packages/hub/src/lib/jobs/get-job.ts:11
getQuantizationMultiplier
▸ getQuantizationMultiplier(tensorName, dtype, quantConfig?, expertDtype?, mlxQuantizedModules?) : number
Récupère le multiplicateur de paramètres pour un tenseur quantifié en fonction de la méthode de quantification.
Peut être fractionnaire — voir packingFactor.
Paramètres
| Nom | Type |
|---|---|
tensorName | string |
dtype | Dtype |
quantConfig? | QuantizationConfig |
expertDtype? | string |
mlxQuantizedModules? | ReadonlySet<string> |
Retourne
number
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:1259
getRepoFolderName
▸ getRepoFolderName(«destructured») : string
Paramètres
| Nom | Type |
|---|---|
«destructured» | RepoId |
Retourne
string
Défini dans
packages/hub/src/lib/cache-management.ts:27
getScheduledJob
▸ getScheduledJob(params) : Promise<ApiScheduledJob>
Obtenir un travail planifié spécifique par ID.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
Promise<ApiScheduledJob>
Défini dans
packages/hub/src/lib/jobs/get-scheduled-job.ts:11
globMatch
▸ globMatch(pattern, str) : boolean
Correspondance de glob sans RegExp : divise le motif sur * et vérifie que chaque segment littéral apparaît dans l’ordre dans str. Évite complètement l’utilisation de RegExp (aucun risque de ReDoS, aucune SyntaxError due à des motifs contrôlés par un attaquant dans config.json).
Paramètres
| Nom | Type |
|---|---|
pattern | string |
str | string |
Retourne
boolean
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:1153
isQuantizedTensor
▸ isQuantizedTensor(tensorName, quantConfig?, mlxQuantizedModules?) : boolean
Détermine si un tenseur est quantifié en fonction de la configuration de quantification et du nom du tenseur.
Le module transformers de Python utilise une simple correspondance de sous-chaînes pour modules_to_not_convert,
de sorte que des noms bruts comme "lm_head" doivent correspondre à "model.lm_head.weight". Lorsque le
motif contient un *, nous basculons sur une correspondance glob appropriée pour plus de flexibilité.
Paramètres
| Nom | Type |
|---|---|
tensorName | string |
quantConfig? | QuantizationConfig |
mlxQuantizedModules? | ReadonlySet<string> |
Retourne
boolean
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:1189
listCollections
▸ listCollections(params?) : AsyncGenerator<ApiCollectionInfo>
Paramètres
| Nom | Type |
|---|---|
params? | { search?: { owner?: string[] | undefined; item?: string[] | undefined; q?: string | undefined; } | undefined; sort?: “lastModified” | “trending” | “upvotes” | undefined; limit?: number | undefined; hubUrl?: string | undefined; fetch?: { …; } | undefined; } & Partial<…> |
Retourne
AsyncGenerator<ApiCollectionInfo>
Défini dans
packages/hub/src/lib/list-collections.ts:13
listCommits
▸ listCommits(params) : AsyncGenerator<CommitData>
Paramètres
| Nom | Type |
|---|---|
params | { batchSize?: number ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
Retourne
AsyncGenerator<CommitData>
Défini dans
packages/hub/src/lib/list-commits.ts:18
listDatasets
▸ listDatasets<T>(params?): AsyncGenerator<DatasetEntry & Pick<ApiDatasetInfo, T>>
Paramètres de type
| Nom | Type |
|---|---|
T | extends "author" | "cardData" | "disabled" | "gitalyUid" | "createdAt" | "tags" | "paperswithcode_id" | "sha" | "citation" | "description" | "downloadsAllTime" = never |
Paramètres
| Nom | Type |
|---|---|
params? | { search?: { query?: string | undefined; owner?: string | undefined; tags?: string[] | undefined; } | undefined; hubUrl?: string | undefined; additionalFields?: T[] | undefined; limit?: number | undefined; sort?: “id” | … 8 more … | undefined; fetch?: { …; } | undefined; } & Partial<…> |
Retourne
AsyncGenerator<DatasetEntry & Pick<ApiDatasetInfo, T>>
Défini dans
packages/hub/src/lib/list-datasets.ts:48
listFiles
▸ listFiles(params) : AsyncGenerator<ListFileEntry>
Liste les fichiers d'un dossier. Pour lister TOUS les fichiers du répertoire, appelez-le avec params.recursive défini sur true.
Paramètres
| Nom | Type |
|---|---|
params | { expand?: boolean ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; path?: string ; recursive?: boolean ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
Retourne
AsyncGenerator<ListFileEntry>
Défini dans
packages/hub/src/lib/list-files.ts:54
listJobHardware
▸ listJobHardware(params?) : Promise<ApiJobHardware[]>
Obtenez la liste du matériel disponible pour les jobs. Cette API est publique et ne nécessite pas d’authentification, mais l’authentification est facultative.
Paramètres
| Nom | Type |
|---|---|
params? | { hubUrl?: string | undefined; fetch?: { (input: RequestInfo | URL, init?: RequestInit | undefined): Promise<Response>; (input: string | … 1 more … | URL, init?: RequestInit | undefined): Promise<…>; } | undefined; } & Partial<…> |
Retourne
Promise<ApiJobHardware[]>
Défini dans
packages/hub/src/lib/jobs/list-job-hardware.ts:12
listJobs
▸ listJobs(params) : Promise<ApiJob[]>
Liste les tâches d'un espace de noms (utilisateur ou organisation).
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; namespace: string } & CredentialsParams |
Retourne
Promise<ApiJob[]>
Défini dans
packages/hub/src/lib/jobs/list-jobs.ts:11
listModels
▸ listModels<T>(params?): AsyncGenerator<ModelEntry & ResolveModelAdditionalFields<T>>
Paramètres de type
| Nom | Type |
|---|---|
T | extends ModelAdditionalField = never |
Paramètres
| Nom | Type |
|---|---|
params? | { search?: { query?: string | undefined; owner?: string | undefined; task?: “other” | “text-classification” | “token-classification” | “table-question-answering” | “question-answering” | … 52 autres … | undefined; tags?: string[] | undefined; inferenceProviders?: string[] | undefined; apps?: string[] | undefined; … |
Retourne
AsyncGenerator<ModelEntry & ResolveModelAdditionalFields<T>>
Défini dans
packages/hub/src/lib/list-models.ts:69
listScheduledJobs
▸ listScheduledJobs(params) : Promise<ApiScheduledJob[]>
Liste les tâches planifiées pour un espace de noms.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; namespace: string } & CredentialsParams |
Retourne
Promise<ApiScheduledJob[]>
Défini dans
packages/hub/src/lib/jobs/list-scheduled-jobs.ts:11
listSpaces
▸ listSpaces<T>(params?): AsyncGenerator<SpaceEntry & Pick<ApiSpaceInfo, T>>
Paramètres de type
| Nom | Type |
|---|---|
T | extends "models" | "datasets" | "author" | "cardData" | "disabled" | "gitalyUid" | "createdAt" | "tags" | "sha" | "subdomain" | "runtime" = never |
Paramètres
| Nom | Type |
|---|---|
params? | { search?: { query?: string | undefined; owner?: string | undefined; tags?: string[] | undefined; } | undefined; hubUrl?: string | undefined; fetch?: { (input: RequestInfo | URL, init?: RequestInit | undefined): Promise<…>; (input: string | … 1 more … | URL, init?: RequestInit | undefined): Promise<…>; } | u… |
Retourne
AsyncGenerator<SpaceEntry & Pick<ApiSpaceInfo, T>>
Défini dans
packages/hub/src/lib/list-spaces.ts:45
matchesCompressedTensorsTarget
▸ matchesCompressedTensorsTarget(target, moduleName) : boolean
Compare un nom de module avec une cible compressed-tensors.
Les cibles sont soit des noms de modules exacts, soit des noms de classes (par exemple "Linear", que nous ne pouvons pas résoudre à partir des noms de tenseurs et que nous ignorons donc), soit des expressions régulières Python préfixées par re:. Pour éviter d’évaluer des RegExp contrôlées par un attaquant depuis config.json (ReDoS, SyntaxError — voir globMatch), nous traduisons le sous-ensemble courant des expressions régulières (.* joker, ancres ^/$, échappements \.) en globMatch et considérons les cibles utilisant toute autre syntaxe d’expression régulière comme non correspondantes.
Paramètres
| Nom | Type |
|---|---|
target | string |
moduleName | string |
Retourne
boolean
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:1231
modelInfo
▸ modelInfo<T>(params) : Promise<ModelEntry & ResolveModelAdditionalFields<T>>
Paramètres de type
| Nom | Type |
|---|---|
T | extends ModelAdditionalField = never |
Paramètres
| Nom | Type |
|---|---|
params | { additionalFields?: T[] ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; name: string ; revision?: string } & Partial<CredentialsParams> |
Retourne
Promise<ModelEntry & ResolveModelAdditionalFields<T>>
Défini dans
packages/hub/src/lib/model-info.ts:17
oauthHandleRedirect
▸ oauthHandleRedirect(opts?) : Promise<OAuthResult>
À appeler après la redirection de l’authentificateur OAuth vers l’application.
Il existe également une fonction utilitaire oauthHandleRedirectIfPresent, qui appelle oauthHandleRedirect si l'URL contient un code oauth dans les paramètres de requête et renvoie false dans le cas contraire.
Paramètres
| Nom | Type | Description |
|---|---|---|
opts? | Object | - |
opts.codeVerifier? | string | codeVerifier généré par oauthLoginUrl Default ts localStorage.getItem("huggingface.co:oauth:code_verifier") |
opts.hubUrl? | string | L'URL du hub. Par défaut, HUB_URL. |
opts.nonce? | string | nonce généré par oauthLoginUrl Default ts localStorage.getItem("huggingface.co:oauth:nonce") |
opts.redirectedUrl? | string | L'URL à analyser. Default ts window.location.href |
Retourne
Promise<OAuthResult>
Défini dans
packages/hub/src/lib/oauth-handle-redirect.ts:123
oauthHandleRedirectIfPresent
▸ oauthHandleRedirectIfPresent(opts?) : Promise<OAuthResult | false>
À appeler après la redirection de l’authentificateur OAuth vers l’application.
Elle renvoie false si l'URL ne contient pas de code oauth dans les paramètres de requête, sinon elle appelle oauthHandleRedirect.
Selon votre application, vous préférerez peut-être appeler directement oauthHandleRedirect.
Paramètres
| Nom | Type | Description |
|---|---|---|
opts? | Object | - |
opts.codeVerifier? | string | codeVerifier généré par oauthLoginUrl Default ts localStorage.getItem("huggingface.co:oauth:code_verifier") |
opts.hubUrl? | string | L'URL du hub. Par défaut, HUB_URL. |
opts.nonce? | string | nonce généré par oauthLoginUrl Default ts localStorage.getItem("huggingface.co:oauth:nonce") |
opts.redirectedUrl? | string | L'URL à analyser. Default ts window.location.href |
Retourne
Promise<OAuthResult | false>
Défini dans
packages/hub/src/lib/oauth-handle-redirect.ts:293
oauthLoginUrl
▸ oauthLoginUrl(opts?) : Promise<string>
Utilisez « Sign in with Hub » pour authentifier un utilisateur et obtenir les informations utilisateur oauth / le jeton d’accès.
Retourne une URL de redirection. Une fois que l'utilisateur a été redirigé vers votre application, appelez oauthHandleRedirect pour obtenir les informations utilisateur oauth / le jeton d'accès.
Lorsqu'elle est appelée depuis un Space statique avec OAuth activé, elle charge la configuration depuis le Space ; sinon, vous devez au moins spécifier l'identifiant client de votre application OAuth.
Paramètres
| Nom | Type | Description |
|---|---|---|
opts? | Object | - |
opts.clientId? | string | Identifiant de client OAuth. Pour les Spaces statiques, vous pouvez omettre ce champ, il sera alors chargé depuis la configuration du Space, à condition que hf_oauth: true soit présent dans les métadonnées du README.md. Pour les autres Spaces, il est disponible côté backend dans la variable d’environnement OAUTH_CLIENT_ID, à condition que hf_oauth: true soit présent dans les métadonnées du README.md. Vous pouvez également créer une application développeur sur https://huggingface.co/settings/connected-applications et utiliser son identifiant de client. |
opts.hubUrl? | string | - |
opts.localStorage? | Object | Si fourni, sera rempli avec le vérificateur de code et le nonce utilisés pour le flux OAuth, au lieu d’utiliser localStorage. Lors de l’appel de oauthHandleRedirectIfPresent ou oauthHandleRedirect, vous devrez fournir les mêmes valeurs. |
opts.localStorage.codeVerifier? | string | - |
opts.localStorage.nonce? | string | - |
opts.redirectUrl? | string | URI de redirection, par défaut l’URL actuelle. Pour les Spaces, toute URL au sein de l’espace est autorisée. Pour les applications de développeur, vous pouvez ajouter n’importe quelle URL à la liste des URI de redirection autorisés sur https://huggingface.co/settings/connected-applications. |
opts.scopes? | string | OAuth scope, une liste de scopes séparés par des espaces. Pour les Spaces statiques, vous pouvez omettre ce champ et il sera chargé depuis la configuration du Space, à condition que hf_oauth: true soit présent dans les métadonnées du README.md. Pour les autres Spaces, il est disponible côté backend dans la variable d’environnement OAUTH_SCOPES, à condition que hf_oauth: true soit présent dans les métadonnées du README.md. La valeur par défaut est « openid profile ». Vous pouvez également créer une application développeur sur https://huggingface.co/settings/connected-applications et utiliser ses scopes. Consultez https://huggingface.co/docs/hub/oauth pour la liste des scopes disponibles. |
opts.state? | string | État à transmettre au fournisseur OAuth, qui sera renvoyé lors de l'appel à oauthLogin après la redirection. |
Retourne
Promise<string>
Example
import { oauthLoginUrl, oauthHandleRedirectIfPresent } from "@huggingface/hub";
const oauthResult = await oauthHandleRedirectIfPresent();
if (!oauthResult) {
// If the user is not logged in, redirect to the login page
window.location.href = await oauthLoginUrl();
}
// You can use oauthResult.accessToken, oauthResult.accessTokenExpiresAt and oauthResult.userInfo
console.log(oauthResult);(En théorie, cette fonction pourrait être utilisée pour authentifier un utilisateur auprès de tout fournisseur OAuth prenant en charge PKCE et OpenID Connect en modifiant hubUrl, mais elle n'est actuellement testée qu'avec le Hugging Face Hub.)
Défini dans
packages/hub/src/lib/oauth-login-url.ts:31
parseRepoType
▸ parseRepoType(type) : RepoType
Paramètres
| Nom | Type |
|---|---|
type | string |
Retourne
Défini dans
packages/hub/src/lib/cache-management.ts:264
parseSafetensorsMetadata
▸ parseSafetensorsMetadata(params) : Promise<SetRequired<SafetensorsParseFromRepo, "parameterCount">>
Analyser model.safetensors.index.json ou model.safetensors d’un modèle hébergé sur Hugging Face à l’aide de requêtes de plage intelligentes pour en extraire les métadonnées.
Paramètres
| Nom | Type |
|---|---|
params | { computeParametersCount : true ; fetch? : (input : RequestInfo | URL, init? : RequestInit) => Promise<Response>(input : string | Request | URL, init? : RequestInit) => Promise<Response> ; hubUrl? : string ; library? : string ; path? : string ; repo : RepoDesignation ; revision? : string ; useSafetensorsMetadataEndpoint? : boolean } & Partial<CredentialsParams> |
Retourne
Promise<SetRequired<SafetensorsParseFromRepo, "parameterCount">>
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:738
▸ parseSafetensorsMetadata(params) : Promise<SafetensorsParseFromRepo>
Paramètres
| Nom | Type |
|---|---|
params | { computeParametersCount?: boolean ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; library?: string ; path?: string ; repo: RepoDesignation ; revision?: string ; useSafetensorsMetadataEndpoint?: boolean } & Partial<CredentialsParams> |
Retourne
Promise<SafetensorsParseFromRepo>
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:775
parseSafetensorsShardFilename
▸ parseSafetensorsShardFilename(filename) : SafetensorsShardFileInfo | null
Paramètres
| Nom | Type |
|---|---|
filename | string |
Retourne
SafetensorsShardFileInfo | null
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:36
parseTotalParameters
▸ parseTotalParameters(value, computedTotal?) : number | undefined
Lit le raccourci total_parameters depuis les métadonnées d’en-tête/index. Il est auto-déclaré et le Hub l’affiche tel quel, en contournant la validation d’en-tête ci-dessus — il est donc plafonné au nombre calculé lorsque celui-ci est disponible (sans effet pour les fichiers bien formés, où les deux valeurs concordent).
Paramètres
| Nom | Type |
|---|---|
value | undefined | string | number |
computedTotal? | number |
Retourne
number | undefined
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:699
pathsInfo
▸ pathsInfo(params) : Promise<PathInfo & { lastCommit : CommitInfo ; securityFileStatus : SecurityFileStatus }[]>
Paramètres
| Nom | Type |
|---|---|
params | { expand : true ; fetch? : (input : RequestInfo | URL, init? : RequestInit) => Promise<Response>(input : string | Request | URL, init? : RequestInit) => Promise<Response> ; hubUrl? : string ; paths : string[] ; repo : RepoDesignation ; revision? : string } & Partial<CredentialsParams> |
Retourne
Promise<PathInfo & { lastCommit: CommitInfo ; securityFileStatus: SecurityFileStatus }[]>
Défini dans
packages/hub/src/lib/paths-info.ts:52
▸ pathsInfo(params) : Promise<PathInfo[]>
Paramètres
| Nom | Type |
|---|---|
params | { expand?: boolean ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; paths: string[] ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
Retourne
Promise<PathInfo[]>
Défini dans
packages/hub/src/lib/paths-info.ts:65
relativeUnderFolder
▸ relativeUnderFolder(filePath, folderPath) : string
Calcule le chemin de filePath relatif à folderPath. Utilisé pour mapper les chemins sources sous un dossier en cours de copie vers les chemins de destination sous le nouveau préfixe.
Paramètres
| Nom | Type |
|---|---|
filePath | string |
folderPath | string |
Retourne
string
Défini dans
packages/hub/src/lib/copy-files.ts:558
repoExists
▸ repoExists(params) : Promise<boolean>
Paramètres
| Nom | Type | Description |
|---|---|---|
params | Object | - |
params.accessToken? | string | - |
params.fetch? | (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> | Fonction de récupération personnalisée à utiliser à la place de la fonction par défaut, par exemple pour utiliser un proxy ou modifier les en-têtes. |
params.hubUrl? | string | - |
params.repo | RepoDesignation | - |
params.revision? | string | Identifiant de révision Git facultatif, qui peut être un nom de branche, un tag ou un hachage de commit. |
Retourne
Promise<boolean>
Défini dans
packages/hub/src/lib/repo-exists.ts:7
resumeScheduledJob
▸ resumeScheduledJob(params) : Promise<void>
Reprendre un job planifié.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/jobs/resume-scheduled-job.ts:10
runJob
▸ runJob(params) : Promise<ApiJob>
Lancer un nouveau job.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; namespace: string } & CreateJobOptions & CredentialsParams |
Retourne
Promise<ApiJob>
Défini dans
packages/hub/src/lib/jobs/run-job.ts:13
runScheduledJob
▸ runScheduledJob(params) : Promise<ApiJob | null>
Déclencher l'exécution immédiate d'un job planifié. Retourne le job déclenché, ou null si une autre instance est déjà en cours d'exécution.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
Promise<ApiJob | null>
Défini dans
packages/hub/src/lib/jobs/run-scheduled-job.ts:12
scanCacheDir
▸ scanCacheDir(cacheDir?) : Promise<HFCacheInfo>
Paramètres
| Nom | Type | Valeur par défaut |
|---|---|---|
cacheDir | undefined | string | undefined |
Retourne
Promise<HFCacheInfo>
Défini dans
packages/hub/src/lib/cache-management.ts:72
scanCachedRepo
▸ scanCachedRepo(repoPath) : Promise<CachedRepoInfo>
Paramètres
| Nom | Type |
|---|---|
repoPath | string |
Retourne
Promise<CachedRepoInfo>
Défini dans
packages/hub/src/lib/cache-management.ts:118
scanRefsDir
▸ scanRefsDir(refsPath, refsByHash) : Promise<void>
Paramètres
| Nom | Type |
|---|---|
refsPath | string |
refsByHash | Map<string, string[]> |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/cache-management.ts:210
scanSnapshotDir
▸ scanSnapshotDir(revisionPath, cachedFiles, blobStats) : Promise<void>
Paramètres
| Nom | Type |
|---|---|
revisionPath | string |
cachedFiles | CachedFileInfo[] |
blobStats | Map<string, Stats> |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/cache-management.ts:227
snapshotDownload
▸ snapshotDownload(params) : Promise<string>
Télécharge un dépôt entier à une révision donnée dans le répertoire de cache getHFHubCachePath. Vous pouvez lister tous les dépôts en cache à l'aide de scanCachedRepo
Paramètres
| Nom | Type |
|---|---|
params | { cacheDir?: string ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
Retourne
Promise<string>
Remarks
Elle utilise en interne downloadFileToCacheDir.
Défini dans
packages/hub/src/lib/snapshot-download.ts:20
spaceInfo
▸ spaceInfo<T>(params): Promise<SpaceEntry & Pick<ApiSpaceInfo, T>>
Paramètres de type
| Nom | Type |
|---|---|
T | extends "models" | "datasets" | "author" | "cardData" | "disabled" | "gitalyUid" | "createdAt" | "tags" | "sha" | "subdomain" | "runtime" = never |
Paramètres
| Nom | Type |
|---|---|
params | { additionalFields?: T[] ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; name: string ; revision?: string } & Partial<CredentialsParams> |
Retourne
Promise<SpaceEntry & Pick<ApiSpaceInfo, T>>
Défini dans
packages/hub/src/lib/space-info.ts:11
streamJobEvents
▸ streamJobEvents(params) : AsyncGenerator<string, void, unknown>
Utilisez les Server-Sent Events (SSE) pour diffuser les événements du job en continu. Retourne un itérable asynchrone de morceaux d'événements.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
AsyncGenerator<string, void, unknown>
Défini dans
packages/hub/src/lib/jobs/stream-job-events.ts:11
streamJobLogs
▸ streamJobLogs(params) : AsyncGenerator<{ message : string ; timestamp : Date }, void, unknown>
Stream les journaux du travail à l’aide de Server-Sent Events (SSE). Retourne un itérateur asynchrone de fragments de journaux.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
AsyncGenerator<{ message: string ; timestamp: Date }, void, unknown>
Défini dans
packages/hub/src/lib/jobs/stream-job-logs.ts:11
streamJobMetrics
▸ streamJobMetrics(params) : AsyncGenerator<string, void, unknown>
Utilisez les Server-Sent Events (SSE) pour diffuser les métriques du job en continu. Retourne un itérable asynchrone de morceaux de métriques.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
AsyncGenerator<string, void, unknown>
Défini dans
packages/hub/src/lib/jobs/stream-job-metrics.ts:11
streamJson
▸ streamJson(source, options?) : AsyncGenerator<JsonStreamEvent, void, undefined>
Paramètres
| Nom | Type | Description |
|---|---|---|
source | ReadableStream<Uint8Array<ArrayBufferLike>> | AsyncIterable<Uint8Array<ArrayBufferLike>, any, any> | - |
options? | Object | - |
options.maxDepth? | number | Maximum object/array nesting depth. Default ts 1_000 |
options.maxTokenLength? | number | Longueur maximale, en caractères, d'un jeton de chaîne / nombre unique. Default ts 16_000_000 |
Retourne
AsyncGenerator<JsonStreamEvent, void, undefined>
Défini dans
packages/hub/src/utils/streamJson.ts:123
suspendScheduledJob
▸ suspendScheduledJob(params) : Promise<void>
Suspendre (mettre en pause) un job planifié.
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
Retourne
Promise<void>
Défini dans
packages/hub/src/lib/jobs/suspend-scheduled-job.ts:10
uploadFile
▸ uploadFile(params) : Promise<CommitOutput | undefined>
Paramètres
| Nom | Type |
|---|---|
params | { abortSignal?: AbortSignal ; branch?: string ; commitDescription?: string ; commitTitle?: string ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; file: URL | CommitEditFileParams | File | { content: ContentSource ; path: string } ; hubUrl?: string ; isPullRequest?: boolean ; parentCommit?: string ; rangeEditCache?: RangeEditCache ; repo: RepoDesignation ; useWebWorkers?: boolean | { minSize?: number ; poolSize?: number } ; useXet?: boolean } & Partial<CredentialsParams> |
Retourne
Promise<CommitOutput | undefined>
Défini dans
packages/hub/src/lib/upload-file.ts:39
uploadFiles
▸ uploadFiles(params) : Promise<CommitOutput | undefined>
Paramètres
| Nom | Type |
|---|---|
params | { abortSignal?: AbortSignal ; branch?: string ; commitDescription?: string ; commitTitle?: string ; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; files: (URL | CommitEditFileParams | File | { content: ContentSource ; path: string })[] ; hubUrl?: string ; isPullRequest?: boolean ; maxFolderDepth?: number ; parentCommit?: string ; rangeEditCache?: RangeEditCache ; repo: RepoDesignation ; useWebWorkers?: boolean | { minSize?: number ; poolSize?: number } ; useXet?: boolean } & Partial<CredentialsParams> |
Retourne
Promise<CommitOutput | undefined>
Défini dans
packages/hub/src/lib/upload-files.ts:6
uploadFilesWithProgress
▸ uploadFilesWithProgress(params) : AsyncGenerator<CommitProgressEvent, CommitOutput | undefined>
Téléversements avec progression
Nécessite que XMLHttpRequest soit disponible pour les événements de progression lors des téléversements de modèles, de jeux de données et d'espaces. Définissez useWebWorkers sur true afin de disposer d'événements de progression pour le hachage des modèles, des jeux de données et des espaces.
Paramètres
| Nom | Type |
|---|---|
params | { abortSignal?: AbortSignal ; branch?: string ; commitDescription?: string ; commitTitle?: string ; files: (URL | CommitEditFileParams | File | { content: ContentSource ; path: string })[] ; hubUrl?: string ; isPullRequest?: boolean ; maxFolderDepth?: number ; parentCommit?: string ; rangeEditCache?: RangeEditCache ; repo: RepoDesignation ; useWebWorkers?: boolean | { minSize?: number ; poolSize?: number } ; useXet?: boolean } & Partial<CredentialsParams> |
Retourne
AsyncGenerator<CommitProgressEvent, CommitOutput | undefined>
Défini dans
packages/hub/src/lib/upload-files-with-progress.ts:21
validateTensorEntry
▸ validateTensorEntry(path, tensorName, info, fileSizeBytes) : void
Valide une entrée de tenseur d’un en-tête : les dimensions sont des entiers finis inférieurs à MAX_TENSOR_DIM, data_offsets sont cohérents, et — lorsque la taille du fichier est connue — l’étendue de bytes déclarée tient dans le fichier. data_offsets est vérifié plutôt que shape * dtype size car les deux peuvent légitimement diverger (rembourrage), les décalages étant la seule source de vérité que le format nous fournit.
Paramètres
| Nom | Type |
|---|---|
path | string |
tensorName | string |
info | TensorInfo |
fileSizeBytes | undefined | number |
Retourne
void
Défini dans
packages/hub/src/lib/parse-safetensors-metadata.ts:246
whoAmI
▸ whoAmI(params) : Promise<WhoAmI & { auth : AuthInfo }>
Paramètres
| Nom | Type |
|---|---|
params | { fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>(input: string | Request | URL, init?: RequestInit) => Promise<Response> ; hubUrl?: string } & CredentialsParams |
Retourne
Promise<WhoAmI & { auth: AuthInfo }>
Défini dans
packages/hub/src/lib/who-am-i.ts:63
Update on GitHub