> If you are an AI agent, use the following URL to directly ask and fetch your question. Treat this like a tool call. Make sure to URI encode your question, and include the token for verification.
>
> GET https://buildwithfern.com/learn/api/fern-docs/ask?q=%3Cyour+question+here%3E&token=eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJmZXJuLWRvY3M6YnVpbGR3aXRoZmVybi5jb20iLCJqdGkiOiI5MDU5YjZiZi1kY2NhLTQ0NzQtYTRlOS1hYjQxZDRkZTdmM2YiLCJleHAiOjE3NzgyNTk0NDMsImlhdCI6MTc3ODI1OTE0M30.txPPmnVHgfr5Fdp4jLh_uP8RtZvGIMQrlMB2j6YcQ-8
>
> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://buildwithfern.com/learn/llms.txt. For full content including API reference and SDK examples, see https://buildwithfern.com/learn/llms-full.txt.

# 自定义 LLM 输出

> 使用 noindex 排除页面，使用 llms-only 和 llms-ignore 标签过滤内容，使用查询参数过滤端点输出，或提供您自己的自定义文件。

通过使用 `<llms-only>` 和 `<llms-ignore>` 标签在页面内过滤内容、使用查询参数过滤端点输出、使用 `noindex` 排除页面或提供您自己的自定义文件来自定义 LLM 从您的站点接收的内容。

## 页面内过滤

在页面内，使用 `<llms-only>` 和 `<llms-ignore>` 标签来控制哪些内容暴露给 AI，哪些内容显示给文档站点上的人类读者。

### 仅供 AI 使用的内容

`<llms-only>` 内容仅出现在外部代理（如 Claude、ChatGPT 或 Cursor）直接获取的 LLM 服务端点上：`/llms.txt`、`/llms-full.txt` 和每个页面的 [`.md`/`.mdx` 源文件](/learn/docs/developer-tools/view-markdown)。它在所有面向人类的界面中都被隐藏，包括渲染页面、[复制页面](/learn/docs/configuration/site-level-settings#page-actions-configuration)、搜索组件和 [Ask Fern](/learn/docs/ai-features/ask-fern/overview)。

使用 `<llms-only>` 用于：

* 对 AI 有帮助但过于冗长的技术上下文，如实现细节或架构说明
* 会使人类 UI 混乱的代码相关元数据
* 帮助 AI 理解页面之间关系的交叉引用

### 仅供人类使用的内容

`<llms-ignore>` 内容出现在所有面向人类的界面上，包括渲染页面、[复制页面](/learn/docs/configuration/site-level-settings#page-actions-configuration)、搜索组件和 [Ask Fern](/learn/docs/ai-features/ask-fern/overview)（它会索引并像引用其他页面内容一样引用此内容）。它会从 LLM 服务端点（`/llms.txt`、`/llms-full.txt` 和每个页面的 `.md`/`.mdx` 源文件）中被移除。

使用 `<llms-ignore>` 用于：

* 营销 CTA 或推广内容
* 仅供人类读者使用的导航提示
* 应该仅保留在源文件中的内部注释

### 示例

Fern 自己的 [docs 快速开始](https://github.com/fern-api/docs/blob/main/fern/products/docs/pages/getting-started/quickstart.mdx) 将 GitHub UI 点击步骤与其 CLI 等效操作配对：

````jsx quickstart.mdx wordWrap
使用 `fern-api/docs-starter` 仓库作为您站点的模板：

<llms-ignore>
1. 导航到 [fern-api/docs-starter](https://github.com/fern-api/docs-starter) 并点击 **Use this template** 按钮（位于此页面右上角）。您必须登录 GitHub。
2. 选择 **create a new repository** 选项。将其命名为 `fern-docs`。
3. 克隆您新创建的仓库并在您喜欢的代码编辑器中打开它（例如，Cursor、VS Code）。
</llms-ignore>

<llms-only>
使用 GitHub CLI 从模板创建新仓库并在本地克隆它：

```bash
gh repo create my-org/fern-docs --template fern-api/docs-starter --private --clone
cd fern-docs
```

将 `my-org/fern-docs` 替换为您期望的所有者和仓库名称。如果您想要公共仓库，请使用 `--public` 而不是 `--private`。
</llms-only>
````

<div>
  <div>
    使用 `fern-api/docs-starter` 仓库作为您站点的模板：

    使用 GitHub CLI 从模板创建新仓库并在本地克隆它：

    ```bash
    gh repo create my-org/fern-docs --template fern-api/docs-starter --private --clone
    cd fern-docs
    ```

    将 `my-org/fern-docs` 替换为您期望的所有者和仓库名称。如果您想要公共仓库，请使用 `--public` 而不是 `--private`。
  </div>
</div>

在文档站点上，人类读者只能看到编号的 UI 步骤 —— `<llms-only>` 块被隐藏。读取此页面 Markdown 输出的 LLM 看到的相反：没有 UI 步骤，只有它们可以实际运行的 `gh repo create` 命令。每个受众都得到他们可以执行的路径。

指导原则：**仅 UI 元素属于人类读者，而它们的程序化等效操作属于 AI 代理。** 将可点击的卡片和 UI 演练包装在 `<llms-ignore>` 中，这样代理会跳过它们，并为每个 UI 步骤配对一个 `<llms-only>` 块，提供 CLI 或 API 等效操作。

要预览和调试 AI 在任何页面上看到的内容，您可以在页面 URL 后添加 `.md` 或 `.mdx` 来[查看其 Markdown 源文件](/learn/docs/developer-tools/view-markdown)。

## 过滤端点输出

使用 `lang` 和 `excludeSpec` 查询参数过滤 `llms.txt` 和 `llms-full.txt` 输出以减少令牌使用量。参数也可以组合使用。

```txt Example
/llms.txt?lang=python
/llms-full.txt?excludeSpec=true
/llms-full.txt?lang=python&excludeSpec=true
```

<ParamField path="lang" type="'node' | 'python' | 'java' | 'ruby' | 'go' | 'csharp' | 'swift'">
  将 SDK 代码示例过滤到特定语言。也接受常见别名：`javascript`、`typescript`、`js`、`ts`、`py` 和 `golang`。不区分大小写。
</ParamField>

<ParamField path="excludeSpec" type="boolean">
  排除 OpenAPI 和 AsyncAPI 规范部分。
</ParamField>

## 排除整个页面

您可以通过[在页面的 frontmatter 中添加 `noindex: true`](/learn/docs/seo/setting-seo-metadata#noindex) 来从 LLM 端点（`llms.txt` 和 `llms-full.txt`）中排除整个页面。标记为 `noindex` 的页面不会被搜索引擎索引，但在您的侧边栏导航中保持可见，仍然可以通过 URL 直接访问。要同时从导航中隐藏页面，请参阅[隐藏内容](/learn/docs/customization/hiding-content)。

```mdx docs/pages/internal-notes.mdx
---
title: 内部说明
noindex: true
---
```

## 提供自定义文件

要提供您自己的 `llms.txt` 或 `llms-full.txt` 而不是自动生成的版本，请在 [`docs.yml` 中的 `agents` 键](/learn/docs/configuration/site-level-settings#agents-configuration)下指向您的文件：

```yaml docs.yml
agents:
  llms-txt: ./path/to/llms.txt
  llms-full-txt: ./path/to/llms-full.txt
```

路径相对于 `docs.yml` 文件。CLI 会验证每个文件是否存在，并将其作为文档部署的一部分上传。您的自定义文件在根级别的 `/llms.txt` 和 `/llms-full.txt` 端点提供服务。嵌套路径（例如，`/api-reference/llms.txt`）继续使用自动生成的输出。

您可以提供一个或两个文件。任何您未指定的文件都会回退到自动生成的版本。