本文小节On this page
Néstor Daza 在 MongoDB 官方访客博客发布文章,介绍其正在开发的个人 AI 聊天工作区 Claudius。这个项目试图以 MongoDB 作为唯一数据基础设施,通过 AWS Bedrock 调用 Claude 模型,并在后续系列文章中公开代码。对开发者而言,该项目的看点不在于“复制”一个成熟商业产品,而在于展示一个基于大模型的聊天应用如何处理会话、检索、长期记忆、后台任务和成本控制等关键工程问题。
摘要
Claudius 是一个面向个人使用的 Claude 风格聊天应用,由 Néstor Daza 发起并记录开发过程。根据来源文章,该应用将使用 MongoDB Atlas 免费层运行,后端数据能力尽量全部由 MongoDB 承担,包括用户与会话存储、智能体工作状态、向量检索以及后续可能出现的任务队列。模型层则通过 AWS Bedrock 接入 Claude,嵌入模型使用 Voyage AI。作者强调,Claudius 不是商业产品,也不隶属于 Anthropic,更不意在替代 Claude,而是一个学习型、个人化项目。
项目计划分为六个阶段推进:从数据模型、认证和角色系统开始,逐步加入流式聊天、文件上传与检索、跨会话长期记忆、后台研究任务、用量计量和成本控制。每个阶段都会在 GitHub 发布公开代码,后期还计划开放一个受限的小规模公共体验层,预计部署在 askclaudius.dev。来源未提及该站点当前是否已经上线。
关键点
- Claudius 是一个个人 Claude 风格聊天工作区,作者将其定位为学习项目和技术展示,而非商业化产品。
- MongoDB 被设计为整个应用的唯一数据底座,覆盖文档存储、向量检索、状态持久化等能力。
- Claude 模型通过 AWS Bedrock 提供,便于在不同能力和成本的模型之间切换。
- Voyage AI 负责生成嵌入向量,其多语言能力被作者视为重要因素,尤其是英语和西班牙语场景。
- 项目计划以六个阶段建设,并为每个阶段提供公开代码。
- 作者明确表示 Claudius 与 Anthropic 无关联,也未获得其背书。
背景:为什么要重建一个“Claude 风格”工具
来源文章显示,Néstor Daza 日常使用 Claude 处理研究、文本加工和代码编写等工作。在已有 Claude 可用的情况下,他仍选择开发 Claudius,主要动机是通过亲手构建来理解一个 AI 聊天应用背后的工程结构。
作者认为,成熟产品往往隐藏了大量基础设施细节。自己实现智能体循环、状态管理、检索和记忆机制,可以更直接地理解这些系统如何运转。除此之外,他也希望拥有一个由自己控制数据的聊天应用,让系统能够跨会话记住某些事实,并将这些信息保存在自己运行的数据库中。
这一定位决定了 Claudius 的范围相对克制。它不是一个面向市场竞争的产品,也没有增长目标。作者计划将功能集中在几个核心能力上:流式对话、模型切换、持久化记忆、文件问答,以及可以基于网络来源完成较长研究任务的智能体能力。
技术路线:MongoDB 作为唯一数据底座
Claudius 最重要的技术选择,是将 MongoDB 作为项目中唯一的数据存储系统。来源文章指出,通常一个聊天类 AI 应用可能会同时使用数据库、缓存、向量数据库和队列系统,分别处理用户信息、会话状态、检索和后台任务。作者则希望用 MongoDB 承担这些能力,以减少多系统同步和运维复杂度。
在这一架构中,MongoDB 的文档模型用于保存用户、会话和应用状态;Atlas Vector Search 用于支持向量检索;未来后台任务所需的队列能力也计划由 MongoDB 承担。作者认为,这种设计可以让开发者围绕一个数据库进行建模和推理,而不是维护多个独立系统。
嵌入模型方面,项目使用 Voyage AI。文章特别提到,Voyage AI 已成为 MongoDB 的一部分,因此数据层和检索相关能力来自同一生态,减少了额外供应商管理。作者还强调 Voyage 模型的多语言能力,称自己在 AMER 和 LATAM 工作,英语和西班牙语都会涉及;在西班牙语场景中,嵌入质量会直接影响检索效果。
面向有关系型数据库背景的读者,作者表示后续文章会在涉及文档模型取舍时解释其与关系模型的差异。例如,当某个文档模型设计替代了传统的关联表或额外服务时,系列文章会说明对应的关系型实现方式和相关权衡。
模型层:通过 AWS Bedrock 调用 Claude
虽然 MongoDB 被设定为 Claudius 的数据核心,但模型层并不由 MongoDB 承担。根据来源文章,Claudius 使用的所有 Claude 模型都将通过 AWS Bedrock 提供。
作者给出的理由主要是便利性和易用性。通过 Bedrock,在请求中修改一个字符串即可从速度更快、成本更低的模型切换到能力更强但更慢的模型。这使得在界面中实现模型选择器变得相对简单。同时,将模型访问放在同一个云服务关系内,也便于集中管理凭证和账单。对于一个可能产生调用费用的应用来说,统一查看和控制成本是重要需求。
来源未提及 Claudius 将具体使用哪些 Claude 模型,也未说明预计的调用成本、延迟指标或性能基准,因此这些部分仍需等待后续文章披露。
功能边界:个人项目而非 Claude 替代品
Claudius 当前被限定为四类核心功能。第一,它支持流式对话,并允许用户在同一会话线程中切换 Claude 模型。第二,它会记住跨对话存在的持久事实,而不是简单堆积完整聊天记录。第三,它支持文件上传,并能围绕上传内容回答问题。第四,它可以执行较长的研究任务,规划处理路径、浏览网络来源,并返回带引用的答案。
不过,作者也明确划定了项目边界。Claudius 不是商业产品,没有商业计划,也没有用户增长目标。登录方式只支持 Google,用户角色由服务器端决定,不会通过公开路径自动授予权限。项目首先服务于作者本人,后期才会开放一个受限的小型公共层,让读者体验最终形态。
文章还特别说明,Claudius 是一个个人致敬和学习项目,不隶属于 Anthropic,也未获得 Anthropic 背书,不意在替代 Claude。作者的目标是重新搭建一个自己日常使用并欣赏的工具形态,从而理解其工程结构,同时展示 MongoDB 作为完整智能体 AI 应用数据基础的能力。
开发计划:六个阶段逐步公开代码
来源文章披露,Claudius 的开发将分为六个阶段,并通过系列文章同步记录。
第 0 阶段将搭建基础,包括数据模型、认证系统和角色系统。第 1 阶段将实现流式聊天主干,把通过 Bedrock 调用的 Claude 接入前端,并完成第一版真实对话。第 2 阶段会加入文件上传和基于上传内容的检索。第 3 阶段将实现跨会话长期记忆。第 4 阶段会把较重任务迁移到后台 worker,包括研究智能体。第 5 阶段则补上用量计量、成本控制,并开放小规模公共体验层。
作者表示,每个阶段都会发布公开代码,托管在 GitHub。代码仓库还会包含带注释的 .env.example,列出各阶段所需凭证,便于读者复现构建过程。来源文章未提供具体 GitHub 仓库链接,因此仓库地址仍需进一步确认。
影响:降低开发者理解 AI 应用基础设施的门槛
Claudius 的商业价值并不体现在其自身商业化,因为作者明确表示没有商业计划。它更像是一个面向开发者的参考项目:展示如何把会话、检索、长期记忆、文件问答、后台任务和成本控制整合进一个 AI 聊天应用中。
对 MongoDB 而言,该项目也具有展示意义。它试图证明 MongoDB 不只是传统文档数据库,还可以通过 Atlas Vector Search 等能力承担现代 AI 应用中的检索和状态管理需求。若该系列后续代码足够完整,开发者可以从中拆解出可复用模块,用于自己的聊天应用、企业知识库问答或智能体实验项目。
不过,项目目前仍处于系列文章开篇阶段。来源未提供可运行版本、性能测试、成本数据或生产环境稳定性信息。因此,Claudius 更适合作为学习和原型参考,而不能直接被视为成熟产品架构范例。其后续效果仍取决于代码实现质量、各阶段交付情况,以及公开体验层上线后的实际表现。