大家好,我是徐小夕。
架构师,曾任职多家上市公司,多年架构经验,打造过上亿用户规模的产品,目前全职创业,主要聚集于“Dooring AI零代码搭建平台”和“flowmixAI多模态办公软件”

上期和大家分享了我们精心打磨的协同AI文档 JitWord

熟悉我的朋友可能知道, 我一直在研究和分享AI相关的技术和开源项目,自己也在创业做AI产品。

今天继续分享我们的 JitWord 协同AI文档最新进展。

jitword协同文档

为了响应用户对国产化的需求,我们最近专门测试和适配了国产化环境。

上面是在国产化环境下演示的效果,我们测试了106个功能case,功能基本完整,并能正常使用。

同时大家比较关注的导入导出word功能,也能在国产环境正常使用。

下面是我们的环境参数:

服务器规格:鲲鹏通用计算增强型 | 2vCPUs | 4GiB | kc1.large.2

镜像:Ubuntu 24.04 server 64bit with ARM | 公共镜像

JitWord 的目前开源了SDK,大家可以本地集成到项目测试体验。

开源地址:https://github.com/MrXujiang/jitword-sdk

接下来给大家分享几个JitWord协同文档的应用场景。

JitWord协同文档应用场景

个人简历制作

个人简历我使用的是 JitWord 的表格组件。因为表格组件目前已支持和合并单元格,插入行和列,以及支持嵌套表格,单元格里还能插入各种图片,组件。

所以我们使用表格设计简历难度非常低,也比较灵活,我们不仅仅能设计简历,还能设计:

  • 医疗病例
  • 个人档案
  • 产品参数表格

等等,大家感兴趣的可以体验一下。

中学/大学/科研机构/企业的试卷

上面是我用JitWord AI功能生成的一个高等数学的试卷。

我们可以看到它能渲染高等数学公式,不仅如此,我们还内置了丰富的公式模版,涵盖数学,生物,物理,化学等:

同时我们线上编辑的公式,可以一键导出到word,并能二次编辑,基本上可以解决老师们出试卷的困扰了~

一键生成企业合同模版

我们可以线上编辑各种排版的合同模版,并能一键导入已有的word合同进行二次编辑,编辑完之后可以一键导出为多种格式的内容,比如docx,pdf,markdown等。

技术实现架构

下面是我们设计的目录结构,供大家参考研究:

app/                          # 前端应用
  src/
    api/                      # API 接口封装
      document.ts             # 文档相关接口
      version.ts              # 版本管理接口
      file.ts                 # 文件处理接口
    components/               # 业务组件
      VersionManager.vue      # 版本管理组件
      VersionCompare.vue      # 版本对比组件
      AIWriterModal.vue       # AI 写作弹窗
      AIRewriteModal.vue      # AI 改写弹窗
    packages/                 # 编辑器核心包
      core/                   # 核心功能模块
        extensions/           # 扩展组件
          chart/              # 图表组件
          flowchart/          # 流程图组件
          table/              # 表格组件
          audio.js            # 音频组件
          video.js            # 视频组件
      vue3/                   # Vue 3 适配层
        components/           # UI 组件
        kit/                  # 功能套件
    utils/                    # 工具函数
      ai/                     # AI 相关工具
        providers.ts          # AI 服务提供商
        config.ts             # AI 配置管理
        openaiStream.ts       # 流式处理
      export/                 # 导出工具
        wordExporter.js       # Word 导出
        pdfExporter.js        # PDF 导出
        markdownExporter.js   # Markdown 导出
      import/                 # 导入工具
        mammothImporter.js    # DOCX 导入
        markdownImporter.js   # Markdown 导入
    views/
      notion-page/            # 主编辑页面
        notion-page.vue       # 编辑器主界面

server/                       # 后端服务
  src/
    index.js                  # 服务入口,Koa + WebSocket
    config/
      index.js                # 服务配置
    router/                   # 路由模块
      version.js              # 版本管理路由
      upload.js               # 文件上传路由
      parse.js                # 文档解析路由
      message.js              # SSE 事件推送
    lib/                      # 工具库
      file.js                 # 文件处理工具
      ydoc.js                 # 协作文档工具
    service/                  # 业务服务
      index.js                # 通用服务方法
  db/
    version/                  # 版本数据存储
      {docId}.json            # 每个文档的版本历史
  public/
    uploads/                  # 上传文件存储
    y-static/                 # 静态资源

核心算法设计

实时协作算法

JitWord 采用 CRDT(Conflict-free Replicated Data Type) 算法实现无冲突的多人实时协作:

算法特点

  1. 操作可交换性:不同用户的操作可以以任意顺序执行,最终结果一致
  2. 操作可合并性:多个操作可以智能合并,减少网络传输
  3. 最终一致性:所有客户端最终会收敛到相同的文档状态
  4. 无需中央协调:不依赖中央服务器进行冲突解决

下面是协作的流程:

我们还支持版本对比,采用 Myers 差分算法 进行版本内容对比:

  1. 文本级对比:基于字符和单词的精确差异识别
  2. 结构级对比:识别段落、标题、列表等结构变化
  3. 样式级对比:检测格式、颜色、字体等样式变化
  4. 组件级对比:图表、表格等复杂组件的变化识别

即将上线的功能:

最近我们团队还在持续迭代JitWord AI文档,下周会上线2.0版本,将带来更多实用功能,比如

审阅模式,

Word分页功能,

AI生成思维导图,

等等,各位敬请期待~

好啦,今天就分享到这,后续会持续迭代,如果大家对AI Word编辑器感兴趣,也欢迎随时留言区评论交流

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐