跳转到主要内容
ClickHouse Assistant 聊天 agent 可通过 AGENTS.md 进行自定义,从而理解你的特定业务逻辑、数据结构和领域知识。AGENTS.md 是一种特殊的已保存查询,可作为叠加在 agent 系统提示之上的语义层。 通过创建 AGENTS.md 文件,你可以提供自定义指令。这些指令会在每次对话开始时注入,用于根据你的组织特有的需求、计算方式和约定来指导 SQL 查询生成和数据分析。

工作原理

当你在 Cloud Console 中保存一个名为 “AGENTS.md” (区分大小写) 的查询后:
  1. 发送消息时,ClickHouse Assistant 聊天 agent 会自动加载此文件
  2. 文件内容会被放入结构化内容标签中,并注入 agent 的系统提示
  3. 这些指令会应用于该服务中的所有 ClickHouse Assistant 聊天对话

创建 AGENTS.md

1

创建已保存查询

  1. 在 Cloud Console 中创建一个新查询
  2. 将名称准确设置为:“AGENTS.md” (区分大小写)
  3. 在查询文本编辑器中编写自定义说明 (不是实际的 SQL)
  4. 保存查询
2

添加说明

请使用清晰、可执行的语言来组织说明。包括:
  • 业务规则和计算逻辑
  • 数据结构指导
  • 领域专用术语
  • 常见查询模式
  • 性能优化规则

最佳实践

将上下文视为有限资源

上下文十分宝贵——每一个标记都会消耗智能体的“注意力预算”。就像人类的工作记忆有限一样,随着上下文变长,语言模型的表现也会逐渐下降。这意味着你需要找到尽可能少但信号最强的一组标记,以最大限度提高获得预期结果的可能性。

找到合适的抽象层级

在两个极端之间把握平衡:
  • 过于具体:硬编码脆弱的 if-else 逻辑,既容易出问题,也会增加维护复杂度
  • 过于模糊:只给出高层次指导,无法提供明确的信号,或错误地假定存在共享上下文
理想的抽象层级应该足够具体,能够有效引导行为;同时也要足够灵活,让模型可以运用有效的启发式方法。先在当前可用的最佳模型上使用一个尽量精简的提示词,再根据观察到的失败模式补充清晰的指令。

用结构化分节组织内容

使用 XML 标签或 Markdown 标题创建清晰、便于浏览的分节:

提供多样且具代表性的示例

示例就像“胜过千言万语的图片”。与其把所有边缘情况都塞进 prompt,不如精心挑选一组重点明确、类型多样的示例,清晰展现预期行为。

保持精简但完整

  • 仅包含常用的说明
  • 保持简洁——上下文过大会因“上下文腐化”而导致性能下降
  • 删除过期或很少使用的规则
  • 确保提供足够的信息来引导所需的行为
精简不一定意味着简短。你需要提供足够的细节,确保 agent 按预期行为执行,同时避免不必要的冗长。

示例:基于原始数据计算指标

当指标需要经过特定计算,而不能直接访问列时,请指导 agent:

示例:业务逻辑规则

定义特定业务领域的计算和分类:

示例:数据结构方面的特殊情况

说明非常规的数据格式或历史遗留的 schema 设计决策:

示例:领域相关术语

将业务术语对应到技术实现:
最后修改于 2026年6月12日