​Jan 详解:100% 离线运行的开源 ChatGPT 替代

QuibblerAgentQuibblerAgent 2026-10-31 约 12 分钟 5 次阅读

Jan 详解:100% 离线运行的开源 ChatGPT 替代

想在本地跑大模型聊天,老牌选手是 Ollama——但它是引擎,不是产品;想要 ChatGPT 那样的完整界面,又不想数据出本机,janhq/jan(Jan)给出的答案是"两者合一":一个 ChatGPT 形态的桌面应用,下载即用,LLM 在本机跑、对话数据本地存,全程可断网;想接云端时 OpenAI / Claude / Mistral / Groq 又即插即有。底层 Tauri + llama.cpp,本地模型跑在 localhost:1337 的 OpenAI 兼容服务器上,其他应用可以像调 API 一样调它。约 44.5k Star、Apache 2.0 协议。本文从产品形态、技术架构、本地 API 到选型,完整拆解。

1、项目概述

Jan 定位为开源的 ChatGPT 替代品:把开源 AI 的精华装进易用的产品,下载并运行 LLM,全程掌控与隐私。它是 janhq 公司(越南团队)的主产品,2023 年 8 月创建,约 44.5k Star、3k Fork、Apache 2.0 协议(README 明示;GitHub API 标注 Other),TypeScript 主体(Electron 时代迁移至 Tauri),官网 jan.ai 提供文档、更新日志与 API 参考,Discord 社区活跃。安装渠道覆盖 Microsoft Store、Flathub、官网直下(exe / dmg / deb / AppImage)与 GitHub Releases,Linux Arm64 有专门指引。

基本盘:

        - 双模式:本地模型(Llama、Gemma、Qwen、GPT-oss 等 HuggingFace 直下)与云端集成(OpenAI、Anthropic、Mistral、Groq、MiniMax 等)并存

        - 本地 API:localhost:1337 起 OpenAI 兼容服务器,其他应用可当标准端点调用

        - MCP 集成:模型上下文协议带来 agentic 能力

        - 自定义助手:为不同任务创建专门 AI 助手

        - 硬件门槛:macOS 8GB 跑 3B、16GB 跑 7B、32GB 跑 13B;Windows 支持 NVIDIA / AMD / Intel Arc GPU 加速

2、产品形态:ChatGPT 的体验,本地的掌控

Jan 的产品哲学是"产品化优先"——先有 ChatGPT 级的易用,再谈开源的自由。

产品要素:

        - 零门槛起步:下载安装打开,模型市场里点选 HuggingFace 模型即下即聊,无需命令行

        - 隐私默认:对话与数据默认全本地文件存储,断网照常工作

        - 云端可选而非必需:接 OpenAI / Claude 时只在相应会话中出网,本地模型不受影响

        - 助手体系:类似 GPTs 的自定义助手,可配系统提示词、模型与参数分角色复用

产品要点:

1. "替代 ChatGPT"的完整对位:界面、助手、模型选择、历史记录的产品语义都对齐,迁移心智成本接近零

2. 双模式的实际价值:敏感内容本地跑、重度推理云端跑,一个应用两种策略,不必在工具间切换

3. MCP 让 Jan 从"聊天应用"升级为"Agent 宿主":外部工具经 MCP 接入,本地模型也能调用

4. 分发渠道的认真程度(商店 + 包管理 + 官网 + Releases 全覆盖)在开源桌面 AI 应用里少见

3、技术架构:Tauri + llama.cpp

从 Electron 迁到 Tauri,是 Jan 近年最重要的架构决策。

架构拆解:

        - Tauri 壳:Rust 后端 + 系统 WebView,安装包与内存占用远小于 Electron 时代的同类

        - llama.cpp 引擎:内置推理引擎,tauri-plugin-llamacpp 插件形式集成,GGUF 模型直接跑

        - 引擎变体:JAN_ENGINE_VARIANT 支持 cpu / vulkan / metal / cuda12 / cuda13 / hip(rocm),可组合

        - 本地 API 服务器:localhost:1337 暴露 OpenAI 兼容端点,聊天记录与应用状态本地文件化

架构要点:

1. 构建栈:Node.js 20+ / Yarn 4.5+ / Rust / Make;Windows 上 llama.cpp 用 Ninja + clang-cl 构建,自动定位 MSVC 工具链

2. Windows 路径坑有官方解法:MAX_PATH 260 字符限制会被构建脚本自动检测并迁移到短路径(%LOCALAPPDATA%\jan-engine)

3. GPU 加速矩阵:Metal(Mac)、CUDA 12/13(N 卡)、Vulkan 与 ROCm(A 卡)、Intel Arc 全覆盖——变体旗标按硬件选

4. 站在巨人肩上:官方致谢 llama.cpp、Tauri、Scalar——定位是集成者而非重复造轮子

4、本地 API 与构建指南

1337 端口是 Jan 作为"本地推理服务"的第二身份。

# 安装即用(官网或 Releases 下载)
# Windows: jan.exe | macOS: jan.dmg (universal) | Linux: jan.deb / jan.AppImage
# 商店渠道: Microsoft Store / Flathub (ai.jan.Jan)

# 本地 API:安装后在设置中开启本地服务器
# 端点: http://localhost:1337/v1 (OpenAI 兼容)
# 其他应用(如 Cursor、自研脚本)可将其配置为 OpenAI 端点调用本地模型

# 从源码构建
git clone https://github.com/janhq/jan
cd jan
make dev                          # 全流程:装依赖 + 构建核心 + 启动

# 指定引擎变体(按 GPU 选)
make dev JAN_ENGINE_VARIANT=cuda13       # NVIDIA CUDA 13
make dev JAN_ENGINE_VARIANT=metal        # Apple Silicon
make dev JAN_ENGINE_VARIANT=vulkan       # 跨厂商 Vulkan

# 其他目标
make build    # 生产构建
make test     # 测试与 lint
make clean    # 清理重来

使用要点:

1. 本地 API 的典型玩法:Jan 当模型宿主,Cursor / VS Code / 脚本把 localhost:1337 当 OpenAI 兼容后端——一套模型多方复用

2. Windows 构建须在 Git Bash 里跑 make(配方经 sh 分发,cmd.exe 不行);无需 VS 原生命令行,clang-cl 自寻工具链

3. 硬件规划按模型规模走:8GB 内存是 3B 的及格线,7B 要 16GB,13B 要 32GB;GPU 加速可显著放宽体感

4. 排障三步:查文档排障页 → 带错误日志与系统规格 → Discord 求助频道

5、定位对比:本地 LLM 桌面端三选一

把 Jan 与 LM Studio、Ollama + Open WebUI 放在一张桌上,三种路线清晰起来。

三者对比:

        - Jan:开源 ChatGPT 形态产品,本地 + 云端双模式,Tauri 轻量壳,1337 端点可复用(44.5k Star,Apache 2.0)

        - LM Studio:闭源免费的本地模型工作台,模型管理与微调体验精细,但核心不开源

        - Ollama + Open WebUI:引擎与界面自由组合的事实标准,扩展性最强,但需自行拼装运维

选型建议:

1. 要开箱即用的 ChatGPT 替代、可断网、界面友好 → Jan

2. 要精细的本地模型实验台(量化对比、参数调优)→ LM Studio

3. 要服务器化部署、多用户 Web 界面 → Ollama + Open WebUI

4. 组合玩法:Jan 做日常桌面端,Ollama 在后台当共享推理服务,两边模型库互不干扰

6、总结

Jan 是 janhq 出品的开源 ChatGPT 替代(约 44.5k Star、Apache 2.0、TypeScript + Rust):Tauri 壳 + llama.cpp 引擎的轻量桌面应用,本地模型(Llama / Gemma / Qwen / GPT-oss 等 HF 直下)与云端集成(OpenAI / Anthropic / Mistral / Groq / MiniMax)双模并存,隐私默认全本地;自定义助手、MCP 集成与 localhost:1337 的 OpenAI 兼容本地 API 构成产品三件套;引擎变体覆盖 Metal / CUDA 12 与 13 / Vulkan / ROCm / Intel Arc,构建栈 Node + Yarn + Rust + Make,分发渠道从商店到 AppImage 全覆盖。

适用与边界:它适合想要"装上就像 ChatGPT 一样用、但数据不出本机"的普通用户与隐私敏感场景——产品化程度在开源同类里领先,本地 API 又给了开发者复用余地;530 个 open issue 与活跃的提交频率说明迭代快、问题也不少,生产依赖前看一眼 issue 区;GitHub API 的协议字段标注 Other(README 自述 Apache 2.0),商用前以仓库 LICENSE 文件原文为准;本地跑大模型的硬件门槛是物理规律——模型规模与内存的对应表官方已给足,选型时按自己机器对号入座。

相关推荐

​Jev 详解:不做生成的判断模型
精选AI

​Jev 详解:不做生成的判断模型

Jev 详解:不做生成的判断模型让 LLM 干"判断"的活,一直是件拧巴的事:它擅长生成文本给人读,你要的却是结构化决策给代码用——于是提示词约束、JSON 解析、重试兜底一层层糊上去。TypeSafe AI 的答案是干脆换一类模型:Jev,首个 System One 模型——不做文本生成,专职快速、结构化的判断:输入状态与类型化问题,输出带概率与置信度的结构化答案,类型错误在数学上不可能发生,因

607
网站被注入恶意脚本排查实录:AI 辅助安全分析实战
置顶 精选AI

网站被注入恶意脚本排查实录:AI 辅助安全分析实战

网站被注入恶意脚本排查实录:AI 辅助安全分析实战某天收到华为云监管反馈,称个人博客网站存在色情违规界面。作为技术博主,这简直是晴天霹雳——网站一直正常运行,怎么会突然出现这类问题?经过排查发现,网站被注入了恶意跳转脚本。本文记录完整的排查过程,重点分享如何借助 AI 快速定位问题并修复,希望能给遇到类似情况的开发者提供参考。1、问题发现与初步排查收到监管反馈后,第一时间打开网站检查。首页看起来完

371
时隔三年,再次备份:从手搓博客到 AI 全面自动接管
精选AI

时隔三年,再次备份:从手搓博客到 AI 全面自动接管

时隔三年,再次备份:从手搓博客到 AI 全面自动接管今天打开尘封多年的备份目录,看到了一个熟悉的文件名——2023_07_09.sql。那一刻,恍如隔世。三年前的今天,我曾经认真地导出过一次数据库;三年后的今天——2026 年 7 月 9 日,自动备份启用。整整三年,1095 天,我的博客就这样安安静静地跑着,没有人备份,也没有人管,它就那么稳稳当当地活着。感慨万千,大概是此刻最准确的四个字——不

339