V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
2803MHz
V2EX  ›  分享创造

开发了个一站式 AI / 协作平台

  •  
  •   2803MHz · 4 天前 · 472 次点击

    Nya AI 结合了 AI 对话客户端和协作平台,让你能够在一个平台进行 AI 对话、网络搜索、记笔记、编写文档、与团队沟通/协作、管理文件等操作

    在 AI 对话方面,Nya AI 旨在能够完全替代传统的 AI 对话客户端,支持的功能包括:

    • 消息分支:在多个分支之间切换
    • 文档输入:将 .docx 、.pdf 、.pptx 等解析为文本输入
    • MCP:连接 MCP 服务器以扩展 AI 功能,支持 MCP Tools 、Resources 和 Prompts
    • 多模态输入/输出:支持 Nano Banana 等模型
    • 网络搜索与爬取:内置网络搜索和网页爬取的扩展
    • 支持添加不同的服务商,使用任意模型
    • 具体的模型参数和服务商选项配置
    • 用户输入预览、消息目录、快速滚动、键盘快捷键及其他细节功能

    (由于目前只有 web 端,因此一些功能比如跨域请求、STDIO 类型 MCP 服务器无法实现,后续会完善支持)

    而在其他方面,Nya AI 拥有许多协作平台的功能和优势:

    工作区

    用户注册时会自动创建一个该用户的工作区,工作区拥有类似文件系统的储存结构,你可以创建文件夹,按照自定义的结构灵活地组织各种类型的内容。

    工作区的一大作用是协作,你可以邀请他人加入你的工作区。加入工作区的成员都可以浏览、编辑工作区的内容。工作区的所有成员共享工作区的 AI 额度和储存空间。

    此外支持创建多个工作区、控制工作区成员的角色(管理员/成员/游客)等功能

    随时随地访问

    所有内容都储存在云端,你可以随时通过任意设备访问所有内容。得益于同步引擎 Zero,虽然内容储存在云端,却能拥有接近本地优先应用的响应速度和交互性能。

    界面是响应式的,移动设备也能通过相同的链接直接访问。Nya AI 也是 PWA ,你可以将其安装至主屏幕以获得接近原生应用的体验。

    页面

    页面是类似 Notion 的可编辑、可协作页面(只不过目前的编辑器还较为简陋)。支持:

    • 完善的 Markdown 支持:使用 Markdown 语法输入、粘贴 Markdown 、导出为 Markdown
    • 从 Docx 文件导入 / 导出为 Docx
    • 编辑记录:可随时浏览、退回到历史版本
    • 可在右侧打开 AI 对话,向 AI 提问或是让 AI 编辑页面

    发布内容

    页面、对话、文件等都可以发布(在右侧边栏右键项目->发布),发布后可通过该链接公开访问(只读),发布的项目的子项目也会随之发布。

    频道

    类似于工作区所有成员的群聊,可用于交流、协作,也可用于个人在不同设备间传文本、文件等

    搜索

    类似于传统搜索引擎和 AI 搜索的结合,左侧是搜索结果,右侧会生成 AI 总结回答,也可进行后续对话。

    翻译

    就是简单地调用 LLM 进行文本翻译。不过有一个比较贴合我使用习惯的优化:可以设置主要翻译语言和次要翻译语言,这样就会自动将主要语言的文本翻译为次要语言,将其他语言的文本翻译为主要语言,而不必每次翻译都选择语言。此外,会保留每次翻译的版本记录;另外由于用的是 LLM ,因此除了翻译自然语言,也可以用来做格式转换(比如 CSV ↔ Markdown ,Latex ↔ MathML ),编程语言翻译等,语言选项框可以填任意值。

    关于付费

    本项目是完全开源的,你可以自部署使用(参考 docker-compose.example.yml 使用 Docker Compose 部署)。

    如果使用我们部署的平台( nyaai.cc ),我们同时提供免费计划和付费计划。免费计划的限制为:

    • 每月 $0.5 AI 额度(显然不够,但是可以添加自定义服务商,不消耗此额度)
    • 1GB 文件储存空间,单个文件最大 100MB (如果不作为网盘使用,仅仅是在对话/页面中上传一些图片,那是够用的,较大的图片会自动压缩)
    • 工作区最多 3 位成员(不影响个人使用)

    要不送点?注册后回复 email 送 3 个月 Basic 会员,先送 50 个

    反馈

    项目目前仍处于公测阶段,欢迎汇报 bug & 提交 issue

    技术细节

    我的上一个项目是 AIaW ,一个 AI 对话客户端:NitroRCr/AIaW

    之所以选择重新构建一个项目,是因为,之前的技术架构有一些难以解决的瓶颈。

    数据使用 Dexie.js 储存在浏览器本地 Indexeddb 中,再辅以 Dexie Cloud 实现云同步。这种本地优先的架构能带来极快的响应速度,但是在数据量较大,特别是上传的图片/文件较多时,就会遇到瓶颈:

    • 云同步缓慢,特别是新设备登录时,需要等待下载全部数据
    • 浏览器并不保证大量数据的可靠储存,数据可能会被浏览器清理

    此外,云同步始终依赖 Dexie Cloud 这个第三方,虽然集成简单,但无法做到对数据的完全控制。

    而如果使用传统的服务端优先的架构,又会面临服务端优先的劣势:加载/响应较慢,开发效率底

    好在,我发现了一个全新的同步引擎 Zero ,它能够基于服务端优先的架构( Postgres 作为事实来源),同时实现实时查询+乐观更新+热数据缓存,使得客户端能获得接近本地优先应用的响应速度,同时拥有与传统服务端优先应用相当的灵活性(完全自定义的权限控制)。Zero 虽然也仍处于 alpha 阶段,我仍然大胆地使用了它。

    如此大的架构转变,数据层必然是要完全重写的。此外,我本来也想做一些 AI 对话以外的独立的功能。于是,我利用新架构的优势,直接往协作平台的方向设计。最终得到了这样的产品。

    整个开发过程 6 个月,基本只用 cursor tab 自动补全,放在现在也算是半古法编程了吧

    2 条回复    2026-03-23 13:12:56 +08:00
    Mandyer
        1
    Mandyer  
       4 天前
    建议增加个浏览器插件功能,参照小黑,把页面内容直接保存,然后在 AI 平台使用
    https://github.com/import-ai/omnibox
    2803MHz
        2
    2803MHz  
    OP
       4 天前
    @Mandyer 确实可以考虑,不过这得单独开发一个浏览器插件吧。有空研究研究
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2877 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 370ms · UTC 12:33 · PVG 20:33 · LAX 05:33 · JFK 08:33
    ♥ Do have faith in what you're doing.