项目介绍:huggingface_hub
huggingface_hub
是一个官方的 Python 客户端库,旨在与 Hugging Face Hub 进行交互。Hugging Face Hub 是一个开放的机器学习平台,旨在为创作者和合作者提供共同工作的空间。在这里,用户可以发现用于各类项目的预训练模型和数据集,还可以体验平台上数以千计的机器学习应用程序。此外,用户还能够与社区分享自己创建的模型、数据集和演示。huggingface_hub
为上述操作提供了一个简单的 Python 接口。
主要功能
- 下载文件:用户可以从 Hub 中下载所需的文件。
- 上传文件:可以将文件上传至 Hub,进行模型和数据的管理。
- 管理资源库:提供资源库的管理功能,使用户能够更有序地管理项目。
- 运行推理:可以在已部署的模型上进行推理操作。
- 搜索:帮助用户搜索模型、数据集和空间。
- 共享模型卡:用户能够记录并共享他们的模型。
- 参与社区:通过提案和评论与社区进行互动。
安装指南
要使用 huggingface_hub
,用户可以通过 pip 进行安装:
pip install huggingface_hub
如果用户偏好使用 Conda 进行安装,也可以按照相关指引进行操作。此包默认功能简洁,用户可以根据需要安装附加依赖项,例如完整的推理体验:
pip install huggingface_hub[inference]
关于更多安装细节和可选依赖项的说明,请参阅安装指南。
快速入门
下载文件
可以下载单个文件:
from huggingface_hub import hf_hub_download
hf_hub_download(repo_id="tiiuae/falcon-7b-instruct", filename="config.json")
或整个资源库:
from huggingface_hub import snapshot_download
snapshot_download("stabilityai/stable-diffusion-2-1")
文件将被下载到本地缓存文件夹中。
登录
Hugging Face Hub 使用令牌来验证应用程序。在命令行中运行以下命令进行登录:
huggingface-cli login
# 或者使用环境变量
huggingface-cli login --token $HUGGINGFACE_TOKEN
创建资源库
from huggingface_hub import create_repo
create_repo(repo_id="super-cool-model")
上传文件
可以上传单个文件:
from huggingface_hub import upload_file
upload_file(
path_or_fileobj="/home/lysandre/dummy-test/README.md",
path_in_repo="README.md",
repo_id="lysandre/test-model",
)
或一个完整文件夹:
from huggingface_hub import upload_folder
upload_folder(
folder_path="/path/to/local/space",
repo_id="username/my-cool-space",
repo_type="space",
)
集成至 Hub
我们正在与众多开源机器学习库合作,为其提供免费的模型托管和版本管理。这样的合作具有许多优势,包括:
- 为库及其用户提供免费的模型或数据集托管服务。
- 自带文件版本管理功能,支持大文件的版本控制,基于 git 方法。
- 所有公开模型均可使用无服务器推理 API。
- 可在浏览器中直接体验上传的模型。
- 用户可以上传新的模型,只需要添加相应的标签以便被发现。
- 使用 Cloudfront(一个 CDN)来加速全球下载。
如果您希望将您的库集成到 Hub 中,欢迎提交问题以开始讨论。我们编写了一份分步指南,指导如何进行此类集成。
欢迎贡献
我们欢迎所有形式的贡献,不仅仅是代码。回答问题、帮助他人、改进文档等都是对社区非常有价值的贡献。我们有一份贡献指南,帮助大家了解如何开始为这个项目贡献力量。