Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

模型发布清单

Hugging Face Hub 是共享机器学习模型的首选平台。一次成功的发布可以提高您模型的可见性和影响力。本节涵盖了简洁、信息丰富且用户友好的模型发布的基本步骤。

⏳ 准备模型发布

上传权重

将模型上传到 Hub 时,建议遵循一组最佳实践

上传权重

  • 为不同的模型权重使用单独的仓库。 例如,您可以将同一模型的量化变体存储在一个仓库中,但为不同的模型权重使用单独的仓库。

  • 优先使用 safetensors 而不是 pickle 进行权重序列化。 safetensors 比 Python 的 pickle 提供了更好的安全性和性能。

编写全面的模型卡片

精心制作的模型卡片(仓库中的 README.md 文件)对于可发现性、可复现性和有效共享至关重要。您的模型卡片应包括:

  1. 元数据配置:模型卡片顶部的元数据部分(YAML 格式)对于可发现性和正确分类至关重要。请务必包括:

    ---
    pipeline_tag: text-generation  # Specify the task
    library_name: transformers  # Specify the library
    language:
      - en  # List language for your model
    license: apache-2.0 # Specify a license
    datasets:
      - username/dataset  # List datasets used for training
    base_model: username/base-model  # If applicable
    ---
  2. 详细模型描述:清晰地解释您的模型功能、架构及其预期用例。这有助于用户快速了解您的模型是否符合他们的需求。

  3. 使用示例:提供清晰、可操作的代码片段,演示如何使用您的模型进行推理、微调或其他常见任务。这些示例应可直接复制并运行,只需进行最少的修改。

额外提示:您可以通过在模型仓库中放置结构良好的 notebook.ipynb 来展示您的模型功能。这将允许用户直接打开您的笔记本并在Google Colab 和 Kaggle Notebooks 中直接运行。

  1. 技术规格:包含有关训练参数、硬件要求以及有助于用户了解如何有效使用您的模型的任何其他技术细节。

  2. 性能指标:分享全面的基准测试和评估结果。包括定量指标和定性示例,以向用户全面展示模型的功能和局限性。

  3. 局限性和偏见:透明地记录与您的模型相关的任何已知局限性、偏见或道德考量。这有助于用户就是否以及如何使用您的模型做出明智的决定。

增强模型可发现性和可用性

为了最大限度地提高模型的影响力和可用性

  1. 库集成:如果可能,请添加对 Hugging Face Hub 集成的众多(如 Transformers 或 Diffusers)之一的支持。这种集成显著增加了您的模型的可访问性,并为用户提供了使用您模型的代码片段。

    例如,要指定您的模型与 Transformers 库一起使用

    ---
    library_name: transformers
    ---

您还可以创建自己的模型库或将 Hub 支持添加到另一个现有库或代码库。

最后,在推送自定义 PyTorch 模型时,您可以采用Mixin 类

我们在此撰写了关于上传最佳实践的详细指南。

额外提示:一个公认的库还可以让您跟踪模型的下载量。

  1. 正确的元数据:

    • Pipeline Tag(流水线标签): 选择正确反映模型主要任务的流水线标签。此标签决定了模型在搜索结果中的显示方式以及模型页面上显示的小部件。

    常见流水线标签示例

    • text-generation - 用于生成文本的语言模型

    • text-to-image - 用于文本到图像生成模型

    • image-text-to-text - 用于生成文本的视觉语言模型 (VLM)

    • text-to-speech - 用于从文本生成音频的模型

    • 许可证: 许可证信息对于用户了解如何使用模型至关重要。

  2. 研究论文:如果您的模型有相关的研究论文,您可以在模型卡片中引用它们,它们将自动链接。这提供了学术背景,允许用户更深入地研究您工作的理论基础,并增加引用。

    ## References
    
    * [Model Paper](https://arxiv.org/abs/xxxx.xxxxx)
  3. 集合:如果您要发布多个相关模型或变体,请将它们组织到集合中。集合有助于用户发现相关模型并了解不同版本或变体之间的关系。

  4. 演示:使用模型的交互式演示创建Hugging Face Space。这允许用户无需编写任何代码即可直接试用您的模型,显著降低了采用门槛。您还可以从 Space 中链接模型,使其显示在模型专用 UI 页面上。

    ## Demo
    
    Try this model directly in your browser: [Space Demo](https://huggingface.co/spaces/username/model-demo)

创建演示时,请从 Hub 上的模型仓库下载模型(而不是使用 Google Drive 等外部来源);它将模型工件和演示交叉链接在一起,并提供了更多可见性路径。

  1. 量化版本:考虑上传模型的量化版本(例如,GGUF 或 DDUF 格式),以提高计算资源有限的用户可访问性。在量化模型卡片上使用base_model 元数据字段链接这些版本。您还可以清楚地记录原始版本和量化版本之间的性能差异。

    ---
    base_model: username/original-model
    base_model_relation: quantized
    ---
  2. 在模型页面上链接数据集:在您的 README.md 元数据中链接数据集,以直接从您的模型页面显示使用的那些数据集。

    ---
    datasets:
    - username/dataset
    - username/dataset-2
    ---
  3. 新模型版本:如果您的模型是现有模型的更新,您可以在旧版本模型卡片上指定它。这将在旧模型的页面上显示一个横幅,直接链接到此更新版本。

    ---
    new_version: username/updated-model
    ---
  4. 视觉示例:对于图像或视频生成模型,使用<Gallery> 卡片组件直接在模型页面上包含示例。视觉示例提供了对模型功能的直接洞察。

    <Gallery>
    ![Example 1](./images/example1.png)
    ![Example 2](./images/example2.png)
    </Gallery>
  5. 碳排放:如果可能,请指定与模型训练相关的碳排放量。此信息有助于具有环保意识的用户和组织做出明智的决策。

    ---
    co2_eq_emissions:
      emissions: 123.45
      source: "CodeCarbon"
      training_type: "pre-training"
      geographical_location: "US-East"
      hardware_used: "8xA100 GPUs"
    ---

访问控制和可见性

  1. 可见性设置:一旦一切敲定并且您准备好与世界分享您的模型,请在您的模型设置中将您的模型切换为公共可见性。在此之前,请仔细检查所有文档和代码示例,确保它们准确和完整。

  2. 受限访问:如果您的模型需要受控访问,请使用受限访问功能,并清楚地指定用户必须满足的条件才能获得访问权限。这对于具有潜在双重用途或商业限制的模型尤其重要。

🏁 发布模型后

成功的模型发布不仅仅是首次发布。为了最大限度地提高影响力和保持质量

维护与社区互动

  1. 验证功能:发布后,通过在干净的环境中测试,验证所有提供的代码片段是否正常工作。这确保用户可以成功地实现您的模型,而不会遇到挫折。

    例如,如果您的模型是与 transformers 兼容的 LLM,您可以尝试以下代码片段

    from transformers import pipeline
    
    # This should work without errors
    pipe = pipeline("text-generation", model="your-username/your-model")
    result = pipe("Your test prompt")
  2. 分享分享再分享:大多数人通过社交媒体或公司 Slack 或电子邮件线程等内部聊天渠道发现模型,因此请毫不犹豫地分享您的模型链接。分发模型的好方法是在您的网站或 GitHub 项目中添加链接。访问和喜欢您的模型的人越多,它在 Hugging Face 热门部分的排名就越高,从而获得更多的可见性!

  3. 社区互动:在社区标签中与用户互动,通过回答问题、处理反馈和快速解决问题。澄清疑问,采纳有用的建议,并关闭不相关的话题讨论或拉取请求,以使空间保持专注。

跟踪使用情况和影响力

  1. 使用指标:监控下载量和点赞量,以跟踪模型的受欢迎程度和采用情况。您可以在模型设置中访问总下载量指标。

  2. 监控贡献:定期检查您的模型树,以发现社区所做的贡献。这些贡献可以提供宝贵的见解和潜在的合作机会。

企业功能

Hugging Face Enterprise 订阅提供额外的功能

  1. 访问控制:设置资源组以控制特定团队或用户的访问,确保组织内具有适当的权限。

  2. 存储区域:选择模型文件的数据存储区域(美国/欧盟),以符合区域数据法规和要求。

  3. 高级分析:使用企业分析功能,深入了解使用模式和采用指标。

  4. 扩展存储:随着模型组合的增长,访问额外的私有存储容量,以托管更多模型和更大的工件。

通过遵循这些全面的指南和示例,您将确保您在 Hugging Face 上的模型发布清晰、有影响力且有价值。这将最大限度地发挥您的工作对 AI 社区的价值,并提高其可见性。期待您的贡献!

< > 在 GitHub 上更新