Electron + Ollama Ollama+ NPM NPM + MacOS+ Windows+ Linux+ Mistral-7B

本地桌面应用内嵌 Ollama 运行 Mistral-7B,实现数据不出本的文档问答。

Ollama 提供跨平台 LLM 运行 API,chatd 检测到本地实例直接复用,否则自动启动并管理其生命周期。

✓ 数据完全留在本机✓ 开箱即用无需另装依赖 ✕ Windows 版未签名有警告✕ MacOS 打包需开发者证书

方案简介

Chatd 是一个桌面应用程序,让你使用本地大语言模型(Mistral-7B)与自己的文档对话。它的核心卖点是隐私:所有数据都保留在你的电脑上,绝不会发送到云端。与其他「本地文档问答」应用不同的是,chatd 将本地 LLM 运行器打包在应用内——你不需要安装任何额外的东西,只需运行可执行文件即可。底层通过 Ollama 提供跨平台的 LLM 运行器 API;如果本地已有 Ollama 实例在运行,chatd 会自动复用,否则会自动启动一个 Ollama 服务并管理其生命周期。适合对数据隐私敏感、希望离线与文档交互的个人用户和团队。

亮点与能力

  • 使用本地大语言模型(Mistral-7B)与文档对话
  • 所有数据保留在本机,不发送到云端,完全私有安全
  • LLM 运行器内置于应用中,无需额外安装
  • 自动检测并复用已运行的本地 Ollama 实例
  • 无本地实例时自动启动 Ollama 服务并管理其生命周期
  • 跨平台支持 MacOS、Windows、Linux
  • 支持通过 Ollama 官方 release 替换/更新不同平台的运行器

组成与分工

  • Chatd:桌面应用本体,提供与文档对话的界面,负责 Ollama 服务的启动与生命周期管理
  • Ollama:LLM 服务器,提供跨平台的 LLM 运行器 API,实际执行模型推理
  • Mistral-7B:默认使用的本地大语言模型,负责理解文档并生成回答
  • Electron:用于将应用打包为跨平台桌面可执行文件(通过 npm run package
  • npm:开发期依赖安装与开发启动,以及应用打包分发

前置要求

  • 支持的操作系统:MacOS、Windows、Linux
  • 普通用户:只需从 chatd.ai 或 GitHub releases 下载最新版本,无需额外安装
  • 开发者:需要 Node/npm 环境
  • MacOS 打包分发:需要 Apple 开发者证书、Apple ID、Apple Team ID 及 app-specific password

开发环境安装命令(根目录执行):

bash
npm install
npm run start

实施步骤

1. 下载应用

chatd.ai 或 GitHub releases 页面下载最新版本。

2. 解压并运行

解压下载的文件,运行 chatd 可执行文件即可。如果本地没有 Ollama 实例,chatd 会自动启动 Ollama 服务器并管理其生命周期。

3.(可选)自行打包分发

MacOS:

  1. 从 Ollama 官方 releases 下载最新的 ollama-darwin
  2. 赋予可执行权限:chmod +x path/to/ollama-darwin
  3. 将其复制到 chatd/src/service/ollama/runners 目录;
  4. 可选:设置签名环境变量:

bash
APPLE_ID=your_apple_id@example.com
APPLE_IDENTITY="Developer ID Application: Your Name (ABCDEF1234)"
APPLE_ID_PASSWORD=your_apple_id_app_specific_password
APPLE_TEAM_ID=ABCDEF1234

  1. 运行 npm run package 打包。

Windows:

  1. 下载 ollama-windows-amd64.zip
  2. 将 zip 内容复制到 chatd/src/service/ollama/runners/
  3. 运行 npm run package

Linux:

  1. 下载 ollama-linux-amd64
  2. ollama 可执行文件复制到 chatd/src/service/ollama/runners/ollama-linux
  3. 运行 npm run package

使用与配置要点

  • 运行 chatd 可执行文件后即可直接使用;若本地已有 Ollama 实例运行,chatd 会自动使用它,否则自动启动并管理一个新实例
  • 验证成功:应用能正常启动并使用本地 Mistral-7B 与文档对话,且数据不出本机
  • 日常使用无需任何额外配置,所有 LLM 推理均在本机完成

注意事项与常见问题

  • Windows 版应用未签名,运行时会出现警告
  • MacOS 上跨机器运行需要用开发者证书对应用签名,需准备 Apple ID、Apple Team ID 和 app-specific password
  • 打包时需将对应平台的 Ollama 运行器放入 chatd/src/service/ollama/runners 目录,注意各平台命名不同(如 Linux 为 ollama-linux

优缺点

  • ✓ 数据完全留在本机
  • ✓ 开箱即用无需另装依赖
  • ✕ Windows 版未签名有警告
  • ✕ MacOS 打包需开发者证书

出处

本方案挖掘自开源项目 BruceMacD/chatd,方案内容与实施命令均来自其 README 原文。

方案出处
BruceMacD/chatd:Chat with your documents using local AI
1080 star Chat with your documents using local AI

本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。