Loading... # Project N.O.M.A.D. 离线生存计算机系统 # 一、概述 ## 1. 项目简介 ### A. 是什么 Project N.O.M.A.D.(Node for Offline Media, Archives, and Data)是一个自包含的离线优先知识和教育服务器。它通过 Docker 容器化技术整合了关键工具、知识库和本地 AI,能够在任何时间、任何地点保持信息获取和赋能能力。 ### B. 为什么需要 - 网络基础设施可能因自然灾害、战争或其他突发事件而中断 - 某些环境下互联网访问受限或不可用 - 需要保证数据隐私和完全的本地控制 - 教育资源在偏远地区的可用性问题 ### C. 能做什么 - 离线访问完整的维基百科、医学参考资料和电子书 - 本地 AI 聊天助手,支持文档上传和语义搜索 - Khan Academy 课程学习平台,支持进度跟踪 - 离线地图下载和导航 - 数据加密、编码和分析工具 - 本地笔记系统 ## 2. 核心特性 ### A. 完全离线运行 系统仅在初始安装时需要网络连接,之后可完全脱机运行,无内置遥测功能。 ### B. 容器化架构 基于 Docker 的容器编排,所有工具和服务以容器形式运行,便于管理和更新。 ### C. 统一管理界面 提供 Web 界面(Command Center)统一管理所有服务和资源。 ### D. 本地 AI 能力 通过 Ollama 和 Qdrant 实现本地大语言模型和向量数据库,支持 RAG(检索增强生成)。 ## 3. 项目背景 ### A. 开发团队 由 Crosstalk Solutions 开发和维护,采用 Apache 2.0 开源许可证。 ### B. 社区支持 拥有活跃的 Discord 社区和社区排行榜,用户可以分享硬件配置和性能数据。 # 二、系统架构 ## 1. 整体架构 Project N.O.M.A.D. 采用分层架构设计,通过 Docker 容器化技术整合多个独立服务。 ```mermaid graph TB subgraph 用户层 Browser[Web 浏览器] end subgraph 管理层 CC[Command Center 管理界面] API[REST API] end subgraph 服务层 Kiwix[Kiwix 离线知识库] Kolibri[Kolibri 教育平台] Ollama[Ollama AI 服务] Qdrant[Qdrant 向量数据库] CyberChef[CyberChef 数据工具] FlatNotes[FlatNotes 笔记服务] Maps[ProtoMaps 离线地图] end subgraph 数据层 MySQL[(MySQL 数据库)] ZIM[ZIM 文件存储] Content[用户内容存储] end subgraph 基础设施层 Docker[Docker 容器引擎] Linux[Linux 操作系统] end Browser --> CC CC --> API API --> Kiwix API --> Kolibri API --> Ollama API --> Qdrant API --> CyberChef API --> FlatNotes API --> Maps Ollama --> Qdrant CC --> MySQL Kiwix --> ZIM FlatNotes --> Content API --> Docker Kiwix --> Docker Kolibri --> Docker Docker --> Linux ```  ## 2. 组件说明 ### A. Command Center 核心管理界面,提供统一的服务管理、配置和用户交互入口。 ### B. 服务层组件 - Kiwix:离线知识库服务,支持 ZIM 格式内容 - Kolibri:离线教育平台,支持课程管理和进度跟踪 - Ollama:本地大语言模型运行时 - Qdrant:向量数据库,用于语义搜索和 RAG - CyberChef:多功能数据处理工具 - FlatNotes:Markdown 笔记应用 - ProtoMaps:离线地图瓦片服务 ### C. 数据存储 - MySQL:存储元数据、配置和用户数据 - ZIM 文件:存储离线知识库内容 - 本地文件系统:用户上传内容和笔记 ## 3. 交互流程 ### A. AI 对话流程 ```mermaid sequenceDiagram participant U as 用户 participant CC as Command Center participant O as Ollama participant Q as Qdrant participant KB as 知识库 U->>CC: 发送问题 CC->>Q: 向量搜索 Q-->>CC: 返回相关文档 CC->>O: 构建提示词 O-->>CC: 返回响应 CC-->>U: 显示答案 Note over U,KB: 用户可上传文档 U->>CC: 上传文档 CC->>KB: 存储文档 CC->>Q: 建立向量索引 ```  ### B. 内容获取流程 初始安装时从互联网下载所有依赖和容器镜像,之后完全离线运行。 # 三、功能模块 ## 1. 离线知识库 ### A. Kiwix 集成 通过 Kiwix 提供 ZIM 格式的离线内容访问,包括: - 完整维基百科(无图片、有图片、全版本) - 医学参考资料(如维基医学) - 生存指南和急救手册 - 电子书和文档库 ### B. 内容管理 Command Center 提供: - ZIM 文件选择器 - 内容库管理 - 内容浏览器 ## 2. AI 助手 ### A. 本地 LLM 通过 Ollama 运行本地大语言模型,支持多种开源模型: - 小型模型(1-3B):适合基础硬件 - 中型模型(3-8B):需要较好的 CPU/iGPU - 大型模型(7B+):需要专用 GPU ### B. RAG 功能 - 文档上传和解析 - Qdrant 向量搜索 - 语义检索增强生成 ### C. 性能基准 根据社区硬件排行榜数据: - 集成显卡:5-55 tokens/sec - RTX 3060:约 100-800 tokens/sec - RTX 3090:可运行 13B+ 参数模型 ## 3. 教育平台 ### A. Kolibri 集成 提供 Khan Academy 课程,支持: - 多学科视频课程 - 练习题和测验 - 进度跟踪 - 多用户支持 ### B. 离线地图 基于 ProtoMaps 提供: - 区域地图下载 - 搜索和导航功能 - 离线地图瓦片服务 ## 4. 工具集 ### A. CyberChef 多功能数据处理工具,支持: - 加密和解密 - 编码转换 - 数据格式转换 - 哈希计算 - 数据分析 ### B. FlatNotes 本地笔记应用,支持: - Markdown 编辑 - 笔记分类 - 搜索功能 ### C. 系统基准测试 内置硬件评分工具: - NOMAD 评分系统 - 社区排行榜对比 - 性能优化建议 # 四、安装部署 ## 1. 系统要求 ### A. 最低配置 - 处理器:2 GHz 双核或更好 - 内存:4 GB RAM - 存储:至少 5 GB 可用空间 - 操作系统:基于 Debian 的 Linux(推荐 Ubuntu) - 网络:安装时需要稳定的互联网连接 ### B. 推荐配置(AI 功能) - 处理器:AMD Ryzen 7 或 Intel Core i7 或更好 - 内存:32 GB RAM - 显卡:NVIDIA RTX 3060 或 AMD 同等级别或更好 - 存储:至少 250 GB SSD - 操作系统:Ubuntu 22.04+ 或 Debian 12+ ## 2. 快速安装 ### A. 一键安装脚本 适用于基于 Debian 的操作系统: ```bash sudo apt-get update && sudo apt-get install -y curl && \ curl -fsSL https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/main/install/install_nomad.sh -o install_nomad.sh && \ sudo bash install_nomad.sh ``` ### B. 访问服务 安装完成后,在浏览器中访问: - 本地:http://localhost:8080 - 远程:http://设备IP:8080 ### C. 首次配置 运行设置向导: - 选择要安装的内容集合 - 配置 AI 模型 - 下载初始内容 ## 3. 高级安装 ### A. Docker Compose 方式 适合需要自定义配置的高级用户: ```bash # 下载模板文件 curl -fsSL https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/main/install/management_compose.yaml -o docker-compose.yml # 编辑配置文件 nano docker-compose.yml # 启动服务 docker compose up -d ``` ### B. 自定义选项 - 端口配置 - 存储路径 - 环境变量 - 资源限制 ## 4. 管理脚本 安装完成后,以下脚本位于 /opt/project-nomad 目录: ```bash # 启动所有容器 sudo bash /opt/project-nomad/start_nomad.sh # 停止所有容器 sudo bash /opt/project-nomad/stop_nomad.sh # 更新 Command Center sudo bash /opt/project-nomad/update_nomad.sh ``` ## 5. 卸载 ```bash curl -fsSL https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/main/install/uninstall_nomad.sh -o uninstall_nomad.sh && \ sudo bash uninstall_nomad.sh ``` # 五、硬件配置指南 ## 1. 预算配置($150-$300) ### A. 硬件规格 - 设备:翻新迷你 PC 或小型台式机 - 处理器:Intel Core i5/i7(8代+)或 AMD Ryzen 5 - 内存:16-32 GB DDR4 RAM - 存储:500 GB SSD - 显卡:集成显卡 ### B. 性能预期 NOMAD 评分:15-40 - 完整的维基百科、地图和教育平台 - 基础 AI 聊天(1-3B 参数模型) - 生成速度:5-20 tokens/sec ### C. 适用场景 离线知识库访问、基础 AI 对话、教育学习 ## 2. 推荐配置($500-$800) ### A. 硬件规格 - 设备:Minisforum、Beelink 或类似紧凑型迷你 PC - 处理器:AMD Ryzen 7/9(8700G/8845HS/7840HS) - 内存:32 GB DDR5 RAM - 存储:1 TB NVMe SSD - 显卡:集成 AMD Radeon 780M/890M ### B. 性能预期 NOMAD 评分:80-95 - AI 生成速度:30-55 tokens/sec - 支持 3-8B 参数模型 - 流畅的对话体验 ### C. 适用场景 完整的 Project N.O.M.A.D. 体验,社区最流行的配置 ## 3. 高性能配置($1000+) ### A. 硬件规格 - 设备:桌面 PC 或带 eGPU 的迷你 PC - 处理器:AMD Ryzen 7/9 或 Intel Core i7/i9 - 内存:32-64 GB RAM - 存储:1-2 TB NVMe SSD - 显卡:NVIDIA RTX 3060 12GB 或更好 ### B. 性能预期 NOMAD 评分:85-100 - RTX 3060:100+ tokens/sec - RTX 3090:可运行 13B+ 参数模型 - 支持 7B 模型极速响应 ### C. 适用场景 重度 AI 工作负载、大型模型运行、专业用途 ## 4. 离网供电 ### A. 太阳能供电 - 迷你 PC 功耗:15-65W - 推荐配置:太阳能板 + 电池 + UPS ### B. 网络共享 - 连接 WiFi 路由器或接入点 - 允许多设备同时访问 # 六、使用指南 ## 1. Command Center 界面 ### A. 主要功能 - 服务状态监控 - 内容库管理 - AI 聊天界面 - 设置向导 ### B. 内容管理 - 浏览已安装的 ZIM 文件 - 下载新的内容包 - 管理教育课程 ## 2. AI 聊天使用 ### A. 开始对话 在 AI Chat 模块中: - 选择已安装的模型 - 输入问题或提示词 - 查看响应结果 ### B. 上传文档 - 支持多种文档格式 - 自动建立向量索引 - 基于文档内容的问答 ## 3. 系统基准测试 ### A. 运行测试 在 Command Center 中运行 System Benchmark: - 测试 CPU 性能 - 测试 GPU 性能(如有) - 生成 NOMAD 评分 ### B. 社区对比 - 访问排行榜网站 - 查看相似配置的性能 - 获取优化建议 # 七、安全与隐私 ## 1. 隐私保护 ### A. 零遥测设计 Project N.O.M.A.D. 不包含任何遥测功能,完全本地运行。 ### B. 网络检测 系统通过访问 Cloudflare 的 1.1.1.1 端点检测网络连接状态,仅用于判断是否在线。 ## 2. 安全考虑 ### A. 无认证机制 默认情况下不包含身份认证,任何人都可以访问所有服务。 ### B. 网络隔离 推荐的安全实践: - 使用网络级访问控制 - 通过防火墙管理端口暴露 - 不建议直接暴露到公网 ### C. 多用户场景 未来版本可能添加可选的认证层,支持: - 家长控制 - 教师和管理员账户 - 不同权限级别 ## 3. 端口管理 通过防火墙规则控制哪些服务暴露给网络: - Web 界面:默认 8080 - 其他服务端口可根据需要开放或关闭 # 八、社区与资源 ## 1. 官方资源 - 项目网站:https://www.projectnomad.us/ - GitHub 仓库:https://github.com/Crosstalk-Solutions/project-nomad - Discord 社区:https://discord.com/invite/crosstalksolutions - 硬件指南:https://www.projectnomad.us/hardware - 排行榜:https://benchmark.projectnomad.us/ ## 2. 贡献指南 项目欢迎社区贡献,流程如下: - 先创建 Issue 讨论变更 - Fork 仓库并创建分支 - 遵循代码规范 - 提交 Pull Request - 使用 Conventional Commits 格式 ## 3. 版本管理 项目使用语义化版本,版本号定义在根目录的 package.json 中。发布说明存储在 admin/docs/release-notes.md。 *** ## 参考资料 1. [Project N.O.M.A.D. GitHub Repository](https://github.com/Crosstalk-Solutions/project-nomad) 2. [Project N.O.M.A.D. Official Website](https://www.projectnomad.us/) 3. [Hardware Guide](https://www.projectnomad.us/hardware) 4. [Community Leaderboard](https://benchmark.projectnomad.us/) 最后修改:2026 年 03 月 22 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏