ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Portable-AI-USB架构深剖:Ollama+AnythingLLM如何搭建私有便携AI

Portable-AI-USB架构深剖:Ollama+AnythingLLM如何搭建私有便携AI Portable-AI-USB架构深剖OllamaAnythingLLM如何搭建私有便携AI【免费下载链接】Portable-AI-USBA 100% offline, fully portable, zero-trace AI (Ollama Llama 3 AnythingLLM) that runs natively from a USB drive on Windows and Mac.项目地址: https://gitcode.com/gh_mirrors/po/Portable-AI-USBPortable-AI-USB 是一个 100% 离线、完全便携的私有便携 AI 方案它把 Ollama 推理引擎、GGUF 大模型和 AnythingLLM 聊天界面整套打包进 U 盘在 Windows、Mac、Linux 上双击即用全程无需安装、数据零残留、断网也能聊。本文将拆解它的分层架构、安装流水线与零痕迹便携机制帮你彻底看懂这个开源项目是如何运转的。一、架构总览三层分工 整个项目只用了不到 10 个脚本文件就把私有 AI完整搬进了 U 盘。它的分层非常清晰层级角色位置U 盘内 推理引擎Ollama加载模型并做本地推理ollama/Windows/Linux、ollama_mac/Mac 模型层GGUF 权重 Modelfile 配置models/ 交互界面AnythingLLM 桌面客户端anythingllm/Mac 为anythingllm_mac/ 数据层聊天记录、向量库、个人设置anythingllm_data/ 控制层安装脚本 启动器项目根目录及linux/子目录U盘根目录 ├── 入口脚本 install.bat / install.sh只负责调度 ├── 核心脚本 install-core.ps1 / linux/install-core.sh真正干活 ├── ollama/ ← AI 引擎Ollama 可执行文件 data/ 模型库 ├── models/ ← *.gguf 权重 Modelfile-* 配置 installed-models.txt ├── anythingllm/ ← 聊天界面本体 └── anythingllm_data/ ← 你的所有数据100% 便携拔走即带走这种引擎—模型—界面—数据四分离的设计是架构的灵魂每一层都只依赖 U 盘内的路径互相之间通过本地回环地址127.0.0.1:11434通信因此 U 盘插到哪台电脑上整套系统就能在哪台电脑运行。二、安装架构脚本如何分工协作 ️2.1 入口与核心的两级结构项目刻意采用薄入口 厚核心的脚本分层同一套逻辑跨平台复用平台入口脚本核心逻辑附加能力Windowsinstall.batinstall-core.ps1PowerShell调用 AnythingLLM 官方安装器Linux / Maclinux/install.shlinux/install-core.shBash由 linux/preflight-check.sh 先行体检其中 Linux 侧最有意思的是预检脚本 linux/preflight-check.sh——它在安装前做四件事依赖检查确认curl、tar、zstd、lsblk等工具齐备U 盘识别通过lsblk/findmnt自动探测已挂载的可移动 USB 设备多盘时让用户选择空间与文件系统校验要求 ≥16 GB 可用空间推荐 32 GB并明确拦截 FAT32——因为它单文件 4 GB 上限会挡住 7 GB 的 GGUF 模型建议 exFAT读写速度基准测试写 128 MB 测试文件实测速度写入 ≥10 MB/s、读取 ≥20 MB/s 为及格线并据此推测你的 U 盘是 USB 2.0 还是 3.0太慢会直接阻断安装。这套飞行前检查Preflight的思路借鉴了航空领域先验硬件再装软件避免装到一半才发现 U 盘撑不住。2.2 六步安装流水线install-core.ps1 与 linux/install-core.sh 虽然语言不同但流程完全同构统一为六步步骤动作关键设计[1/6]交互式选模型支持多选1,3、全选all、自定义 GGUF 链接c[2/6]创建目录结构models/、ollama/、anythingllm/、anythingllm_data/一次建齐[3/6]下载 GGUF 模型先写.part临时文件校验大小达标才转正失败自动重试并记录错误清单[4/6]生成 Modelfile每个模型一份Modelfile-本地名写入温度、top_p、系统提示词[5/6]下载 Ollama 引擎解压出可执行文件放入ollama/目录[6/6]下载 AnythingLLMWindows 走官方安装器须手动选 U 盘路径Linux 直接下载 AppImageMac 解压 DMG 到 U 盘流水线结束后还有两个收尾动作是架构的点睛之笔模型导入临时拉起ollama serve用ollama create把每个 GGUF 注册成 Ollama 模型如nemomix-local再停掉服务。模型元数据落在ollama/data下即数据也留在 U 盘自动写配置生成anythingllm_data/storage/.env把 AnythingLLM 的 LLM 提供商指向外部 OllamaLLM_PROVIDERollama而非它内置的推理后端——这一步决定了后续对话走的是 U 盘里的模型。 整个安装是幂等的已下载的文件按大小校验自动跳过重跑install.bat/install.sh既能补齐失败项也能追加新模型。三、核心机制数据凭什么零残留 Portable便携与Zero-trace零痕迹是这个项目的两个卖点其实现全靠环境变量重定向几乎零侵入3.1 三组关键变量把一切锁进 U 盘以 Linux 启动器 linux/start-linux.sh 为例它启动时导出OLLAMA_MODELS→U盘/ollama/dataOllama 的模型库位置STORAGE_DIR→U盘/anythingllm_dataAnythingLLM 官方可便携化变量XDG_CONFIG_HOME/XDG_DATA_HOME/XDG_CACHE_HOME→ 均指向 U 盘兜住 Electron 应用的配置/缓存写盘。Windows 侧 start-windows.bat 更进一步直接把APPDATA、LOCALAPPDATA甚至USERPROFILE重定向到anythingllm_data/等于给 Electron 套了一层沙箱——应用以为自己写的是系统目录实际全部落在 U 盘。3.2 跨机迁移的缓存清道夫Electron 应用会把绝对路径缓存写进config.json、Cache、Code Cache等文件这是 U 盘插到另一台电脑后弹出 JavaScript error 的元凶。三个平台的启动器在每次启动前统一执行清除缓存操作用每次抹掉路径记忆换来了真正的跨机可用。3.3 各平台的细节妥协场景处理方式Mac 首次运行start-mac.command 自动下载 Ollama 与 AnythingLLM DMG解压到 U 盘并执行xattr -rc移除 macOS 隔离属性实现装进 U 盘而不是装进系统Linux 无 FUSE 环境AppImage 探测失败时自动切换--appimage-extract-and-run模式Windows 手动选路径AnythingLLM 安装器无法静默定位 U 盘安装时须人工 Browse 到anythingllm文件夹——这是全项目唯一需要人工介入的环节四、运行架构一次会话的完整生命周期 ⚡以 linux/start-linux.sh 为例双击start-windows.bat/start-mac.command后实际发生的事读取模型清单从models/installed-models.txt第一行取出默认模型名显示已装模型列表自愈配置检查.env若缺失或误用了 AnythingLLM 内置 Ollamaanythingllm_ollama则自动重写为外部引擎配置健康自检确认ollama可执行文件与 AnythingLLM 客户端均存在缺一即提示先跑安装脚本清理路径缓存见上文 3.2拉起引擎后台执行ollama serve监听127.0.0.1:11434——只绑回环地址局域网内其他设备也访问不到天然安全启动界面用--user-data-dir指向 U 盘数据目录打开 AnythingLLM优雅关机终端按回车后依次 kill 两个进程并提示可安全弹出 U 盘。仓库里还有一个进阶版启动器 optimiced.batELITE EDITION在标准流程之上增加了启动前强杀残留进程、对 Ollama 做/api/tags健康轮询、以更高进程优先级启动引擎、并为 AnythingLLM 追加--disable-metrics、--disable-breakpad等关闭遥测的参数——属于同一架构的强化实现可以当作二次开发的参考范本。五、模型生态6 个预设 自定义 ️模型目录在 install-core.ps1$ModelCatalog与 linux/install-core.shMODEL_CATALOG中同构维护全部采用 Q4_K_M 量化#模型体积定位1NemoMix Unleashed 12B~7.0 GB⭐ 推荐2Dolphin 2.9 Llama 3 8B~4.9 GB通用3Mistral 7B Instruct v0.3~4.1 GB推理/编码强4Qwen 2.5 7B Instruct~4.7 GB多语言5Llama 3.2 3B Instruct~2.0 GB轻量6Phi-3.5 Mini 3.8B~2.2 GB轻量C自定义 GGUF不限粘贴直链即可自动建配置每个模型的人设由 Modelfile 固化FROM指向 GGUF 权重、PARAMETER固定 temperature 0.7 / top_p 0.9、SYSTEM写入系统提示词。想调上下文长度改anythingllm_data/storage/.env里的OLLAMA_MODEL_TOKEN_LIMIT默认 4096即可——注意重跑安装脚本会把它重置回 4096。U 盘容量速查单个轻量模型 16 GB 起步装 NemoMix 12B 建议 32 GB全量 6 模型约 25 GB建议 64 GB。六、快速上手3 步搭好你的私有便携AI 前提一块 ≥16 GB 的 U 盘务必格式化为 exFAT 首次联网下载。拷贝把仓库全部文件复制到 U 盘根目录安装一次性Windows 双击 install.batLinux/Mac 运行 linux/install.sh会自动先跑预检按菜单选模型 → AnythingLLM 安装界面出现时Browse 选到 U 盘的anythingllm文件夹→ 等待完成启动Windows 双击 start-windows.batMac 双击 start-mac.command首次会自动下载 Mac 引擎Linux 先chmod x后运行bash start-linux.sh。聊天窗口弹出即大功告成。在 AnythingLLM 的 Settings → LLM 中可自由切换 U 盘里的任意模型用完在终端按任意键安全关机、弹出 U 盘即可。架构要点回顾 四分离 回环通信引擎、模型、界面、数据各自独立目录仅通过127.0.0.1:11434内网通信这是整机可迁移的基石薄入口/厚核心.bat与.sh只做调度PowerShell 与 Bash 两套核心脚本共享同一套六步流水线维护成本低幂等安装.part临时文件 大小校验 自动重试任何一步失败都能安全重跑环境变量即沙箱OLLAMA_MODELS、STORAGE_DIR、XDG_*、APPDATA多重重定向让 Electron 应用在不知不觉中只写 U 盘预检先行Linux 侧用真实的磁盘速度基准测试代替经验值把U 盘太慢这类隐患挡在安装之前。不足约千行的脚本Portable-AI-USB 展示了用最小代码实现最大可迁移性的架构思路——对于想给公司、团队或个人打造离线 AI 工具箱的读者这份源码本身就是一份绝佳的便携软件设计教程。【免费下载链接】Portable-AI-USBA 100% offline, fully portable, zero-trace AI (Ollama Llama 3 AnythingLLM) that runs natively from a USB drive on Windows and Mac.项目地址: https://gitcode.com/gh_mirrors/po/Portable-AI-USB创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表