Selecting ModelScope could leave supported speech models unavailable because their fixed targets were incomplete and the official LFS redirect host was not allowed. Speech models now resolve complete per-source artifact fingerprints while preserving integrity checks, ZIP compatibility, and source isolation. Release note: 修复选择 ModelScope 后部分语音模型仍无法下载的问题;六个语音模型现均可从已验证的固定 ModelScope 来源下载。
42 lines
1010 B
TypeScript
42 lines
1010 B
TypeScript
import {
|
|
MODEL_DOWNLOAD_REDIRECT_HOSTS,
|
|
type ModelArtifactFingerprint,
|
|
type ModelArtifactTarget
|
|
} from '../shared/model-download-contracts'
|
|
|
|
export function modelScopeTarget(
|
|
repository: string,
|
|
revision: string,
|
|
file: string,
|
|
fingerprint?: ModelArtifactFingerprint
|
|
): ModelArtifactTarget {
|
|
const repositoryUrl = `https://modelscope.cn/models/${repository}`
|
|
return {
|
|
...fingerprint,
|
|
url: `${repositoryUrl}/resolve/${revision}/${file}`,
|
|
repositoryUrl,
|
|
revision,
|
|
redirectHosts: [
|
|
...MODEL_DOWNLOAD_REDIRECT_HOSTS.modelscope
|
|
]
|
|
}
|
|
}
|
|
|
|
export function huggingFaceTarget(
|
|
repository: string,
|
|
revision: string,
|
|
file: string,
|
|
fingerprint?: ModelArtifactFingerprint
|
|
): ModelArtifactTarget {
|
|
const repositoryUrl = `https://huggingface.co/${repository}`
|
|
return {
|
|
...fingerprint,
|
|
url: `${repositoryUrl}/resolve/${revision}/${file}`,
|
|
repositoryUrl,
|
|
revision,
|
|
redirectHosts: [
|
|
...MODEL_DOWNLOAD_REDIRECT_HOSTS['hugging-face']
|
|
]
|
|
}
|
|
}
|