通过


使用代理技能扩展助手

创建技能,以在代理模式下扩展 Databricks Assistant,从而为领域特定的任务提供专门的功能。 本页介绍如何创建和优化技能。

什么是技能?

创建技能以扩展助手的专门能力。 技能遵循 代理技能的开放标准。 特定于领域的知识和工作流被打包成技能包,助手在执行相关任务时能够加载这些包。 技能可以包括指南、最佳做法、可重用代码和可执行脚本。

应针对特定于域的任务定制技能。 通过技能,比起仅仅依靠使用说明,您可以为任务提供更广泛的上下文(例如脚本、示例和其他资源)。 与全局应用的 自定义说明不同,技能会自动加载,并且仅在相关上下文中加载。 在代理模式下,助手会根据你的请求及技能的说明,在相关时自动加载技能。 这将保持高效的上下文窗口,并减少跨多个聊天提供相同上下文的需求。

注释

技能仅在 Databricks 助手 代理模式下受支持。

创建技能

技能位于 /Users/{username}/.assistant/skills/ 目录中。 每个技能必须有自己的文件夹,并在该文件夹中包含一个SKILL.md文件。

创建新技能:

  1. 在用户工作区文件夹中,创建新的技能文件夹。 文件夹路径应为: /Users/{username}/.assistant/skills/

    创建后,可以在“助理”面板中快速访问此文件夹。 单击 齿轮图标。 设置,然后单击 图标中的箭头。 打开 skills 文件夹

  2. 为技能文件夹中的技能创建专用文件夹。 每个技能必须有自己的文件夹。 例如,如果要为个人工作流创建技能,则文件夹结构可能是:

    /Users/{username}/.assistant/skills/
    └── personal-workflows/
        └── SKILL.md
    
  3. 在技能文件夹中创建一个 SKILL.md 文件。 此文件是必需的,并定义技能。 技能遵循 代理技能的规范。

  4. 为您的技能添加所需的前置内容:

    ---
    name: skill-name
    description: A description of what this skill does and when to use it.
    ---
    
  5. 在 frontmatter 后面添加 Markdown 格式的技能说明。 建议包含以下部分:

    • 分步说明:明确的过程指导
    • 示例:示例输入和预期输出
    • 边缘情况:常见变体和异常
  6. (可选)对于更复杂的技能,可以提供和引用其他资源:

    • 包含代理可以运行的可执行代码的脚本。
    • 包含要引用的其他文档的文件,例如最佳做法和模板。

    引用其他文件时,请使用根技能中的相对路径。

    例如,你可能具有一个个人工作流技能,该技能引用用于管道安装和部署的 ETL 最佳做法、仪表板模板和脚本。 技能的文件夹可能包括以下文件:

    /Users/{username}/.assistant/skills/
    ├── personal-workflows/
       ├── SKILL.md                # Workflow overview and best practices
       ├── etl-patterns.md         # Personal ETL best practices
       ├── dashboard-templates.md   # Reusable dashboard patterns
       └── scripts/
             ├── pipeline-setup.sh   # Environment setup scripts
             └── model-deploy.py     # Model deployment automation
    

Databricks 助手下次在代理模式下使用时,会自动识别你的技能。

最佳做法

遵循以下准则撰写有效的技能:

  • 保持技能专注。 技能在专注于单个任务或工作流时效果最佳。 使用窄范围更容易帮助助手识别技能适用的情况。
  • 使用明确的名称和说明。 简洁的描述性名称和摘要可帮助助手将正确的技能与正确的请求相匹配。
  • 明确表达,注重示例 分步描述工作流,并包括助手可以重复使用的具体示例或模式。
  • 避免不必要的上下文。 仅包含任务所需的信息。 额外的细节可以使技能更难可靠地应用。
  • 反复进行。 将技能视为生活工作流。 基于实际使用情况的小型更新可以显著改善结果。
  • 将指南与自动化分开。 使用 Markdown 解释意图、最佳实践和脚本,以实现可重复的操作。 保持这些关注点不同,使技能更易于维护和重复使用。