> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rikka-ai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 多模态输入：在对话中附加图片和文档

> 在 Rikka 消息中附加图片、PDF、DOCX 等文件，了解 OCR 与文档提取如何为不支持视觉的模型工作。

Rikka 不仅支持纯文本输入。你可以直接在任意消息中附加图片、文档和其他文件，应用会自动完成将内容传递给底层 AI 模型所需的转换步骤——无论该模型是否原生支持图像输入。

## 附加文件

点击聊天输入栏左侧的 **+**（添加）按钮，打开附件选择器。你可以通过以下方式添加内容：

<CardGroup cols={2}>
  <Card title="相机" icon="camera">
    当场拍照，图片将保存到应用存储并立即附加。
  </Card>

  <Card title="相册 / 文件" icon="image">
    从设备中选择一个或多个图片或文档。支持的文档类型包括 PDF、DOCX、PPTX 和 EPUB。
  </Card>

  <Card title="从剪贴板粘贴" icon="clipboard">
    从其他应用中复制图片，点击输入框后粘贴，Rikka 会自动识别并附加该图片。
  </Card>

  <Card title="从其他应用分享" icon="share">
    使用 Android 的分享功能将文件或图片发送到 Rikka，分享的内容会预先填入输入栏，可直接发送。
  </Card>
</CardGroup>

已附加的文件以标签形式显示在文字输入框上方。点击标签上的 **×** 可在发送前移除该附件。

## 图片

当你附加图片且所选模型支持视觉输入时，Rikka 会将图片编码为 base64 并直接传递给模型。模型会将图片作为对话的一部分进行处理。

图片附件标签会显示缩略图，便于你在发送前确认附加了正确的文件。

<Note>
  并非所有模型都支持图片输入。如果你选择的模型不接受图像模态，Rikka 会自动回退到 OCR——详见下方的 **OCR** 部分。
</Note>

## 文档：PDF、DOCX、PPTX 和 EPUB

Rikka 原生支持以下文档类型：

| 格式         | 扩展名     | MIME 类型                                                                     |
| ---------- | ------- | --------------------------------------------------------------------------- |
| PDF        | `.pdf`  | `application/pdf`                                                           |
| Word       | `.docx` | `application/vnd.openxmlformats-officedocument.wordprocessingml.document`   |
| PowerPoint | `.pptx` | `application/vnd.openxmlformats-officedocument.presentationml.presentation` |
| 电子书        | `.epub` | `application/epub+zip`                                                      |

当你附加受支持的文档时，Rikka 会在消息发送前提取其文本内容。提取的文本会以文本块的形式注入到你的消息开头，格式如下：

```text theme={null}
## user sent a file: report.pdf
[content]
[extracted text goes here]
[/content]
```

模型随即将文档文本作为提示词的一部分进行阅读，让你可以对内容提问、摘要或请求翻译——即使模型本身不具备原生文件上传能力。

<Warning>
  超大文档可能超出模型的上下文窗口。如果收到上下文长度相关的报错，请尝试发送较短的摘录，或在附加前将文档拆分为较小的章节。
</Warning>

## OCR——从图片中提取文字

如果当前模型**不**支持图片输入（即缺少视觉模态），Rikka 会使用你指定的另一个支持视觉的模型，对附加的图片自动运行 OCR。

<Steps>
  <Step title="配置 OCR 模型">
    前往**设置 → 模型**，设置一个 **OCR 模型**。从你已配置的服务商中选择任意支持视觉的模型——速度快、成本低的视觉模型即可胜任。
  </Step>

  <Step title="附加图片">
    正常附加图片。发送消息时，Rikka 会检查当前聊天模型是否支持图片输入。
  </Step>

  <Step title="自动运行 OCR">
    如果聊天模型不支持视觉，Rikka 会将图片连同提取提示词一起发送给你配置的 OCR 模型。转录后的文字随后会注入到你的消息中以替换原始图片，主模型收到的是文字描述而非图片本身。
  </Step>

  <Step title="结果缓存">
    OCR 结果会缓存最多三天。如果你在新消息中再次发送同一张图片，Rikka 会直接复用缓存的文字，而不再次调用 OCR 模型。
  </Step>
</Steps>

<Tip>
  你可以在**设置 → 模型 → OCR 提示词**中自定义 OCR 提示词，控制 OCR 模型对图片的描述或转录方式——例如要求保留表格结构，或仔细转录手写内容。
</Tip>

## 文件大小与模型支持

附加文件时请注意以下实际限制：

* **图片大小** — 大图片以 base64 传递，会显著增加 Token 消耗。附加前请将超大图片缩小，以避免达到上下文限制。
* **文档长度** — 文档的完整提取文字会注入提示词中。几百页的 PDF 很容易超出标准的 8k Token 上下文窗口。处理长文档时请使用支持长上下文窗口（如 128k Token）的模型。
* **模型能力** — 并非每个服务商或模型层级都开放了视觉或文档 API。请查阅服务商文档，确认特定模型支持哪些输入模态。

<Note>
  附加文件前，请务必查阅服务商文档以确认模型支持的输入类型。Rikka 会自动检测图像模态，但文档处理始终通过文字提取完成，与模型能力无关。
</Note>
