diff --git a/README.md b/README.md
index 0c6c2c27..e98df0fd 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,12 @@
-# Website
+# [Read Online](https://oceanbase.github.io/)
+
+# Locally Start This Website (Modern Approach)
+In the AI IDE dialog box (Cursor, VSCode, Trae, etc.), enter the following prompt to start this courseware:
+```
+Please help me run the local service for this project
+```
+
+# Locally Start This Website (Ancient Approach)
This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
diff --git a/docs/ai_courses/00_overview.md b/docs/ai_courses/00_overview.md
new file mode 100644
index 00000000..fe990fde
--- /dev/null
+++ b/docs/ai_courses/00_overview.md
@@ -0,0 +1,135 @@
+
+# 前言
+
+这套 OceanBase 的社区课程叫《Easy "Data x AI"》。
+
+OceanBase 社区,一直想做一套主题为 Data x AI 的课程,面向的人群是:
+
++ 希望能够构建高性能 AI 应用的开发者
++ 希望拥抱 AI 的 DBA
++ 希望获取 AI 知识的朋友
+
+# 为啥想做这套社区课程?
+## For 希望能够构建高性能 AI 应用的开发者:
+> 工欲善其事,必先利其器。
+>
+
+我去年接触了很多的 AI 应用开发者,大家都用 AI 做出了各种各样的应用 demo,然后开始有一部分人开始想尝试把这些 demo 进行工程化和产品化。
+
+但是大家在把 demo 产品化的过程中,发现存在一些共同的痛点,就是 AI demo 中涉及到的各种基础设施在 demo 中勉强可以用,但是在从 demo 往一个完整的工程项目转化的过程中,数据的形态会越来越多元化。
+
+比如在 demo 里,可能只涉及文本或者结构化数据的存储和查询。但是真正的 AI 应用里,还需要处理多模态的数据,比如图像、音频、视频、知识图谱、关系网络等等。这时候就需要推翻 demo 的架构,重新选择应用的各个组件,最好是 AI 应用需要的各种能力,这些组件原生就支持,这样可以大幅简化应用的架构。然后还需要关注这些组件的资源占用、计算性能情况等等。
+
+除此以外,还有就是如果一款 AI 应用真的有用户在日常会持续使用,那么上下文就会越来越长,上下文变长,模型对关键信息的检索能力就会下降 —— 这种现象叫 "上下文腐化"。上下文腐化的原因,简而言之,主要原因还是注意力是有限的资源,信息越多,每个信息被分到的关注就会越少。还有就是 Transformer 是 O(n²) 计算复杂度,**上下文翻 10 倍,需要用到的算力就会翻 100 倍。**
+
+还有一点很重要的就是,这些和数据存储、计算相关的组件,还需要和主流的 AI 框架深度融合,比如可以完美兼容 Dify、RagFlow、LangChain、FastGPT、CAMEL-AI 等等最主流的 AI 框架。最好能够在使用这些 AI 框架的时候,直接在配置文件里能选择一下,就能一键把这些最合适的底层设施都部署好。
+
+
+
+
+
+
+**所以做这套课程的一个非常重要的目的就是,让大家在构建这个 AI 应用 demo 的时候,可以通过这样一套课程,快速对 AI 应用涉及到的基础设施的生态有一个了解,能够提前在做 AI demo 的时候,就把偏底层一些的组件给选对、选好,避免产品化的时候,还要重新设计架构,然后再把在 demo 里用到的这些组件全部再替换一遍。**
+
+
+
+## For 希望拥抱 AI 的 DBA:
+> 如果此刻还不进场拥抱 AI,每天都将错过一个时代。
+>
+
+在 AI 时代,DBA 群体应该主动去了解 AI Native DataBase 和相关的新特性。但我接触到的一部分 DBA,只要听到 “向量、全文、混合搜索、AI Function” 这些新鲜特性,就纷纷说肯定用不到,表示只要了解基本的运维操作和基础的 CRUD 就够了。
+
+因此,这里不再去讲向量数据库和相关的 AI 特性有多重要,也不去介绍如恶化通过 AI Function + 生成列(虚拟列)可以在表中创造功能强大的 AI 列,而是选择分享下面这个 DBA 一定都能看懂的简单例子:
+
+DBA 朋友们大多都会熟悉 Create Table / Alter Table / Drop Table 等 DDL 操作,但在现在这个 Vibe Coding 平台满天飞的时代,也应该去学习和了解 AI Native DataBase 为这个需求发布的数据库新特性 —— Table Fork(类似地,还有 DataBase / Schema Fork 等) 。有些朋友对于 Vibe Coding 场景为啥需要 Fork Table 可能会有些疑问,那我就继续给大家举个例子:
+
+以 Vibe Coding 平台为例。小李在用 AI 生成一个手办商城,他对 AI 说 “给商品表加一个限量版标签字段”,AI 自动生成了 ALTER TABLE 语句并执行。这时候平台就会自动创建一个 Table Fork,相当于给当前表结构打了个快照。
+
+过了一会儿,小李通过 Vibe Coding 让 AI 去改了几个字段,加了价格折扣逻辑。结果一测试,发现折扣计算有 BUG,之前能跑的订单流程现在全挂了。这时候,Table Fork 的回滚能力就派上用场了。
+
+小李在平台上会看到一个版本历史列表,显示:
+
++ “版本 1:初始电商模板”
++ “版本 2:加了限量版字段”
++ “版本 3:加了折扣逻辑”
+
+他直接点击回滚到版本 2,整个表结构和数据瞬间恢复到加折扣之前的状态,订单流程又能跑了。
+
+这个能力对 Vibe Coding 场景特别重要,因为 AI 生成的代码不一定每次都对,用户需要大胆尝试、快速试错。有了 Table Fork,每次修改都有后悔药,用户敢放心让 AI 改数据库,改坏了一键回滚,不用担心把数据搞乱。这就像 Git 对代码的版本管理,但 Table Fork 是对数据库表的版本管理。
+
+而且 Table Fork 在各个 AI Native DataBase 中,往往都只是一个 DDL 操作,执行非常快速,可以在毫秒级完成 Fork 的动作,相比 Flyway 等数据库版本控制工具,提供的能力要更加灵活和强大。
+
+
+
+**因此,DBA 朋友们也可以通过这套课程,快速了解 AI Native DataBase 为 AI 时代发布的各种新特性,以及这些新特性的适用场景和最佳实践。如果此刻还不进场拥抱 AI,每天都将错过一个时代。**
+
+
+
+## For 希望获取 AI 知识的朋友们
+> 在机器人越来越像人的时候,人不能越来越像机器人。
+>
+
+在人人都是 builder 的时代,希望通过这套社区课程,能让大家基于 Data x AI,释放出创造力,去尝试有趣的想法,去构建有用的事物。
+
+
+
+# 想怎么做这套社区课程?
+我们这个以 Data x AI 为主题的课程,目前还在筹备阶段,希望能在这套课程中,和大家一起逐步构建能力越来越强大的 AI 应用。同时也希望在这个过程中,能够让大家了解 AI 应用底层的 Data 长什么样子、起到了什么作用,以及应该如何基于这些知识,构建出架构简单、易于维护、性能强大的产品。
+
+这套课程预计 2025 年 3 月初上线 OceanBase 官网的在线课堂,每周更新一期内容。并会在 [github](https://github.com/oceanbase/oceanbase.github.io) 上同步更新。届时欢迎各位老师们以来 [https://github.com/oceanbase/oceanbase.github.io](https://github.com/oceanbase/oceanbase.github.io) 提 issue 和 pr 的形式,参与课程的讨论和共建。
+
+课程大纲如下:
+
+| | 期数 | 标题 | 适合人群 | 实践内容 |
+| --- | --- | --- | --- | --- |
+| 基础篇 | 0 | 前言 | ALL | NULL |
+| | 1 | 浅入了解向量数据库 | ALL | 简单 & 直观地了解观地向量存储 |
+| | 2 | 零代码构建最简架构的 AI 应用(基于 FastGPT) | ALL | 体验知识库导入、知识库检索,快速构建信息问答应用 |
+| | 3 | 浅入了解 AI Memory | ALL | 简单 & 直观地了解 AI Memory |
+| | 4 | 零代码 / 低代码构建最简架构的 AI 应用(基于 Dify) | ALL | 体验从原型到生产的全流程 |
+| | 5 | Skills | 开发者 / DBA | 基于 seekdb Skills 开发 AI 应用 For 开发者
&
开发并使用可以优化 SQL 执行计划 / 优化 schema 结构的 Skills For 有数据库基础人群 |
+| 进阶篇 | 6 | 浅入了解混合搜索 | 开发者 / DBA | 通过 Vibe 一个小应用,直观地对比混合搜索的效果 |
+| | 7 | AI Native DataBase 新特性及最佳实践 | 开发者 / DBA | 体验 AI Function、Table Fork、MCP Server for DB…… |
+| | 8 | 基于 LangChain 高度定制 LLM 应用 | 开发者 | 体验通过底层的模块化能力,灵活构建 AI 应用 |
+| | 9 | 基于 Camel AI 的多智能体协作与创新 | 开发者 | 体验多 Agent 交互 |
+| | 10 | 尾声 | ALL | NULL |
+| | 11 | 附录 | ALL | NULL |
+| 高阶篇 | To be Continue... | | | |
+
+
+> 说明:以上大纲可能并非最终版本
+
+
+
+# 欢迎各位佬友积极参与课程共建!
+**这个 Data x AI 的课程,不仅会介绍偏底层的 Data 应该怎么用,还会有各个主流 AI 社区的技术老师,为大家介绍各种偏上层的 AI 平台应该怎么玩儿。**
+
+OceanBase 社区和 AI 方向的生态社区合作很多,和各个 AI 平台也有非常多的生态对接和深度融合。在前一阵儿的社区嘉年华活动中,各个 AI 社区的核心技术同学都已经接受了我们的邀请,会一起参与本次 Data x AI 系列课程的共建。共建人员会包括:FastGPT、Dify、LangChain、CAMEL-AI、RagFlow、NVIDIA 等各个 AI 社区的技术专家。
+
+当这套课程的更新进度,达到 DataWhale 的立项标准的时候,我们也希望能够把这套 Data x AI 主题的课程,作为一个项目,贡献给 Datawhale 社区~
+
+
+
+
+******
+
+# 福利环节
+活动过程中,每通过一个课后小测,就可以获取 OceanBase 社区积分,以及一次抽奖定制礼物的机会。
+
+每节课程结束之后,也都会为通过课后小测的同学们,再额外抽取各个 AI 社区为本次课程特别赞助的定制礼品,以及和当期课程有关的书籍(例如下面这本书的作者张海立老师就会在本课程中,亲自为大家分享和 LangChain / LangGraph 相关的知识)等特殊福利。
+
+
+
+
+
+
+所有参与课程学习的同学,也均可向 OB 社区小助手(微信号:OBCE666)申请成为讲师、助教、内容共建者。
+
+参与课程共建的同学,可以获得 OBCP 免费券、限量版开发者 T 恤等社区定制礼品,还有机会成为 OceanBase 社区版主、OceanBase 社区大使、OceanBase 社区年度之星,并享受相应权益。
+
+# 最后
+欢迎各位佬友扫码加入课程交流微信群,和我们一起参与课程内容的讨论和共建!
+
+
+
+
diff --git a/docs/ai_courses/advanced_occupied.md b/docs/ai_courses/advanced_occupied.md
new file mode 100644
index 00000000..90d9cad3
--- /dev/null
+++ b/docs/ai_courses/advanced_occupied.md
@@ -0,0 +1 @@
+# 开发中
diff --git a/docs/ai_courses/base_occupied.md b/docs/ai_courses/base_occupied.md
new file mode 100644
index 00000000..78df33e9
--- /dev/null
+++ b/docs/ai_courses/base_occupied.md
@@ -0,0 +1 @@
+# 开发中
\ No newline at end of file
diff --git a/docs/ai_courses/senior_occupied.md b/docs/ai_courses/senior_occupied.md
new file mode 100644
index 00000000..90d9cad3
--- /dev/null
+++ b/docs/ai_courses/senior_occupied.md
@@ -0,0 +1 @@
+# 开发中
diff --git a/docusaurus.config.ts b/docusaurus.config.ts
index 7ca93a8d..b2c26e0d 100644
--- a/docusaurus.config.ts
+++ b/docusaurus.config.ts
@@ -185,6 +185,10 @@ const config: Config = {
type: 'dropdown',
position: 'left',
items: [
+ {
+ label: 'Data x AI Courses',
+ to: 'docs/ai_courses/overview',
+ },
{
label: 'ChatBot',
href: 'https://github.com/ob-labs/ChatBot/',
diff --git a/sidebars.ts b/sidebars.ts
index bc5f79a8..3d6e8dc6 100644
--- a/sidebars.ts
+++ b/sidebars.ts
@@ -260,6 +260,23 @@ const sidebars: SidebarsConfig = {
},
],
blogsSidebar: [{ type: 'autogenerated', dirName: 'blogs' }],
+ ai_coursesSidebar: [
+ {
+ type: 'category',
+ label: '基础篇',
+ items: ['ai_courses/overview', 'ai_courses/base_occupied'],
+ },
+ {
+ type: 'category',
+ label: '进阶篇',
+ items: ['ai_courses/senior_occupied'],
+ },
+ {
+ type: 'category',
+ label: '高阶篇',
+ items: ['ai_courses/advanced_occupied'],
+ },
+ ],
}
export default sidebars
diff --git a/static/img/ai_courses/community-partners.png b/static/img/ai_courses/community-partners.png
new file mode 100644
index 00000000..e8c2b77e
Binary files /dev/null and b/static/img/ai_courses/community-partners.png differ
diff --git a/static/img/ai_courses/context-corruption.png b/static/img/ai_courses/context-corruption.png
new file mode 100644
index 00000000..594d8ad6
Binary files /dev/null and b/static/img/ai_courses/context-corruption.png differ
diff --git a/static/img/ai_courses/langchain-book.png b/static/img/ai_courses/langchain-book.png
new file mode 100644
index 00000000..a800a4ad
Binary files /dev/null and b/static/img/ai_courses/langchain-book.png differ
diff --git a/static/img/ai_courses/qrcode-group.png b/static/img/ai_courses/qrcode-group.png
new file mode 100644
index 00000000..7a15d593
Binary files /dev/null and b/static/img/ai_courses/qrcode-group.png differ
diff --git a/static/img/ai_courses/table-fork.png b/static/img/ai_courses/table-fork.png
new file mode 100644
index 00000000..c1ca602b
Binary files /dev/null and b/static/img/ai_courses/table-fork.png differ