为什么
我们的电脑和手机是我们最私密的物品。它们知道我们睡在哪里、爱着谁、害怕什么、凌晨三点在搜索什么。现在,一种人工智能站到了我们和它们之间:它读我们的文件,听我们的问题,记住我们告诉它的事。我们问它的事,连朋友都不会问。
这种智能几乎总是住在别人的服务器上。它的规则不经我们同意就会改变,我们的对话最终去往我们永远看不到的地方。我们不是它的主人,而是它的房客,房租就是我们的隐私。
谁控制了这种智能,谁就会比我们自己更了解我们。那个人应该是我们自己。
Joshua 是朝另一个方向的一次小小尝试:一个住在你电脑上的助手,你可以阅读、修改、关闭它。不是一项服务,而是一件属于你的工具。
原则
- 谁运行它,谁拥有它。住在别人电脑上的助手,是在为别人工作。Joshua 运行在你的电脑上。
- 理解就是自由。Joshua 的每个部分都可以阅读、解释和修改。没有黑箱,没有魔法,没有“相信我们”。
- 隐私是权利,不是设置。它不是藏在菜单里的一个开关。它是规则,任何人都不需要去申请。
- 我们的数据留在我们身边。Joshua 了解到的关于你的一切,都存放在你的电脑上,在你能打开的文件里。没有任何东西会在你不知情时离开。
- 智能应当服务于拥有它的人。它只对你负责:没有广告商,没有账号,没有人在看。只有在你选择时它才使用外部服务,而且随时可以关闭。
- 更慢、更小,但属于我们。我们接受一个更小、更慢、有时会出错的模型,换来一个属于我们、无需任何人许可就能持续运行的模型。
- 共享,而非出售。Joshua 是免费的,它的工作方式是公开的,连错误也一样,让任何人都能在此基础上继续构建。封闭的知识是少数人手中的权力。
实践
原则说起来容易。下面逐项说明它们意味着什么。
- 开放模型,为你的电脑挑选。安装程序查看内存和芯片,下载合适的模型。你随时可以添加更多或删除。
- 一个引擎,公开说明。模型运行在 Ollama 上,这是你电脑上的自由软件。如果你为某个对话选择了它的云端模型,那个对话会发送到 Ollama 的服务器,Joshua 会清楚地标明。哪些留在本地,哪些不会。
- 一切都在一个文件夹里。对话、文件、记忆和设置都是
~/AskJoshua 中的普通文件。你可以阅读、复制、备份或删除它们。
- 你能读懂的代码。Joshua 只是少量 Python 文件,原样安装,并以 AGPL 许可证发布在 GitHub 上。打开它们,修改它们,让 Joshua 给你讲解。
- 回答会注明来源。Joshua 上网搜索时,会告诉你每条信息来自哪里,方便你核实。
- 在你的机器上训练。你可以用自己的例子教 Joshua 你的风格。训练在你的电脑上进行,结果也留在那里。
- 坦诚面对局限。能装进笔记本电脑的模型比数据中心里的巨型模型更容易出错。它需要一台比较新的电脑。定时任务只在电脑开着、Joshua 打开时才运行。这些我们也写出来。
Joshua 与 Yattaphone
这份宣言最初是 Yattaphone 的宣言:一部你用树莓派和任何人都能买到的零件亲手组装的手机,每一步都有记录。一部属于你的手机,需要一个属于你的助手。Joshua 就是这个助手:先在电脑上,希望有一天能在手机本身上运行,不依赖任何人的服务器。
同一个理念,两种设备:你的硬件,你的数据,你的智能。
加入
Joshua 还没有完成,也永远不会完成。这正是关键所在。
- 安装它。然后告诉我们它哪里出错了。
- 修好一件事。一个 bug、一个缺失的功能、本网站上一句不清楚的话。
- 分享你学到的东西。每一个公开解决的问题,都让后来的人少一个问题。
我们不是请你把思想托付给又一家公司。我们是请你把它们留给自己。