在 MarkFlowy 中使用 Ollama 与 Copilot
MarkFlowy 桌面版可以连接 Ollama,进行 AI 对话和 Copilot 补全。本地推理需要同时使用本地服务地址和已下载的本地模型;选择云端模型或远程地址时,请求会由对应服务处理。
1. 启动 Ollama 并检查模型
按照 Ollama 官方说明完成安装,启动应用或服务,下载适合当前硬件的本地文本生成模型。先确认模型在 Ollama 中能够正常回答,再配置 MarkFlowy。
ollama list
记录列表中的完整模型名称,包括标签;在 MarkFlowy 中使用相同名称。速度和内存使用取决于硬件、模型及上下文长度。短补全可以先尝试较小的模型,再用自己的文本比较建议质量。
本地默认地址为 http://localhost:11434。MarkFlowy 接受这个地址,也接受以 /api 结尾的地址,会统一处理请求路径。可检查模型列表接口:
curl http://localhost:11434/api/tags
2. 配置 AI 对话
- 打开 设置 → AI,找到 Ollama 配置。
- 使用默认本地地址,或填写自己的服务地址。普通本地 Ollama 不需要云端服务商的 API Key;有鉴权的远程网关可能需要请求头。
- 打开 AI 对话,选择 Ollama 和文本生成模型。MarkFlowy 会发现 Ollama 中的模型;发现不可用时,也可显式配置模型名称。
- 先发送一条不带文档上下文的短问题,再加入一份小文档,尝试生成摘要。
例如,准备一份包含三项会议决定的示例文档,然后提问:“请将这些决定总结成三个 Markdown 列表项,保留负责人和日期。”使用回答前,与原文核对。
3. 单独配置 Copilot
在设置中启用 Copilot,然后选择它自己的服务商和模型。对话中的模型选择不会替代 Copilot 配置;两者可以都使用 Ollama,也可以分别配置。
在 Markdown 段落中写几句话,将光标停在文本末尾。Copilot 会使用光标前后的文本和相邻段落,向模型请求简短续写。初次尝试使用较短文本,便于区分配置失败与模型响应较慢。
如果对话正常而补全没有反应,请检查 Copilot 是否启用、服务商是否正确、模型全名是否一致,以及模型是否具备文本生成能力。
哪些内容会发送给模型?
对话使用当前会话和你选择的文档上下文;Copilot 请求包含光标周围的段落文本。选择服务地址时,应将这些内容视为文档数据。
本地处理需要同时满足“本地模型”和“本地地址”。Ollama 也提供云端功能,其 FAQ 说明了关闭方法。云端服务商和远程 Ollama 服务各自具有不同的数据处理方式及费用。
常见问题
| 现象 | 检查方法 |
|---|---|
| Ollama 不可用 | 确认服务正在运行,并检查所配置地址的 /api/tags 是否响应。 |
| 找不到模型 | 与 ollama list 的完整名称核对,检查模型发现和文本生成能力。 |
| 对话正常,Copilot 无响应 | 检查 Copilot 单独的服务商、模型和启用状态。 |
| 远程服务返回 401 或 403 | 检查地址和服务要求的鉴权请求头。 |
| 回答很慢 | 缩短上下文、尝试较小模型,并在 Ollama 中直接比较同一问题。 |
当前桌面版的 AI 请求和模型发现使用 Tauri 原生 HTTP 客户端,无需先将 OLLAMA_ORIGINS 设为 * 或将 Ollama 暴露到所有网络接口。如果使用旧版浏览器客户端,且日志明确显示跨域错误,再按 Ollama 的来源配置说明为该客户端配置。连接另一台机器上的 Ollama 属于独立网络配置,不是本地使用的前置步骤。