Huggingface.js documentation
@huggingface/hub
@huggingface/hub
类
- HubApiError
- InvalidApiResponseFormatError
- JsonStreamParseError
- SafetensorParseError
- __internal_XetBlob
接口
- AuthInfo
- CachedFileInfo
- CachedRepoInfo
- CachedRevisionInfo
- 提交复制文件
- CommitData
- CommitDeletedEntry
- 提交编辑文件
- CommitEditFileParams
- CommitFile
- CommitInfo
- CommitOutput
- CopyDestination
- CopyFilesEntry
- CopyProgressEvent
- 复制源
- 凭据
- 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
类型别名
AccessToken
Ƭ AccessToken:string
实际上是 hf_${string},但为了方便起见,使用字符串类型
定义于
packages/hub/src/types/public.ts:28
AccessTokenRole
Ƭ AccessTokenRole: "admin" | "write" | "contributor" | "read"
定义于
packages/hub/src/types/public.ts:98
AuthType
Ƭ AuthType: "access_token" | "app_token" | "app_token_as_user"
定义于
packages/hub/src/types/public.ts:100
CommitOperation
Ƭ CommitOperation: CommitDeletedEntry | CommitFile | CommitEditFile | CommitCopyFile
定义于
packages/hub/src/lib/commit.ts:123
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>
定义于
packages/hub/src/lib/commit.ts:130
CommitProgressEvent
Ƭ CommitProgressEvent: { event: "phase" ; phase: "preuploading" | "uploadingLargeFiles" | "committing" } | { event: "fileProgress" ; path: string ; progress: number ; state: "hashing" | "uploading" | "error" }
定义于
packages/hub/src/lib/commit.ts:200
ContentSource
Ƭ ContentSource: Blob | URL
定义于
packages/hub/src/lib/commit.ts:44
数据类型
Ƭ 数据类型: "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"
定义于
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 }
极简、无依赖、增量式(SAX 风格)JSON 解析器。
JSON.parse 需要在内存中完整保留整个文档两次(源字符串 + 生成的对象树),这使得它无法用于那些体积庞大但关键内容极小的文档——例如大型 MoE 的 model.safetensors.index.json,其中 60 MB 的 weight_map 仅用于告知我们约 100 个不同的分片文件名。
该解析器在字节到达时输出扁平的事件流,因此消费者可以仅保留其关心的内容,而让其余部分被垃圾回收。内存占用取决于单个最大令牌(字符串 / 数字)的大小,而非文档的大小。
该实现是一个可恢复的状态机:任何 token 都可能在块边界处被拆分(包括多字节 UTF-8 序列和 \uXXXX 转义序列)。
严格性:所接受的语法为 RFC 8259(与 JSON.parse 相同),但省略了若干在此处收益甚微却开销较大的检查——特别是数字的 形状 由 Number() 而非状态机进行验证,因此 JSON.parse 拒绝的少数输入会被接受。
JSON.parse 接受的所有内容均被接受,且值完全相同。
Example
for await (const event of streamJson(blob.stream())) {
if (event.type === "key") { ... }
}定义于
packages/hub/src/utils/streamJson.ts:27
ModelAdditionalField
Ƭ ModelAdditionalField:Exclude<typeof MODEL_EXPANDABLE_KEYS[number], typeof MODEL_EXPAND_KEYS[number]> | keyof ModelDerivedFields
定义于
packages/hub/src/lib/list-models.ts:50
PipelineType
Ƭ PipelineType:typeof PIPELINE_DATA 的键
定义于
packages/tasks/dist/commonjs/pipelines.d.ts:380
RangeEditCache
Ƭ RangeEditCache:Map<string, RangeEditCacheEntry>
通过范围编辑路径先前写入的文件的内存状态,以其 xet 哈希为键。这使得后续的追加操作(或对该文件最后一个 term 的编辑)可以完全跳过重建和 file-chunk-hashes API 调用:部分 merkle 状态和验证哈希已经已知。
将同一个 RangeEditCache 实例传递给连续追加到同一文件的 commit 调用,以避免在每次追加时都调用 CAS 元数据 API。
定义于
packages/hub/src/utils/rangeEdit.ts:16
RepoDesignation
Ƭ 仓库标识:RepoId | RepoFullName
定义于
packages/hub/src/types/public.ts:17
RepoFullName
Ƭ RepoFullName: string | `spaces/${string}` | `datasets/${string}` | `buckets/${string}` | `kernels/${string}`
定义于
packages/hub/src/types/public.ts:10
RepoType
Ƭ RepoType: "space" | "dataset" | "model" | "bucket" | "kernel"
定义于
packages/hub/src/types/public.ts:3
ResolveModelAdditionalFields
Ƭ ResolveModelAdditionalFields<T>: Pick<ApiModelInfo, T & keyof ApiModelInfo> & Pick<ModelDerivedFields, T & keyof ModelDerivedFields>
类型参数
| 名称 | 类型 |
|---|---|
T | 继承自 ModelAdditionalField |
定义于
packages/hub/src/lib/list-models.ts:54
SafetensorsFileHeader
Ƭ SafetensorsFileHeader: Record<TensorName, TensorInfo> & { __metadata__?: { total_parameters?: string | number } & Record<string, string> }
定义于
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 }
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:348
SafetensorsShardedHeaders
Ƭ SafetensorsShardedHeaders:Record<FileName, SafetensorsFileHeader>
定义于
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"
定义于
packages/hub/src/types/public.ts:53
SpaceSdk
Ƭ SpaceSdk:"streamlit" | "gradio" | "docker" | "static"
定义于
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"
定义于
packages/hub/src/types/public.ts:86
TensorName
Ƭ TensorName:string
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:290
WhoAmI
Ƭ WhoAmI:WhoAmIApp | WhoAmIOrg | WhoAmIUser
定义于
packages/hub/src/lib/who-am-i.ts:51
变量
DATASET _ EXPANDABLE _ KEYS
• Const DATASET_EXPANDABLE_KEYS:只读 ["author", "cardData", "citation", "createdAt", "disabled", "description", "downloads", "downloadsAllTime", "gated", "gitalyUid", "lastModified", "likes", "paperswithcode_id", "private", "sha", "tags"]
定义于
packages/hub/src/lib/list-datasets.ts:17
DATASET _ EXPAND _ KEYS
• Const DATASET_EXPAND_KEYS:只读 ["private", "downloads", "gated", "likes", "lastModified"]
定义于
packages/hub/src/lib/list-datasets.ts:9
DEFAULT _ REVISION
• Const DEFAULT_REVISION: "main"
定义于
packages/hub/src/lib/snapshot-download.ts:13
DIFFUSERS _ SAFETENSORS _ 文件
• Const DIFFUSERS_SAFETENSORS_FILE: "diffusion_pytorch_model.safetensors"
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:21
DIFFUSERS _ SAFETENSORS _ 索引 _ 文件
• Const DIFFUSERS_SAFETENSORS_INDEX_FILE: "diffusion_pytorch_model.safetensors.index.json"
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:22
DIFFUSERS _ WEIGHTS _ SUBFOLDERS
• Const DIFFUSERS_WEIGHTS_SUBFOLDERS:只读 ["transformer", "unet"]
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:23
HUB _ URL
• Const HUB_URL: "https://huggingface.co"
Hugging Face Hub 的基础 URL。
定义于
模型派生字段到 API 密钥
• Const MODEL_DERIVED_FIELD_TO_API_KEY: Record<keyof ModelDerivedFields, keyof ApiModelInfo>
定义于
packages/hub/src/lib/list-models.ts:46
MODEL _ EXPANDABLE _ KEYS
• Const MODEL_EXPANDABLE_KEYS:只读 ["author", "cardData", "config", "createdAt", "disabled", "downloads", "downloadsAllTime", "gated", "gitalyUid", "inferenceProviderMapping", "lastModified", "library_name", "likes", "model-index", "pipeline_tag", "private", "safetensors", "sha", "spaces", "tags", "transformersInfo"]
定义于
packages/hub/src/lib/list-models.ts:18
MODEL _ EXPAND _ KEYS
• Const MODEL_EXPAND_KEYS:只读 ["pipeline_tag", "private", "gated", "downloads", "likes", "lastModified"]
定义于
packages/hub/src/lib/list-models.ts:9
REGEX _ COMMIT _ HASH
• Const REGEX_COMMIT_HASH:RegExp
定义于
packages/hub/src/lib/download-file-to-cache-dir.ts:16
REPO _ ID _ SEPARATOR
• Const REPO_ID_SEPARATOR: string = "--"
定义于
packages/hub/src/lib/cache-management.ts:25
RE _ SAFETENSORS _ FILE
• Const RE_SAFETENSORS_FILE:RegExp
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:26
RE _ SAFETENSORS _ INDEX _ FILE
• Const RE_SAFETENSORS_INDEX_FILE:RegExp
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:27
RE _ SAFETENSORS _ SHARD _ FILE
• Const RE_SAFETENSORS_SHARD_FILE:RegExp
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:28
SAFETENSORS _ 文件
• Const SAFETENSORS_FILE: "model.safetensors"
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:17
SAFETENSORS _ INDEX _ 文件
• Const SAFETENSORS_INDEX_FILE: "model.safetensors.index.json"
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:18
SPACE _ EXPANDABLE _ KEYS
• Const SPACE_EXPANDABLE_KEYS:只读 ["author", "cardData", "datasets", "disabled", "gitalyUid", "lastModified", "createdAt", "likes", "private", "runtime", "sdk", "sha", "subdomain", "tags", "models"]
定义于
packages/hub/src/lib/list-spaces.ts:15
SPACE _ EXPAND _ KEYS
• Const SPACE_EXPAND_KEYS:只读 ["sdk", "likes", "private", "lastModified"]
定义于
packages/hub/src/lib/list-spaces.ts:9
函数
_ _ internal _ sha256
▸ __internal_sha256(buffer, opts?): AsyncGenerator<number, string>
参数
| 名称 | 类型 |
|---|---|
buffer | Blob |
opts? | Object |
opts.abortSignal? | AbortSignal |
opts.useWebWorker? | boolean | { minSize?: number ; poolSize?: number } |
返回
AsyncGenerator<number, string>
十六进制编码的 sha
Yields
进度 (0-1)
定义于
packages/hub/src/utils/sha256.ts:72
assertSafeShardFilename
▸ assertSafeShardFilename(filename): void
weight_map 中的文件名来自仓库文件,因此由攻击者控制:它们必须保持为索引自身目录内的相对路径。
A literal includes("..") check isn’t enough, because the URL the filename ends up in is parsed
by the WHATWG URL parser after the check, and that parser percent-decodes dot segments: %2e%2e (or .%2e, %2E%2E, …) is a .. segment for it, so it escapes the repo — and with a
credential attached, the request lands authorized on another repo’s resolve URL.
因此在验证之前先进行解码(反复解码,以捕获 %252e%252e),并拒绝任何不是纯相对路径的内容。
参数
| 名称 | 类型 |
|---|---|
filename | string |
返回
void
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:511
cancelJob
▸ cancelJob(params): Promise<ApiJob>
取消任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
Promise<ApiJob>
定义于
packages/hub/src/lib/jobs/cancel-job.ts:10
checkRepoAccess
▸ checkRepoAccess(params): Promise<void>
检查我们是否具有对某个仓库的读取权限。
如果没有访问权限,则抛出 HubApiError 错误。HubApiError.statusCode 将为 401、403 或 404。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation } & Partial<CredentialsParams> |
返回
Promise<void>
定义于
packages/hub/src/lib/check-repo-access.ts:13
commit
▸ commit(params): Promise<CommitOutput | undefined>
参数
| 名称 | 类型 |
|---|---|
params | CommitParams |
返回
Promise<CommitOutput | undefined>
对于桶上传为 undefined,否则为 CommitOutput
定义于
packages/hub/src/lib/commit.ts:1031
commitIter
▸ commitIter(params): AsyncGenerator<CommitProgressEvent, CommitOutput | undefined>
目前为内部函数,由 commit 使用。
可以稍后公开,以提供微调进度信息
CommitOutput 在桶提交中不存在
参数
| 名称 | 类型 |
|---|---|
params | CommitParams |
返回
AsyncGenerator<CommitProgressEvent, CommitOutput | undefined>
定义于
packages/hub/src/lib/commit.ts:219
commitIterBucket
▸ commitIterBucket(params): AsyncGenerator<CommitProgressEvent>
参数
| 名称 | 类型 |
|---|---|
params | CommitParams |
返回
AsyncGenerator<CommitProgressEvent>
定义于
packages/hub/src/lib/commit.ts:775
computeNumOfParamsByDtypeSingleFile
▸ computeNumOfParamsByDtypeSingleFile(header, quantConfig?, expertDtype?): Partial<Record<Dtype, number>>
针对单个文件的头部,按数据类型对参数求和,应用量化打包因子,并跳过簿记张量。
参数
| 名称 | 类型 |
|---|---|
header | SafetensorsFileHeader |
quantConfig? | QuantizationConfig |
expertDtype? | string |
返回
Partial<Record<Dtype, number>>
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:1379
copyFile
▸ copyFile(params): Promise<undefined>
将单个文件从源仓库/存储桶复制到目标存储桶。
当源文件由 xet 提供支持时,复制操作在服务器端完成(无需数据传输)。
对于较小的非 xet 仓库文件(例如 config.json),该文件会在同一提交中被下载并重新上传到目标存储桶。
尚未迁移到 xet 的 LFS 指针文件会被提前拒绝(否则需要下载完整的 LFS blob)。
参数
| 名称 | 类型 |
|---|---|
params | { destination: CopyDestination ; source: CopySource } & SharedParams |
返回
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_...",
});定义于
packages/hub/src/lib/copy-files.ts:111
copyFileIter
▸ copyFileIter(params): AsyncGenerator<CopyProgressEvent, undefined>
copyFile 的异步迭代器变体,在下载非 xet 源文件时生成 CopyProgressEvent(由 xet 支持的文件在服务器端复制,不会发出事件)。有关语义,请参阅 copyFile。
参数
| 名称 | 类型 |
|---|---|
params | { destination: CopyDestination ; source: CopySource } & SharedParams |
返回
AsyncGenerator<CopyProgressEvent, undefined>
Example
for await (const event of copyFileIter({ source, destination, accessToken })) {
console.log(`downloaded ${event.path} (${event.downloaded}/${event.total})`);
}定义于
packages/hub/src/lib/copy-files.ts:144
copyFiles
▸ copyFiles(params): Promise<undefined>
在单次提交中,将多个文件(可能来自不同的源仓库/存储桶)复制到目标存储桶。
对于由 xet 支持的源文件,复制操作在服务器端执行,无需数据传输。 对于非 xet 源文件(通常是存储在 git 中的小型仓库文件),该文件会作为同一提交的一部分被下载并重新上传。
未迁移到 xet 的 LFS 指针文件会被直接拒绝。
参数
| 名称 | 类型 |
|---|---|
params | { destination: BucketDesignation ; files: CopyFilesEntry[] } & SharedParams |
返回
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_...",
});定义于
packages/hub/src/lib/copy-files.ts:199
copyFilesIter
▸ copyFilesIter(params): AsyncGenerator<CopyProgressEvent, undefined>
copyFiles 的异步迭代器变体,在下载非 xet 源文件时生成 CopyProgressEvent(xet 支持的文件在服务器端复制,不会发出事件)。有关语义,请参阅 copyFiles。
参数
| 名称 | 类型 |
|---|---|
params | { destination: BucketDesignation ; files: CopyFilesEntry[] } & SharedParams |
返回
AsyncGenerator<CopyProgressEvent, undefined>
定义于
packages/hub/src/lib/copy-files.ts:219
copyFolder
▸ copyFolder(params): Promise<undefined>
在单次提交中,将源仓库/存储桶中的文件夹(递归地)复制到目标存储桶。
每个文件的路径都是相对于 CopySource.path 解析的;除非 CopyDestination.path 保留了源文件夹,否则源文件夹本身不会保留在目标位置。
参数
| 名称 | 类型 |
|---|---|
params | { destination: Omit<CopyDestination, "path"> & { path?: string } ; source: Omit<CopySource, "path"> & { path?: string } } & SharedParams |
返回
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_...",
});定义于
packages/hub/src/lib/copy-files.ts:277
copyFolderIter
▸ copyFolderIter(params): AsyncGenerator<CopyProgressEvent, undefined>
copyFolder 的异步迭代器变体,在下载非 xet 源文件时生成 CopyProgressEvent(由 xet 支持的文件在服务器端复制,不会发出事件)。有关语义,请参阅 copyFolder。
参数
| 名称 | 类型 |
|---|---|
params | { destination: Omit<CopyDestination, "path"> & { path?: string } ; source: Omit<CopySource, "path"> & { path?: string } } & SharedParams |
返回
AsyncGenerator<CopyProgressEvent, undefined>
定义于
packages/hub/src/lib/copy-files.ts:297
countCommits
▸ countCommits(params): Promise<number>
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<number>
定义于
packages/hub/src/lib/count-commits.ts:7
createBranch
▸ createBranch(params): Promise<void>
参数
| 名称 | 类型 | 描述 |
|---|---|---|
params | Object | - |
params.accessToken? | string | - |
params.branch | string | 要创建的分支名称 |
params.empty? | boolean | 使用此命令创建一个不包含任何提交的空分支。 |
params.fetch? | (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> | MDN 参考 |
params.hubUrl? | string | - |
params.overwrite? | boolean | 使用此参数在分支已存在时覆盖该分支。如果仅指定了 overwrite 而未指定 revision/empty,且分支已存在,则此操作将不执行任何更改。 |
params.repo | RepoDesignation | - |
params.revision? | string | 用于创建分支的修订版本。默认使用默认分支。使用 empty: true 来创建一个空分支。 |
返回
Promise<void>
定义于
packages/hub/src/lib/create-branch.ts:6
createCollection
▸ createCollection(params): Promise<{ slug: string }>
参数
| 名称 | 类型 |
|---|---|
params | { collection: ApiCreateCollectionPayload ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string } & Partial<CredentialsParams> |
返回
Promise<{ slug: string }>
定义于
packages/hub/src/lib/create-collection.ts:7
createRepo
▸ createRepo(params): Promise<{ id: string ; repoUrl: string }>
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, 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 |
返回
Promise<{ id: string ; repoUrl: string }>
定义于
packages/hub/src/lib/create-repo.ts:9
createScheduledJob
▸ createScheduledJob(params): Promise<ApiScheduledJob>
创建计划任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; namespace: string } & CreateScheduledJobOptions & CredentialsParams |
返回
Promise<ApiScheduledJob>
定义于
packages/hub/src/lib/jobs/create-scheduled-job.ts:11
datasetInfo
▸ datasetInfo<T>(params): Promise<DatasetEntry & Pick<ApiDatasetInfo, T>>
类型参数
| 名称 | 类型 |
|---|---|
T | extends "author" | "cardData" | "disabled" | "gitalyUid" | "createdAt" | "tags" | "paperswithcode_id" | "sha" | "citation" | "description" | "downloadsAllTime" = never |
参数
| 名称 | 类型 |
|---|---|
params | { additionalFields?: T[] ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; name: string ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<DatasetEntry & Pick<ApiDatasetInfo, T>>
定义于
packages/hub/src/lib/dataset-info.ts:9
deleteBranch
▸ deleteBranch(params): Promise<void>
参数
| 名称 | 类型 | 描述 |
|---|---|---|
params | Object | - |
params.accessToken? | string | - |
params.branch | string | 要删除的分支名称 |
params.fetch? | (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> | MDN 参考 |
params.hubUrl? | string | - |
params.repo | RepoDesignation | - |
返回
Promise<void>
定义于
packages/hub/src/lib/delete-branch.ts:6
deleteCollection
▸ deleteCollection(params): Promise<void>
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; slug: string } & Partial<CredentialsParams> |
返回
Promise<void>
定义于
packages/hub/src/lib/delete-collection.ts:6
deleteFile
▸ deleteFile(params): Promise<CommitOutput | undefined>
参数
| 名称 | 类型 |
|---|---|
params | { branch?: string ; commitDescription?: string ; commitTitle?: string ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; isPullRequest?: boolean ; parentCommit?: string ; path: string ; repo: RepoDesignation } & CredentialsParams |
返回
Promise<CommitOutput | undefined>
定义于
packages/hub/src/lib/delete-file.ts:5
deleteFiles
▸ deleteFiles(params): Promise<CommitOutput | undefined>
参数
| 名称 | 类型 |
|---|---|
params | { branch?: string ; commitDescription?: string ; commitTitle?: string ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; isPullRequest?: boolean ; parentCommit?: string ; paths: string[] ; repo: RepoDesignation } & CredentialsParams |
返回
Promise<CommitOutput | undefined>
定义于
packages/hub/src/lib/delete-files.ts:5
deleteRepo
▸ deleteRepo(params): Promise<void>
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation } & CredentialsParams |
返回
Promise<void>
定义于
packages/hub/src/lib/delete-repo.ts:7
deleteScheduledJob
▸ deleteScheduledJob(params): Promise<void>
删除计划任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
Promise<void>
定义于
packages/hub/src/lib/jobs/delete-scheduled-job.ts:9
downloadFile
▸ downloadFile(params): Promise<Blob | null>
参数
| 名称 | 类型 |
|---|---|
params | { downloadInfo?: FileDownloadInfoOutput ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; parallelDownloads?: boolean | ParallelDownloadOptions ; path: string ; raw?: boolean ; repo: RepoDesignation ; revision?: string ; xet?: boolean | { readToken: XetReadToken } } & Partial<CredentialsParams> |
返回
Promise<Blob | null>
当文件不存在时返回 null
定义于
packages/hub/src/lib/download-file.ts:13
downloadFileToCacheDir
▸ downloadFileToCacheDir(params): Promise<string>
如果本地缓存中不存在指定文件,则下载该文件。
参数
| 名称 | 类型 |
|---|---|
params | { cacheDir?: string ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; path: string ; raw?: boolean ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<string>
指向 blob 对象的符号链接
定义于
packages/hub/src/lib/download-file-to-cache-dir.ts:46
duplicateJob
▸ duplicateJob(params): Promise<ApiJob>
复制任务(使用相同的规格重新运行)。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
Promise<ApiJob>
定义于
packages/hub/src/lib/jobs/duplicate-job.ts:10
encodeShardFilename
▸ encodeShardFilename(filename): string
纵深防御:下载 URL 通过字符串插值构建,因此应对(已验证的)文件名的每个路径段进行编码,而不是直接假设其 URL 安全。
参数
| 名称 | 类型 |
|---|---|
filename | string |
返回
string
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:570
fileDownloadInfo
▸ fileDownloadInfo(params): Promise<FileDownloadInfoOutput | null>
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; noContentDisposition?: boolean ; path: string ; raw?: boolean ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<FileDownloadInfoOutput | null>
当文件不存在时返回 null
定义于
packages/hub/src/lib/file-download-info.ts:27
fileExists
▸ fileExists(params): Promise<boolean>
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; path: string ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<boolean>
定义于
packages/hub/src/lib/file-exists.ts:7
getBlobStat
▸ getBlobStat(blobPath, blobStats): Promise<Stats>
参数
| 名称 | 类型 |
|---|---|
blobPath | string |
blobStats | Map<string, Stats> |
返回
Promise<Stats>
定义于
packages/hub/src/lib/cache-management.ts:254
getHFHubCachePath
▸ getHFHubCachePath(): string
返回
string
定义于
packages/hub/src/lib/cache-management.ts:19
getJob
▸ getJob(params): Promise<ApiJob>
通过 ID 获取特定任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
Promise<ApiJob>
定义于
packages/hub/src/lib/jobs/get-job.ts:10
getQuantizationMultiplier
▸ getQuantizationMultiplier(tensorName, dtype, quantConfig?, expertDtype?, mlxQuantizedModules?): number
根据量化方法获取量化张量的参数乘数。
可以是分数 — 参见 packingFactor。
参数
| 名称 | 类型 |
|---|---|
tensorName | string |
dtype | Dtype |
quantConfig? | QuantizationConfig |
expertDtype? | string |
mlxQuantizedModules? | ReadonlySet<string> |
返回
number
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:1259
getRepoFolderName
▸ getRepoFolderName(«destructured»): string
参数
| 名称 | 类型 |
|---|---|
«destructured» | RepoId |
返回
string
定义于
packages/hub/src/lib/cache-management.ts:27
getScheduledJob
▸ getScheduledJob(params): Promise<ApiScheduledJob>
通过 ID 获取特定的计划任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
Promise<ApiScheduledJob>
定义于
packages/hub/src/lib/jobs/get-scheduled-job.ts:10
globMatch
▸ globMatch(pattern, str): boolean
不使用 RegExp 进行 Glob 匹配:按 * 拆分模式,并检查每个字面量片段是否按顺序出现在 str 中。完全避免使用 RegExp(无 ReDoS 风险,也不会因 config.json 中攻击者可控的模式而引发 SyntaxError)。
参数
| 名称 | 类型 |
|---|---|
pattern | string |
str | string |
返回
boolean
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:1153
isQuantizedTensor
▸ isQuantizedTensor(tensorName, quantConfig?, mlxQuantizedModules?): boolean
根据量化配置和张量名称,确定张量是否已量化。
Python 的 transformers 对 modules_to_not_convert 使用简单的子字符串匹配,
因此像 "lm_head" 这样的裸名称必须匹配 "model.lm_head.weight"。当
模式中包含 * 时,我们会回退到正确的 glob 匹配以提供灵活性。
参数
| 名称 | 类型 |
|---|---|
tensorName | string |
quantConfig? | QuantizationConfig |
mlxQuantizedModules? | ReadonlySet<string> |
返回
boolean
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:1189
listCollections
▸ listCollections(params?): AsyncGenerator<ApiCollectionInfo>
参数
| 名称 | 类型 |
|---|---|
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<…> |
返回
AsyncGenerator<ApiCollectionInfo>
定义于
packages/hub/src/lib/list-collections.ts:12
listCommits
▸ listCommits(params): AsyncGenerator<CommitData>
参数
| 名称 | 类型 |
|---|---|
params | { batchSize?: number ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
返回
AsyncGenerator<CommitData>
定义于
packages/hub/src/lib/list-commits.ts:17
listDatasets
▸ listDatasets<T>(params?): AsyncGenerator<DatasetEntry & Pick<ApiDatasetInfo, T>>
类型参数
| 名称 | 类型 |
|---|---|
T | extends "author" | "cardData" | "disabled" | "gitalyUid" | "createdAt" | "tags" | "paperswithcode_id" | "sha" | "citation" | "description" | "downloadsAllTime" = never |
参数
| 名称 | 类型 |
|---|---|
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<…> |
返回
AsyncGenerator<DatasetEntry & Pick<ApiDatasetInfo, T>>
定义于
packages/hub/src/lib/list-datasets.ts:47
listFiles
▸ listFiles(params): AsyncGenerator<ListFileEntry>
列出文件夹中的文件。若要列出目录中的所有文件,请将 params.recursive 设置为 true 并调用它。
参数
| 名称 | 类型 |
|---|---|
params | { expand?: boolean ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; path?: string ; recursive?: boolean ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
返回
AsyncGenerator<ListFileEntry>
定义于
packages/hub/src/lib/list-files.ts:53
listJobHardware
▸ listJobHardware(params?): Promise<ApiJobHardware[]>
获取可用于作业(jobs)的硬件列表。 此端点是公开的,无需身份验证,但身份验证是可选的。
参数
| 名称 | 类型 |
|---|---|
params? | { hubUrl?: string | undefined; fetch?: { (input: URL | RequestInfo, init?: RequestInit | undefined): Promise<Response>; (input: string | … 1 more … | Request, init?: RequestInit | undefined): Promise<…>; } | undefined; } & Partial<…> |
返回
Promise<ApiJobHardware[]>
定义于
packages/hub/src/lib/jobs/list-job-hardware.ts:11
listJobs
▸ listJobs(params): Promise<ApiJob[]>
列出命名空间(用户或组织)中的任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; namespace: string } & CredentialsParams |
返回
Promise<ApiJob[]>
定义于
packages/hub/src/lib/jobs/list-jobs.ts:10
listModels
▸ listModels<T>(params?): AsyncGenerator<ModelEntry & ResolveModelAdditionalFields<T>>
类型参数
| 名称 | 类型 |
|---|---|
T | extends ModelAdditionalField = never |
参数
| 名称 | 类型 |
|---|---|
params? | { search?: { query?: string | undefined; owner?: string | undefined; task?: “other” | “text-classification” | “token-classification” | “table-question-answering” | “question-answering” | … 52 more … | undefined; tags?: string[] | undefined; inferenceProviders?: string[] | undefined; apps?: string[] | undefined; … |
返回
AsyncGenerator<ModelEntry & ResolveModelAdditionalFields<T>>
定义于
packages/hub/src/lib/list-models.ts:68
listScheduledJobs
▸ listScheduledJobs(params): Promise<ApiScheduledJob[]>
列出命名空间中的计划任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; namespace: string } & CredentialsParams |
返回
Promise<ApiScheduledJob[]>
定义于
packages/hub/src/lib/jobs/list-scheduled-jobs.ts:10
listSpaces
▸ listSpaces<T>(params?): AsyncGenerator<SpaceEntry & Pick<ApiSpaceInfo, T>>
类型参数
| 名称 | 类型 |
|---|---|
T | extends "models" | "datasets" | "author" | "cardData" | "disabled" | "gitalyUid" | "createdAt" | "tags" | "sha" | "subdomain" | "runtime" = never |
参数
| 名称 | 类型 |
|---|---|
params? | { search?: { query?: string | undefined; owner?: string | undefined; tags?: string[] | undefined; } | undefined; hubUrl?: string | undefined; fetch?: { (input: URL | RequestInfo, init?: RequestInit | undefined): Promise<…>; (input: string | … 1 more … | Request, init?: RequestInit | undefined): Promise<…>; }… |
返回
AsyncGenerator<SpaceEntry & Pick<ApiSpaceInfo, T>>
定义于
packages/hub/src/lib/list-spaces.ts:44
matchesCompressedTensorsTarget
▸ matchesCompressedTensorsTarget(target, moduleName): boolean
将模块名称与 compressed-tensors 目标进行匹配。
目标可以是精确的模块名称、类名称(例如 "Linear",我们无法从张量名称中解析出这些名称,因此会忽略它们),或者是带有 re: 前缀的 Python 正则表达式。为了避免评估来自 config.json 的、由攻击者控制的 RegExp(ReDoS、SyntaxError — 参见 globMatch),我们将常见的正则表达式子集(.* 通配符、^/$ 锚点、\. 转义)转换为 globMatch,并将使用任何其他正则表达式语法的 target 视为不匹配。
参数
| 名称 | 类型 |
|---|---|
target | string |
moduleName | string |
返回
boolean
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:1231
modelInfo
▸ modelInfo<T>(params): Promise<ModelEntry & ResolveModelAdditionalFields<T>>
类型参数
| 名称 | 类型 |
|---|---|
T | extends ModelAdditionalField = never |
参数
| 名称 | 类型 |
|---|---|
params | { additionalFields?: T[] ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; name: string ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<ModelEntry & ResolveModelAdditionalFields<T>>
定义于
packages/hub/src/lib/model-info.ts:16
oauthHandleRedirect
▸ oauthHandleRedirect(opts?): Promise<OAuthResult>
在 OAuth 提供商重定向回应用后调用。
还有一个辅助函数 oauthHandleRedirectIfPresent,如果 URL 的查询参数中包含 oauth code,它会调用 oauthHandleRedirect,否则返回 false。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
opts? | Object | - |
opts.codeVerifier? | string | oauthLoginUrl 生成的 codeVerifier Default ts localStorage.getItem("huggingface.co:oauth:code_verifier") |
opts.hubUrl? | string | Hub 的 URL。默认为 HUB_URL。 |
opts.nonce? | string | 由 oauthLoginUrl 生成的 nonce Default ts localStorage.getItem("huggingface.co:oauth:nonce") |
opts.redirectedUrl? | string | 要分析的 URL。Default ts window.location.href |
返回
Promise<OAuthResult>
定义于
packages/hub/src/lib/oauth-handle-redirect.ts:123
oauthHandleRedirectIfPresent
▸ oauthHandleRedirectIfPresent(opts?): Promise<OAuthResult | false>
在 OAuth 提供商重定向回应用后调用。
如果 URL 的查询参数中不包含 oauth 代码,则返回 false,否则调用 oauthHandleRedirect。
根据您的应用,您可能希望直接调用 oauthHandleRedirect。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
opts? | Object | - |
opts.codeVerifier? | string | oauthLoginUrl 生成的 codeVerifier Default ts localStorage.getItem("huggingface.co:oauth:code_verifier") |
opts.hubUrl? | string | Hub 的 URL。默认为 HUB_URL。 |
opts.nonce? | string | 由 oauthLoginUrl 生成的 nonce Default ts localStorage.getItem("huggingface.co:oauth:nonce") |
opts.redirectedUrl? | string | 要分析的 URL。Default ts window.location.href |
返回
Promise<OAuthResult | false>
定义于
packages/hub/src/lib/oauth-handle-redirect.ts:293
oauthLoginUrl
▸ oauthLoginUrl(opts?): Promise<string>
使用“Sign in with Hub”来验证用户身份,并获取 oauth 用户信息 / 访问令牌。
返回一个用于重定向的 URL。用户被重定向回您的应用后,调用 oauthHandleRedirect 以获取 oauth 用户信息 / 访问令牌。
当从启用了 OAuth 的静态 Space 内部调用时,它将从该 Space 加载配置;否则,您至少需要指定您的 OAuth 应用的客户端 ID。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
opts? | Object | - |
opts.clientId? | string | OAuth 客户端 ID。对于静态 Spaces,如果 README.md 的元数据中存在 hf_oauth: true,则可以省略此项,它将从 Space 配置中加载。对于其他 Spaces,只要 README.md 的元数据中存在 hf_oauth: true,后端即可通过 OAUTH_CLIENT_ID 环境变量获取该值。你也可以在 https://huggingface.co/settings/connected-applications 创建一个开发者应用程序,并使用其客户端 ID。 |
opts.hubUrl? | string | - |
opts.localStorage? | Object | 如果提供,将用于填充 OAuth 流程中使用的代码验证器和 nonce,而不是使用 localStorage。在调用 oauthHandleRedirectIfPresent 或 oauthHandleRedirect 时,需要提供相同的值。 |
opts.localStorage.codeVerifier? | string | - |
opts.localStorage.nonce? | string | - |
opts.redirectUrl? | string | 重定向 URI,默认为当前 URL。对于 Spaces,允许使用 Space 内的任意 URL。对于开发者应用程序,您可以在 https://huggingface.co/settings/connected-applications 处将任意 URL 添加到允许的重定向 URI 列表中。 |
opts.scopes? | string | OAuth scope,一个以空格分隔的 scope 列表。对于静态 Spaces,如果 README.md 的元数据中存在 hf_oauth: true,则可以省略此项,它将从 Space 配置中加载。对于其他 Spaces,只要 README.md 的元数据中存在 hf_oauth: true,后端即可通过 OAUTH_SCOPES 环境变量获取该值。默认值为 “openid profile”。您还可以在 https://huggingface.co/settings/connected-applications 创建一个开发者应用程序,并使用其 scope。有关可用 scope 的列表,请参阅 https://huggingface.co/docs/hub/oauth。 |
opts.state? | string | 要传递给 OAuth 提供方的状态,该状态将在重定向后返回给 oauthLogin 的调用。 |
返回
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);(理论上,通过更改 hubUrl,此函数可用于为任何支持 PKCE 和 OpenID Connect 的 OAuth 提供商进行用户身份验证,但目前仅在 Hugging Face Hub 上进行了测试。)
定义于
packages/hub/src/lib/oauth-login-url.ts:31
parseRepoType
▸ parseRepoType(type): RepoType
参数
| 名称 | 类型 |
|---|---|
type | string |
返回
定义于
packages/hub/src/lib/cache-management.ts:264
parseSafetensorsMetadata
▸ parseSafetensorsMetadata(params): Promise<SetRequired<SafetensorsParseFromRepo, "parameterCount">>
使用智能范围请求分析托管在 Hugging Face 上的模型的 model.safetensors.index.json 或 model.safetensors,以提取其元数据。
参数
| 名称 | 类型 |
|---|---|
params | { computeParametersCount: true ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; library?: string ; path?: string ; repo: RepoDesignation ; revision?: string ; useSafetensorsMetadataEndpoint?: boolean } & Partial<CredentialsParams> |
返回
Promise<SetRequired<SafetensorsParseFromRepo, "parameterCount">>
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:738
▸ parseSafetensorsMetadata(params): Promise<SafetensorsParseFromRepo>
参数
| 名称 | 类型 |
|---|---|
params | { computeParametersCount?: boolean ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; library?: string ; path?: string ; repo: RepoDesignation ; revision?: string ; useSafetensorsMetadataEndpoint?: boolean } & Partial<CredentialsParams> |
返回
Promise<SafetensorsParseFromRepo>
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:775
parseSafetensorsShardFilename
▸ parseSafetensorsShardFilename(filename): SafetensorsShardFileInfo | null
参数
| 名称 | 类型 |
|---|---|
filename | string |
返回
SafetensorsShardFileInfo | null
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:36
parseTotalParameters
▸ parseTotalParameters(value, computedTotal?): number | undefined
从头部/索引元数据中读取 total_parameters 快捷值。该值由文件自行报告,Hub 会原样显示它,从而绕过上述头部验证——因此,当我们拥有计算得出的数量时,应将其上限设为该计算值(对于格式规范的文件,两者一致,此操作无实际影响)。
参数
| 名称 | 类型 |
|---|---|
value | undefined | string | number |
computedTotal? | number |
返回
number | undefined
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:699
pathsInfo
▸ pathsInfo(params): Promise<PathInfo & { lastCommit: CommitInfo ; securityFileStatus: SecurityFileStatus }[]>
参数
| 名称 | 类型 |
|---|---|
params | { expand: true ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; paths: string[] ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<PathInfo & { lastCommit: CommitInfo ; securityFileStatus: SecurityFileStatus }[]>
定义于
packages/hub/src/lib/paths-info.ts:51
▸ pathsInfo(params): Promise<PathInfo[]>
参数
| 名称 | 类型 |
|---|---|
params | { expand?: boolean ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; paths: string[] ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<PathInfo[]>
定义于
packages/hub/src/lib/paths-info.ts:64
relativeUnderFolder
▸ relativeUnderFolder(filePath, folderPath): string
计算 filePath 相对于 folderPath 的路径。用于将正在复制的文件夹下的源路径映射到新前缀下的目标路径。
参数
| 名称 | 类型 |
|---|---|
filePath | string |
folderPath | string |
返回
string
定义于
packages/hub/src/lib/copy-files.ts:558
repoExists
▸ repoExists(params): Promise<boolean>
参数
| 名称 | 类型 | 描述 |
|---|---|---|
params | Object | - |
params.accessToken? | string | - |
params.fetch? | (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> | 用于替代默认函数的自定义 fetch 函数,例如用于使用代理或编辑请求头。 |
params.hubUrl? | string | - |
params.repo | RepoDesignation | - |
params.revision? | string | 可选的 Git 修订版本 ID,可以是分支名称、标签或提交哈希值。 |
返回
Promise<boolean>
定义于
packages/hub/src/lib/repo-exists.ts:6
resumeScheduledJob
▸ resumeScheduledJob(params): Promise<void>
恢复已调度的任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
Promise<void>
定义于
packages/hub/src/lib/jobs/resume-scheduled-job.ts:9
runJob
▸ runJob(params): Promise<ApiJob>
运行一个新任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; namespace: string } & CreateJobOptions & CredentialsParams |
返回
Promise<ApiJob>
定义于
packages/hub/src/lib/jobs/run-job.ts:12
runScheduledJob
▸ runScheduledJob(params): Promise<ApiJob | null>
触发计划任务立即运行。 返回被触发的任务,如果已有另一个实例正在运行,则返回 null。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
Promise<ApiJob | null>
定义于
packages/hub/src/lib/jobs/run-scheduled-job.ts:11
scanCacheDir
▸ scanCacheDir(cacheDir?): Promise<HFCacheInfo>
参数
| 名称 | 类型 | 默认值 |
|---|---|---|
cacheDir | undefined | string | undefined |
返回
Promise<HFCacheInfo>
定义于
packages/hub/src/lib/cache-management.ts:72
scanCachedRepo
▸ scanCachedRepo(repoPath): Promise<CachedRepoInfo>
参数
| 名称 | 类型 |
|---|---|
repoPath | string |
返回
Promise<CachedRepoInfo>
定义于
packages/hub/src/lib/cache-management.ts:118
scanRefsDir
▸ scanRefsDir(refsPath, refsByHash): Promise<void>
参数
| 名称 | 类型 |
|---|---|
refsPath | string |
refsByHash | Map<string, string[]> |
返回
Promise<void>
定义于
packages/hub/src/lib/cache-management.ts:210
scanSnapshotDir
▸ scanSnapshotDir(revisionPath, cachedFiles, blobStats): Promise<void>
参数
| 名称 | 类型 |
|---|---|
revisionPath | string |
cachedFiles | CachedFileInfo[] |
blobStats | Map<string, Stats> |
返回
Promise<void>
定义于
packages/hub/src/lib/cache-management.ts:227
snapshotDownload
▸ snapshotDownload(params): Promise<string>
在缓存目录 getHFHubCachePath 中下载指定修订版本的整个仓库。 您可以使用 scanCachedRepo 列出所有已缓存的仓库。
参数
| 名称 | 类型 |
|---|---|
params | { cacheDir?: string ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; repo: RepoDesignation ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<string>
Remarks
它在内部使用 downloadFileToCacheDir。
定义于
packages/hub/src/lib/snapshot-download.ts:20
spaceInfo
▸ spaceInfo<T>(params): Promise<SpaceEntry & Pick<ApiSpaceInfo, T>>
类型参数
| 名称 | 类型 |
|---|---|
T | extends "models" | "datasets" | "author" | "cardData" | "disabled" | "gitalyUid" | "createdAt" | "tags" | "sha" | "subdomain" | "runtime" = never |
参数
| 名称 | 类型 |
|---|---|
params | { additionalFields?: T[] ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; name: string ; revision?: string } & Partial<CredentialsParams> |
返回
Promise<SpaceEntry & Pick<ApiSpaceInfo, T>>
定义于
packages/hub/src/lib/space-info.ts:10
streamJobEvents
▸ streamJobEvents(params): AsyncGenerator<string, void, unknown>
使用 Server-Sent Events (SSE) 流式传输作业事件。 返回事件块的异步可迭代对象。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
AsyncGenerator<string, void, unknown>
定义于
packages/hub/src/lib/jobs/stream-job-events.ts:10
streamJobLogs
▸ streamJobLogs(params): AsyncGenerator<{ message: string ; timestamp: Date }, void, unknown>
使用 Server-Sent Events (SSE) 流式传输作业日志。 返回日志块的异步可迭代对象。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
AsyncGenerator<{ message: string ; timestamp: Date }, void, unknown>
定义于
packages/hub/src/lib/jobs/stream-job-logs.ts:10
streamJobMetrics
▸ streamJobMetrics(params): AsyncGenerator<string, void, unknown>
使用服务器发送事件 (SSE) 流式传输作业指标。 返回指标块的异步可迭代对象。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
AsyncGenerator<string, void, unknown>
定义于
packages/hub/src/lib/jobs/stream-job-metrics.ts:10
streamJson
▸ streamJson(source, options?): AsyncGenerator<JsonStreamEvent, void, undefined>
参数
| 名称 | 类型 | 描述 |
|---|---|---|
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 | 单个字符串/数字标记的最大长度(以字符计)。Default ts 16_000_000 |
返回
AsyncGenerator<JsonStreamEvent, void, undefined>
定义于
packages/hub/src/utils/streamJson.ts:123
suspendScheduledJob
▸ suspendScheduledJob(params): Promise<void>
暂停计划任务。
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string ; jobId: string ; namespace: string } & CredentialsParams |
返回
Promise<void>
定义于
packages/hub/src/lib/jobs/suspend-scheduled-job.ts:9
uploadFile
▸ uploadFile(params): Promise<CommitOutput | undefined>
参数
| 名称 | 类型 |
|---|---|
params | { abortSignal?: AbortSignal ; branch?: string ; commitDescription?: string ; commitTitle?: string ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, 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> |
返回
Promise<CommitOutput | undefined>
定义于
packages/hub/src/lib/upload-file.ts:39
uploadFiles
▸ uploadFiles(params): Promise<CommitOutput | undefined>
参数
| 名称 | 类型 |
|---|---|
params | { abortSignal?: AbortSignal ; branch?: string ; commitDescription?: string ; commitTitle?: string ; fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, 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> |
返回
Promise<CommitOutput | undefined>
定义于
packages/hub/src/lib/upload-files.ts:6
uploadFilesWithProgress
▸ uploadFilesWithProgress(params): AsyncGenerator<CommitProgressEvent, CommitOutput | undefined>
带进度显示的上传
上传模型、数据集和空间时,需要 XMLHttpRequest 可用才能触发进度事件。 将 useWebWorkers 设置为 true,以便在模型、数据集和空间的哈希计算过程中触发进度事件。
参数
| 名称 | 类型 |
|---|---|
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> |
返回
AsyncGenerator<CommitProgressEvent, CommitOutput | undefined>
定义于
packages/hub/src/lib/upload-files-with-progress.ts:21
validateTensorEntry
▸ validateTensorEntry(path, tensorName, info, fileSizeBytes): void
验证标头中的一个张量条目:维度是小于 MAX_TENSOR_DIM 的有限整数,data_offsets 合理,并且——在已知文件大小时——声明的字节范围位于文件内。检查 data_offsets 而非 shape * dtype size,因为两者可能合理地不一致(填充),因此偏移量是该格式提供的唯一真实依据。
参数
| 名称 | 类型 |
|---|---|
path | string |
tensorName | string |
info | TensorInfo |
fileSizeBytes | undefined | number |
返回
void
定义于
packages/hub/src/lib/parse-safetensors-metadata.ts:246
whoAmI
▸ whoAmI(params): Promise<WhoAmI & { auth: AuthInfo }>
参数
| 名称 | 类型 |
|---|---|
params | { fetch?: (input: URL | RequestInfo, init?: RequestInit) => Promise<Response>(input: string | URL | Request, init?: RequestInit) => Promise<Response> ; hubUrl?: string } & CredentialsParams |
返回
Promise<WhoAmI & { auth: AuthInfo }>
定义于
packages/hub/src/lib/who-am-i.ts:62
Update on GitHub