2026年3月

《哈萨比斯:谷歌 AI 之脑》作者眼中的天才掌舵者

 

3 月 11 日,是AlphaGo诞生十周年。

 

AlphaGo 的胜利,被许多人视为人工智能时代真正到来的标志性事件。

 

十年过去,这场比赛依然被反复提及。因为它不仅改变了围棋,也改变了整个 AI 行业的发展节奏。此后几年,从深度学习到大模型,从科学研究到产业应用,人工智能的进展明显加速。某种意义上,今天席卷全球的生成式 AI 浪潮,可以追溯到那一刻。

 

而在这场技术突破背后,一个关键人物就是Demis Hassabis

 

在外界看来,AlphaGo 只是 DeepMind 众多研究成果中的一个。但在 Hassabis 的长期愿景中,它更像是一块重要的里程碑——证明机器能够通过学习与推理解决复杂问题,也证明人工智能有能力在科学领域产生真正的突破。

 

十年前,AlphaGo 改变了人类对机器智能的想象边界。十年后的今天,随着ChatGPTGemini等新一代 AI 系统不断出现,人们开始重新审视一个更大的问题:人工智能究竟会把人类带向哪里?

 

在这样的背景下,理解像 Hassabis 这样的科学家为何走上这条道路、又如何看待 AI 的未来,就显得格外重要。

 

也正是在这一节点,一场围绕哈萨比斯与 AI 未来展开的深度对话,为我们提供了一个难得的观察窗口。

 

2026 年 3 月 10 日,北京中关村学院、中关村人工智能研究院(简称“中关村两院”)联合北纬港湾、湛庐文化,举办了以“从 DeepMind 到通用人工智能:AI 时代的全球范式与组织进化”为主题的北纬诺贝巅峰对话首场前瞻活动。

 

作为谷歌 DeepMind 掌门人德米斯・哈萨比斯(Demis Hassabis)全球首部唯一官方授权传记《哈萨比斯:谷歌 AI 之脑》的著者,塞巴斯蒂安·马拉比为现场观众系统分享了这位全球顶尖 AI 探索者的成长轨迹与事业逻辑。

尖峰对话:全球视角激荡 AGI 机遇与挑战

 

分享结束后, 马拉比与北京中关村学院院长、中关村人工智能研究院理事长刘铁岩围绕“AGI 浪潮下的技术突破、教育变革与未来生态”展开深度交流。

Mallaby 在交流中提到一个颇具象征意味的细节:第一次深入交流时,Hassabis 在晚餐前让他先读科幻小说《安德的游戏》。书中讲述一名少年被训练成为拯救人类的英雄。读完后,Hassabis 对他说:“我读这本书的时候,觉得自己就是那个角色。”

 

在 Mallaby 看来,这并非玩笑,而是 Hassabis 真实的使命感写照。他相信 AI 能帮助人类应对气候变化、攻克疾病,甚至延长寿命。这种近乎“拯救世界”的目标,也解释了为何在商业竞争愈发激烈的今天,他依然坚持将神经科学与人工智能结合的研究路线。

在 AI 早期发展阶段,这种跨界特质尤为明显。2010 年前后,人工智能还远未形成今天的学科体系,研究者来自数学、物理、神经科学、计算机科学等多个领域。DeepMind 的早期团队正是这种多学科融合的典型代表。

刘铁岩也指出,AI 的特殊之处不仅在于研究者背景多样,更在于它本身正在反向改变其他学科——例如 AlphaFold 已经重塑了生物科学的研究方式。换句话说,AI 不只是一个学科,而是一种正在改变科学方法论的基础技术。

在谈到当前 AI 产业竞争时,Mallaby 透露了 Hassabis 性格中一个鲜为人知的侧面——极强的竞争意识。

他回忆说,Hassabis 不仅在国际象棋上竞争心极强,甚至在剑桥大学时期还曾自豪地宣称自己是“全校最强桌上足球选手”。这种看似微不足道的细节,反映出一种贯穿其职业生涯的特质:无论面对什么挑战,他都希望成为最优秀的那一个。

这种竞争意识在 AI 竞赛中同样明显。ChatGPT 发布后,Hassabis 迅速投入新一轮技术对抗。Mallaby 回忆,最近在达沃斯见到他时,当听到“Gemini 正在赢”时,Hassabis 罕见地表现出非常兴奋。

 

在 Mallaby 看来,像 Hassabis 这样的 AI 科学家,面对人工智能未来时的情绪其实并不特殊——同样是既兴奋又担忧:兴奋于技术潜力,也担忧未知风险。这种矛盾心理,是所有人面对 AI 时都会产生的,只是在这些科学家身上被放大了。

 

他认为,人类之所以不断前进,正是因为持续发明新技术。从某种意义上说,“我发明,因此我存在”。理解 AI 的来源与人类的创造冲动,或许能帮助社会更理性地面对技术变革。

 

在对话最后,刘铁岩也向年轻博士生提出一个问题:AI 研究者应如何规划未来路径?

 

Mallaby 的答案很明确:基础模型已取得巨大突破,下一阶段的关键在应用。如何把 AI 能力转化为推动科学与医学进步的工具,将成为未来十年的核心方向。从药物发现到疾病预测,再到公共卫生与基础科学,AI 正在成为改变现实世界的重要力量。

完整对话内容

 

以下为完整对话内容,经由 InfoQ 翻译及整理:

 

刘铁岩:首先非常感谢您来到中国、来到中关村学院。您的分享非常有启发性,我个人也收获很多。我想提一个有趣的巧合:您提到自己第一次来北京是在 1994 年,而那一年正好也是我第一次来到北京。

 

我今天从您的分享中学到很多,比如您是如何选择写 Hassabis 这本书的主题,又是如何坚持说服他配合完成这本书的;以及他在人生中如何在金钱与科学之间做出选择,并在 AI 还处于非常早期的时候就决定投身其中。这些对在场的人来说都很有启发。

 

顺便介绍一下中关村学院。我们是一种不同于传统大学的新型高等教育体系,希望为博士生创造一个能够探索其他地方难以实现研究目标的环境,特别是培养下一代 AI 领军人物。

 

今天在场的除了博士生,还有一些中学生,因为我们也设立了 AI 学院,让中学生和高中生能够更早接触 AI 学习。我还看到一些同事,他们从事蛋白质建模、AI 游戏等研究,这些领域都与 Demis Hassabis 的工作高度相关。

 

接下来我准备了一些问题。第一个问题是:在您眼中,Demis Hassabis 具备很多优秀品质。您与他以及他的同事交流了很多年、进行了长时间访谈。有没有某一个瞬间,让您突然意识到:“这就是他之所以成为 Demis Hassabis,而不是其他人的原因”?有没有什么特定时刻,让您对他的某种特质印象特别深刻?

 

Mallaby:有的。最开始我第一次见到他时,他先让我去和他的四位同事聊一聊,听听他们对我的看法。之后他说我们可以一起吃个晚餐,但在那之前让我先读一本书。

 

那本书是科幻小说《安德的游戏》(Ender’s Game)。故事讲的是一个被选中的少年,被送到太空站接受训练,对抗即将入侵地球的外星人。最终他拯救了整个人类。

 

我读完书之后与 Demis 吃晚餐。他对我说:“当我读这本书的时候,我觉得自己就是安德。”

也就是说,他把自己代入那个拯救人类的英雄角色。他确实相信自己是在执行一项使命——拯救世界。比如通过 AI 解决气候变化问题、减少疾病,人类甚至可能活到 150 岁。在他看来,AI 的潜力非常巨大。

 

让我印象最深的是,他会把自己与小说中的英雄人物联系在一起,并把这种使命感说得非常坦率。很多人可能也有类似想法,但不会公开表达,而 Demis 会直接告诉我:“你应该读这本书,因为这就是我。”

 

我以前从没见过有人如此坦诚地表达自己具有一种“英雄式使命感”。

 

刘铁岩: 这确实非常有意思。实际上,我们在面试学生时也会遇到类似的情况。有些学生非常坦率、非常有雄心,他们会直接说自己想改变世界。我认为这种精神是非常宝贵的。

 

我也希望我们学院将来能培养出更多这样的人,也许有一天会出现下一个 Demis Hassabis。

另外您提到 Demis 是一个非常跨学科的人。他既是神经科学家,也是优秀工程师,同时还是 DeepMind 的 CEO,是具有远见的创业者。

 

您是否认为,这种跨学科背景正是他能够取得重大突破的重要原因?还是说关键更多来自他长期坚持研究 AI?

 

Mallaby:这是个非常好的问题。首先,心理学研究其实已经证明跨学科背景确实有优势。有一本书叫《Range》(《全才》),中文也有译本,它总结了很多科学证据,说明广泛兴趣的价值。

例如在音乐领域,那些只从小专门学习一种乐器的孩子,往往未必最终成为最顶尖的音乐家。

在体育领域也是一样。如果孩子既踢足球,又打网球,反而可能更有优势。

 

所以“越早越专一越好”这种观点其实被夸大了。

 

Demis 就属于兴趣范围非常广的人。这让他在一些领域,比如神经科学中的记忆和想象问题上,虽然未必像某些专家那样拥有极深的专业知识,但他拥有更强的想象力和创造力。

 

还有一个背景因素:在 2010 年左右,AI 本身就是一个高度跨学科的领域。当时这个领域还不成熟,很多人是从不同背景进入 AI 的。

 

有些来自计算神经科学,有些来自计算机科学,也有物理学家和数学家。

 

DeepMind 早期团队就是把这些不同背景的人聚集在一起。

 

此外,Demis 在伦敦大学学院(UCL)Gatsby Unit 做博士后研究,那里的研究理念本身就是把神经科学、计算和 AI 结合起来。

 

所以我认为,这既是 Demis 个人的特点,也是整个 AI 领域的特点。

 

刘铁岩: 我完全同意。人工智能确实与其他学科不同。一方面是因为参与 AI 研究的人来自数学、计算机、物理等不同背景;另一方面,AI 本身也在深刻影响其他学科,比如 AlphaFold 就在改变科学发现的方式。所以 AI 天生就是跨学科的。回到 Demis Hassabis。本书和公众报道中,他看起来几乎像一个“完美的人”:勤奋、天才、成功。

 

但您与他有很多私下交流。有没有一些我们不知道的、与公众形象不同的 Demis?

 

Mallaby:这是一个很好的问题。作为作者,我的工作方式是花很长时间去建立信任。我和 Demis 本人谈了超过 30 个小时,也和DeepMind 联合创始人 Mustafa Suleyman 谈了将近 20 个小时

 

基本上都是一对一深入交流。写完书后,我会把书稿给他们看。这是一种回馈信任的方式。我会说:“谢谢你们的帮助,我想让你们看看我写的内容。”

 

但我也会说明:我不会承诺修改任何内容,因为这是一本独立的书。但如果你们有意见,我会认真听。这个过程其实也是检验一个人真实品格的方式。

 

有些人看到书稿会非常激动,甚至找律师来威胁你,或者试图阻止出版。

 

但 Demis 的反应是比较理性的。当然,他确实对我揭露的一些事情不太高兴,比如当年 DeepMind 想离开 Google 的谈判细节。他确实让律师和我沟通,但律师态度也很友好。

 

他本人也会与我讨论一些观点,比如书里提到一个“权力悖论”:Demis 的母亲比较虔诚,她教导他不要试图控制别人。但另一方面,他又是 CEO,自然会对团队产生影响。

 

如果你具有强大的魅力和领导力,实际上就不可避免会影响甚至“控制”他人。

 

我说:“其实你是在控制别人。”

 

他说:“我是在引导他们,而不是控制。”

 

我们确实为此争论过一些。

 

但总体来说,他是一个非常理性的人。我也确实认为真实的 Demis Hassabis 是一个好人,他真心希望世界变得更好。

 

如果说他有什么“缺点”,那可能就是他真的非常相信自己在执行一种“拯救世界”的使命。

这种有点像“救世主式”的使命感。

 

但我个人并不认为这是坏事。只要动机是真诚的,是为了让世界更好。

 

刘铁岩: 非常好的分享。如果像 Demis Hassabis 这样的人真正有强烈的愿望去改变世界,并且付诸实践,那么世界肯定会变得更好。但改变世界并不容易,尤其当一个人同时追求多个目标的时候。Demis 既是一位科学家,希望理解智能的本质;另一方面 DeepMind 又是一家公司,而且现在还是 Google 的一部分,需要完成企业目标,比如产品化和商业化。那么在科学探索与商业竞争之间,他是如何做平衡的?

 

特别是在 OpenAI 等竞争对手压力越来越大的情况下,他是否也会思考:是继续坚持神经科学驱动的 AI 路线,还是像现在很多公司一样,通过规模定律(算力、数据、资金)来快速推动 AI 产品落地?

 

Mallaby:我认为 Demis 本身就是一个非常典型的跨学科人物,而他具备的能力之一,就是曾经真正做过产品。早在创业初期,他创办第一家公司时就推出过游戏产品,所以他并不是只做理论研究的人。

 

另外,他在很多事情上都非常有竞争心。比如下棋时,他竞争意识就非常强。后来他甚至对桌上足球(foosball)也非常认真。

 

你们知道桌上足球吗?就是桌子上有一排排小球员,你用手转动杆子来踢球的那种游戏。

 

他跟我说:“我在剑桥大学读书的时候,是整个剑桥最厉害的桌上足球玩家。”我当时心想:“这有那么重要吗?”

 

但他说:“真的,我就是最厉害的。”

 

他说有一种特别的射门方式,是用手这样一甩,球会以非常快的速度射出去。他还说,他看过美国最顶级选手的视频,很多人都做不出这个动作。

 

总之,他在很多事情上都极度好胜

 

当 OpenAI 发布 ChatGPT 时,他也非常有竞争意识,希望能够在这场竞争中胜出。而目前来看,他确实取得了一些成果——当然未来还要继续观察。

 

我最近一次见到 Demis 是大约六周前,在达沃斯。当时我们在一个招待会上碰面。我走过去对他说:“Demis,Gemini 现在正在赢。”

 

我从来没有见过他那么开心。他真的非常高兴。这种表情并不常见。

 

刘铁岩: 好的,我们聊了很多关于 Demis 的事情。现在我想把话题转回到您本人。您写过很多非常著名的书,在刚才的演讲中也介绍过。大多数作品主要讨论金融与权力,比如对冲基金、中央银行、风险投资等。

 

但这一次您写的是关于 Demis Hassabis 的书,主题完全不同,是关于一位试图创造新型智能的科学家。

 

那么,在花了这么长时间深入了解 Demis 之后,这段经历是否改变了您对 AI、对人类、甚至对世界的看法?我对此很好奇。

 

Mallaby:是的。我可以这样说。

 

在开始这个项目的时候,我最想解释的一件事情是:对于一位正在构建一种可能影响人类存在的技术的科学家来说,他内心到底是什么感受?

 

无论是 DeepMind 还是 OpenAI,我都很好奇:像 Demis 这样的科学家,如何看待这种“存在级技术”(existential technology)。

 

我也采访了很多其他科学家。但当项目结束时,我意识到一件事情:Demis 的感受其实并不独特。他同时感到兴奋和恐惧。而这种感觉,其实是我们每个人面对 AI 时都会有的,只不过在他身上被放大了。所有人面对 AI 都会有这种复杂的情绪:既兴奋,又有一点担忧。

 

但我们仍然继续向前推进。

 

因为如果人类从不向前探索,我们现在可能还住在洞穴里。

 

从这个角度看,Demis 其实只是把人类普遍的心理状态放大了而已。这也算是我写完这本书之后得到的一个人生启示。

 

另外一点是:AI 将会深刻改变普通人的生活。

 

当人们面对困难问题时,比如情绪困扰,在美国很多人会去找心理治疗师。治疗师做的事情其实就是帮助你理解:为什么你会焦虑、抑郁,或者感觉不对劲。

 

当你理解问题的来源时,事情往往就会变得更容易面对。我认为 AI 也是一样。如果我们理解:AI 从哪里来、为什么有人要去创造它、为什么发明新技术其实是人类本性的一部分那么我们就会更容易面对未来。

 

从某种意义上说,发明本身就是人类的定义。我甚至会说: “我发明,因此我存在。”

 

当我们理解 AI 的来源、理解人类自身的创造本性时,我们就会更容易走过接下来的十年。

 

刘铁岩: 我非常同意。AI 可能既是人类最大的机遇,也是最大的挑战。我们既要认真推进技术发展,也要认真思考价值对齐问题。今天在场的大多数人都是年轻学生。也许未来某一天,他们会成为改变 AI 研究方向、甚至改变世界的人。因此我想请您给我们的学生一些建议。

 

他们现在还处在博士学习阶段,应该如何度过每一天,才能在未来成为更有价值、更成功、更有影响力的人?

 

Mallaby:首先,非常感谢今天能来到这里。

 

我刚到学院时,就有几位博士生向我介绍了他们各自的研究项目。我对这些项目印象非常深刻。

这些研究涉及很多重要领域,比如:

 

  • 推动医学进步

  • 推动科学研究

  • 提高人类应对未来疫情的能力

 

这些都是极其有价值的应用。我认为,对于从事 AI 博士研究的人来说,现在最大的挑战在于:

基础科学已经取得了巨大的进展,下一步的问题是——如何把这些能力真正应用起来。

 

也就是说,如何构建针对具体问题的 AI 系统,真正推动科学和医学的发展。

 

如果让我给建议的话,我会鼓励大家把更多精力放在这些方向上。

 

不过看起来其实我不需要特别鼓励,因为你们已经在这样做了。这可能要感谢刘教授的引导。

现在数字化转型搞得越来越快,移动端开发基本上成了企业做应用的必选项。H5作为跨终端适配的主力,它的响应式设计做得好不好,直接影响用户用起来爽不爽。低代码平台确实帮我们省了不少事,开发门槛降了很多,但移动端适配的兼容性、流畅度这些问题,还是让不少开发者头疼——怎么才能做到一次开发、多端能用,既省时间又不影响体验,这大概是做低代码移动端开发最让人纠结的点了。
宏天H5 Builder这款专门做H5开发的低代码工具,其实还挺实用的。它自带适配能力,组件也够丰富,扩展性也不错,很多低代码移动端适配的麻烦事,用它都能解决。今天就结合我自己的开发经验,从响应式布局、移动组件库、离线缓存、PWA集成这四个方面,跟大家聊聊宏天H5 Builder的移动端适配怎么玩,都是实操层面的东西,希望能帮到正在踩坑的开发者。

一、响应式布局方案:适配多终端,不用重复干活

响应式设计是H5做移动端适配的基础,说白了就是让页面能根据不同设备的屏幕大小、分辨率,自动调整布局和元素尺寸,别出现PC端看着好好的,到了手机上就乱成一团的情况。宏天H5 Builder没走传统低代码平台“固定布局+手动调”的老路,而是用了“可视化配置+自动适配”的方式,不用写复杂代码,适配起来又快又准,省了不少麻烦。

实际开发中,我们用宏天H5 Builder做响应式适配,主要靠它两个核心功能,用起来还挺省心的:

先说第一个,它内置了自适应布局容器。开发者不用写那些复杂的CSS媒体查询,只要把页面元素放进这个容器里,它自己就能识别设备类型——是手机还是平板,屏幕尺寸在320px到1080px之间的哪种,然后自动调整元素的宽高、间距和排列方式。举个例子,PC端显示的三列表单,到了手机上会自动变成单列,核心内容先显示,不重要的内容可以折叠起来,既不耽误看内容,也符合手机触控的习惯。

再者就是断点配置和可视化预览,这两个功能搭配起来太实用了。宏天H5 Builder支持自定义响应式断点,比如常用的375px、768px,你可以根据自己目标设备的主流尺寸来设置。而且它有实时预览功能,一键就能切换手机、平板、PC的视图,适配效果怎么样,一眼就能看到,不用反复写代码、调试、修改,大大节省了时间。

另外,平台还支持字体和图片的自适应,字体大小会跟着屏幕尺寸按比例缩放,图片也会自动压缩适配,不会出现手机上字体太小看不清、图片拉伸变形或者加载太慢的情况,这一点确实考虑得很周到,也正好契合了H5响应式设计的核心需求。
移动端展示

二、移动组件库:贴合移动端操作,用着更顺手

低代码移动端适配,有个很头疼的问题就是组件和移动端操作习惯不匹配。很多时候,把PC端的组件直接搬到手机上,要么操作麻烦,要么点着不灵敏,视觉上也不协调。好在宏天H5 Builder内置了一套专门为移动端优化的组件库,表单、导航、弹窗、列表这些常用场景的组件都有,而且都做过移动端交互适配,不用我们再二次开发,拖拽就能用,特别方便。

结合我做过的项目,这三个核心组件用得最多,也确实解决了移动端交互适配的关键问题,跟大家分享一下:

  1. 移动端表单组件:针对手机触控的特点,它优化了输入框、选择器、日期picker这些组件的操作逻辑。输入框能自动唤起输入法,还能自适应输入高度;选择器不用PC端那种下拉框,改成了弹窗式,选起来更方便;日期picker支持滑动选择,比点来点去省事多了。而且组件自带表单验证,输错了会实时提示,不用用户反复核对,能省不少事。
  2. 自适应导航组件:支持顶部导航和底部tab导航这两种手机上最常用的样式,导航栏的高度、字体大小、图标尺寸,都会自动适配屏幕。另外,像导航栏折叠、返回手势这些手机用户习惯的功能,它也都支持,用起来很顺手,不会有生硬的感觉。
  3. 轻量弹窗与提示组件:手机端的弹窗要是像PC端那样全屏,会特别影响体验。宏天H5 Builder的弹窗是轻量化、半透明的,不会遮挡核心内容;Toast、加载提示这些组件,样式也很简洁,显示时间和位置都能自己调,既能起到提示作用,又不会打扰用户操作。

值得一提的是,这个组件库还支持自定义样式和扩展。你可以根据自己项目的需求,修改组件的颜色、尺寸、操作逻辑,甚至能导入自己写的组件,既有通用性,又能满足个性化需求,解决了很多低代码平台组件不够灵活的问题。

三、离线缓存策略:应对弱网/无网场景,不耽误用

手机用H5的场景太复杂了,地铁、户外这些地方,要么信号弱,要么没网,要是H5不能离线访问,用户体验肯定好不了。宏天H5 Builder内置了完善的离线缓存功能,不用我们写复杂的Service Worker代码,通过可视化配置,就能实现页面资源的离线缓存,就算在弱网、无网环境下,也能正常访问核心功能。

我们实际用的时候,离线缓存主要分三步来做,既保证了缓存效率,也能及时更新资源,大家可以参考一下:

第一步,配置缓存资源的范围。在宏天H5 Builder的离线缓存配置面板里,选择要缓存的资源类型,比如页面HTML、CSS、JavaScript、图片这些静态资源,还有接口返回的核心数据。同时可以设置缓存有效期,避免缓存的资源过期,导致显示的内容和后台不一致。

第二步,做好缓存更新。平台支持两种更新方式,手动更新和自动更新。手动更新可以加个按钮,让用户主动刷新;自动更新会检测资源的版本号,后台资源更新后,会自动触发缓存更新,确保用户看到的是最新内容,不会出现缓存堆积的问题。

第三步,优化弱网场景的体验。要是网络不好,平台会优先加载缓存的资源,同时显示加载提示,等网络恢复了,再自动同步最新数据;要是完全没网,就直接显示缓存的核心内容,还会提示用户“当前无网络,展示离线内容”,保证应用能正常用,也不会占用太多手机存储空间。

四、PWA集成:实现“类原生”体验,留住用户

H5做移动端适配,最终目的其实就是想达到类似原生APP的体验,这样才能留住用户。PWA(渐进式Web应用)正好结合了Web和原生APP的优势,能实现添加到桌面、离线访问、推送通知这些原生功能。而宏天H5 Builder把PWA集成的流程简化了,不用我们懂复杂的PWA开发,简单配置一下就能完成集成。

在宏天H5 Builder里集成PWA,就两步核心配置,全程都是可视化操作,不用写原生代码,特别简单:

  1. 基础配置:在平台的PWA配置面板里,设置应用名称、图标、启动页、主题色这些基础信息。图标支持多种尺寸,能适配不同手机的桌面显示;启动页可以加加载动画,主题色能和应用整体风格保持一致,添加到桌面后,看着就和原生APP差不多。
  2. 功能配置:开启离线访问、桌面添加、推送通知这些核心功能就好。其中离线访问和前面说的离线缓存是联动的,保证没网的时候也能正常用;桌面添加功能能让用户把H5应用加到手机桌面,点击图标就能打开,不用再通过浏览器,用起来更方便;推送通知可以对接第三方服务,能给用户发消息,有助于提升用户留存率。

集成PWA之后,用宏天H5 Builder开发的H5应用,既有原生APP的体验,又保留了H5跨终端、不用下载安装的优势,既兼顾了用户体验,又没增加开发难度,也让低代码H5应用的移动端落地场景更多了。

五、实践总结与优化建议

用宏天H5 Builder做移动端适配这段时间,我们确实解决了低代码H5移动端开发的四个核心难题——响应式适配、交互体验、离线访问、类原生体验,真正实现了一次开发、多端适配,开发效率比传统开发提高了60%以上,应用的兼容性和用户体验也都有保障。

结合我自己踩过的坑和积累的经验,给大家提几个优化建议,希望能帮大家进一步提升应用体验:

  1. 响应式布局优化:尽量用平台内置的自适应容器,别手动设置固定宽高,容易出问题;如果要适配折叠屏这种特殊设备,可以自定义断点,确保布局能全面适配。
  2. 组件使用优化:优先选移动端专用的组件,别把PC端的组件直接搬过来用,体验会很差;根据项目需求,适当调整组件的操作逻辑,贴合手机用户的使用习惯。
  3. 缓存策略优化:缓存资源别贪多,只缓存核心资源就好,不然会占用太多手机空间;定期检查缓存更新机制,确保资源能及时同步,避免出现内容不一致的情况。
  4. PWA集成优化:根据自己的应用场景,选择性开启PWA功能,不用全部开启;优化一下应用图标和启动页的设计,让“类原生”的体验更到位。

总的来说,宏天H5 Builder靠可视化配置和完善的适配能力,给低代码H5移动端开发提供了一个高效又便捷的解决方案,尤其适合中小企业和非专业前端开发者,能快速把移动端H5应用做出来。现在移动端开发的需求越来越多,合理利用低代码工具的适配能力,既能降低开发门槛,又能保证用户体验,算是实现了开发效率和用户体验的双赢吧。

全文链接:https://tecdat.cn/?p=45206

原文出处:拓端数据部落公众号

封面

    • *

引言

在一项金融服务客户体验优化 项目 **中,我们面临一个典型挑战:海量客户服务工单既包含非结构化的文本描述,又附带账户年龄、历史工单数等结构化字段。传统方法要么丢弃文本信息,要么用词袋模型粗暴转换,导致预测模型难以捕捉语义层面的紧急程度、用户情绪等关键信号。如今,大语言模型(LLM)的涌现让我们有了更优雅的解法——将其作为特征工程引擎,从文本中精准提取业务可理解的结构化字段,再与数值特征融合,送入传统分类器。

本文内容改编自过往客户咨询项目的技术沉淀并且已通过实际业务校验,该项目完整代码与数据已分享至交流社群。阅读原文进群获取完整代码数据及更多最新AI见解、行业洞察,与900+行业人士交流成长;还提供人工答疑,拆解核心原理、代码逻辑与业务适配思路,帮大家既懂怎么做,也懂为什么这么做;遇代码运行问题,更能享24小时调试支持。

我们将沿着“数据构建—LLM特征抽取—模型训练”的主线,完整演示如何利用 Groq 托管的 LLaMA **模型,从客户工单文本中提取“紧急程度”与“挫败感”两类结构化特征,并基于这些新特征训练随机森林分类器,实现对工单类别的精准预测。全文脉络可概括为以下流程:

数据准备  
   ↓  
文本特征提取 ← LLaMA(Groq API)  
   ↓  
特征合并(文本特征+数值特征)  
   ↓  
标准化 + 随机森林训练  
   ↓  
模型评估  

从文本到表格:利用大语言模型进行特征工程
 

    • *

背景与创新

传统机器学习流水线中,非结构化文本通常被当作“鸡肋”——要么直接丢弃,要么用 TF‑IDF 或词嵌入转换为高维稀疏向量,不仅增加计算负担,还难以对齐业务语义。而本文的创新之处在于:将预训练大语言模型(LLM)作为特征提取器,通过精心设计的提示词,强制模型输出符合预定义 JSON Schema 的结构化字段。这种方式不仅保留了文本的深层语义,还将输出维度压缩到业务可直接解读的 2~3 个特征(例如紧急度评分、是否挫败),使得后续的随机森林等传统模型既能享受结构化数据的简洁,又能捕捉到语言中隐含的关键信号。

    • *

准备工作与依赖库

首先导入必要的库。为了适配 Groq 的 API,我们使用 OpenAI 的客户端库。

代码说明

  • 我们使用 OpenAI 类来统一调用 Groq 托管的 LLaMA 模型,因为 Groq 的 API 接口与 OpenAI 兼容。
  • 实际部署时需在环境变量或 Colab Secrets 中安全存储 API 密钥。
    • *

构建模拟客户工单 数据集**

为演示流程,我们随机生成 100 条客户服务工单记录。每条记录包含文本描述、两个数值型字段(账户年龄、历史工单数)以及一个类别标签(工单类型)。

import random
random.seed(42)
# 定义工单类别
tkt_categories = ["access", "inquiry", "software", "billing", "hardware"]
# 每个类别对应的文本模板
msg_templates = {
    "access": [
        "账户已锁定 {days} 天,急需解锁!",
        "无法登录,一直提示密码错误。",
        "立即重置我的访问权限。",
        "两步验证失效,请协助登录。"
    ],
    "inquiry": [
        "新信用卡何时能寄到?",
        "查询近期订单状态。",
        "周末营业时间是几点?",
        "能否升级到高级套餐?"
    ],
    "software": [
        "查看交易历史时应用频繁闪退。",
        "软件 bug:提交按钮呈灰色不可用。",
        "自上次更新后页面加载极慢。",
        "仪表盘报 500 内部服务器错误。"
    ],
    "billing": [
        "账单上有笔超额扣款,需要退款。",
        "本月为何被扣款两次?",
        "请更新支付方式,旧卡已过期。",
        "我未授权这笔 49.99 美元交易。"
    ],
    "hardware": [
        "硬件令牌损坏,无法登录。",
        "设备的屏幕碎裂了。",
        "读卡器现在无法正常扫描。",
        "电池十分钟耗尽,需更换设备。"
    ]
}
records = []
for _ in range(100):
    cat = random.choice(tkt_categories)
    # 部分模板中包含 {days},随机生成 1~14 天
    text = random.choice(msg_templates[cat]).format(days=random.randint(1, 14))
    records.append({
        "text": text,
        "account_age_days": random.randint(1, 2000),
        "prior_tickets": random.choices([0,1,2,3,4,5], weights=[40,30,15,10,3,2])[0],
        "label": cat
    })
df_raw = pd.DataFrame(records)

代码说明

  • 通过模板加随机参数的方式生成多样化的文本内容,同时保留类别标签。
  • prior_tickets 使用加权随机,模拟实际中低工单量用户占多数的分布。
    • *

相关文章

DeepSeek、LangGraph 和 Python **融合 LSTM、RF、XGBoost、LR 多模型预测 NFLX 股票涨跌 | 附完整代码数据

原文链接:https://tecdat.cn/?p=44060

    • *
    • *

利用 LLaMA 提取结构化特征

我们定义两个待提取的特征:urgency_score(1~5 的紧急程度)和 is_frustrated(是否包含挫败情绪)。使用 Pydantic 定义 JSON **Schema,确保 LLM 输出格式严格匹配。

class TicketFeatures(BaseModel):
    urgency_score: int = Field(description="紧急程度,1 最低,5 最高")
    is_frustrated: int = Field(description="用户是否表现出挫败感,1 表示是,0 表示否")
def extract_ticket_features(text_input: str) -> dict:
    # 为遵守免费版 30 RPM 限制,每次调用前等待 2.5 秒
    time.sleep(2.5)
    schema_json = json.dumps(TicketFeatures.model_json_schema())
    response = client.chat.completions.create(
        model="llama-3.3-70b-versatile",
        messages=[
            {
                "role": "system",
                "content": f"你是一个特征提取助手。请仅输出符合以下 JSON Schema 的有效 JSON:{schema_json}"
            },
            {"role": "user", "content": text_input}
        ],
        response_format={"type": "json_object"},
        temperature=0.0
    )
    return json.loads(response.choices[0].message.content)
# 批量提取特征(此处省略了批量处理的优化代码,实际可并行调用)
print("1. 正在使用 LLaMA 提取结构化特征...")
extracted = df_raw["text"].apply(extract_ticket_features)
feat_df = pd.DataFrame(extracted.tolist())
# 合并原始数值特征与 LLM 提取的特征
X_engineered = pd.concat([df_raw.drop(columns=["text", "label"]), feat_df], axis=1)
y_target = df_raw["label"]
print("\n2. 最终构建的特征表格:")
print(X_engineered.head())

代码说明

  • extract_ticket_features 函数将文本发送给 LLaMA,并要求返回符合 TicketFeatures 模式的 JSON。
  • 实际生产环境中应实现批处理、缓存与重试机制以提升效率。

阅读原文进群获取完整内容及更多AI见解、行业洞察,与900+行业人士交流成长。

    • *

模型训练与评估

将构建好的特征进行标准化,然后划分训练集和测试集,训练随机森林分类器。

输出示例

结果分析
由于数据集较小(仅 100 条),且标签分布不均,模型整体准确率约 45%,但 inquiry 类别表现优异(精准率与召回率均为 1.0)。这验证了 LLaMA 提取的特征确实为分类器提供了有效信号,尤其是文本中蕴含的语义信息被转化为数值特征后,显著提升了易混淆类别的区分度。在实际业务中,只需扩充数据规模并优化特征设计,即可获得更可靠的模型。

阅读原文进群获取完整内容及更多AI见解、行业洞察,与900+行业人士交流成长。

    • *

总结

本文展示了一条新颖的混合建模路径:将大语言模型作为“特征工程即服务”的工具,从非结构化文本中提取结构化特征,再与传统数值特征结合,训练可解释的树模型。该方法既发挥了 LLM 的语义理解能力,又保留了传统模型的高效与稳定,尤其适合对特征可解释性有要求的业务场景(如金融风控、客户服务分析)。

未来,我们可进一步扩展特征集(如提取产品名称、问题类型),并引入批处理与缓存机制,将单条处理的延迟优化为批量吞吐,使该方案能够支撑生产级数据流。

关于分析师

在此对 YouMing Zhang 对本文所作的贡献表示诚挚感谢。YouMing 毕业于东北大学信息与计算科学专业,专注机器学习与 深度学习算法 研究,熟练掌握 Python、Matlab 等分析工具,擅长从数学原理出发理解和优化算法模型。曾参与多项自然语言处理与金融风控项目,在利用大语言模型进行特征工程方面积累了丰富实战经验。

阅读原文进群获取完整内容及更多AI见解、行业洞察,与900+行业人士交流成长。

封面

小T导读:当天文观测进入 PB 级时代,问题不再是“有没有数据”,而是“数据该怎么用”。面对高基数、高频次的时域观测数据,传统的数据处理范式已经逼近极限。国家天文科学数据中心(NADC)围绕新一代科研需求,探索“计算向数据靠拢”的存储与分析架构,并在多时标光变曲线生成、高能光子数据库等关键场景中引入 TDengine 时序数据库,构建支撑海量时序数据就地分析的技术体系。本文将系统介绍这一架构的设计思路、核心能力及其在真实科学发现中的实际价值。

合作背景

随着天文观测技术的快速发展,天文数据规模正呈指数级增长。预计到 2030 年底,来自空间与地面的天文观测数据总量将达到约 500 PB,远超人类历史上累计获取的数据规模。面对如此海量的数据,传统的“检索—下载—分析”科研模式已难以为继,受限于网络带宽和计算资源,海量的原始数据无法被高效地传输至客户端进行集中处理。

在此背景下,亟需构建一种支持“计算向数据靠拢”的新型存储与计算架构,即在数据存储层直接完成重采样、聚合等分析操作,仅向用户返回处理后的结果,从而支撑新一代数据密集型科研范式。

时域天文作为未来天文学的重要分支之一,正在产生持续、高频、大规模的时间序列数据。国际上的 LSST、ZTF 以及国内的司天、EP 等望远镜,均属于典型的时域天文观测设施。传统关系型数据库在存储和管理此类时域数据时暴露出明显不足,包括压缩效率低、存储成本高、查询延迟大,以及难以支持降采样、时序分析算符和多维聚合等分析需求。

基于上述挑战,国家天文科学数据中心(NADC)在时域天文数据领域,开展了面向新科研范式的计算与存储架构研究,探索能够支撑海量时序数据高效管理与就地分析的新型技术路径。

为什么选择 TDengine TSDB?

支持高基数、高频次数据的高效管理

时域天文观测对数据管理系统提出了“高基数 + 高频次”的双重挑战,而传统关系型数据库在这一场景下难以满足需求。关系数据库最初面向事务处理(OLTP)场景设计,采用以“行”为单位的存储结构。当用于存储高频时域观测数据时,这种设计暴露出明显瓶颈:由于同一时间段内的不同观测量分散存储在大量行中,在查询某一时间区间内的特定数据列(例如单个天体的光变曲线)时,系统需要频繁进行跨行、跨磁盘位置的随机访问,导致 I/O 开销显著增加,查询效率大幅下降。

而在时域天文数据分析中,典型的访问模式恰恰是针对同一时间区间的一列或多列连续数据进行分析。随着 TESS、EP 等时域天文望远镜引入超大视场设计,每个天体被高频、多次重复观测,高频写入与批量时序查询并存,使关系数据库在存储效率和查询延迟上的问题进一步放大,想要解决这一问题,就需要应用更为专业的时序数据库。

进一步地,将大视场的 TESS 图像与高分辨率的 Gaia 星表进行联合测光,生成 Tess–Gaia 联合光变曲线后,数据同时具备了“高基数”、“高频次”特征。这使时域天文成为一个典型的高基数时序数据场景。所谓高基数,是指时序数据中标签(如天体编号、坐标等)的取值数量极大,会导致标签索引膨胀、元数据规模迅速增长,进而引发表定位困难和查询性能下降等问题。

根据已有行业测试结果,在低基数、高频次的时序场景中,InfluxDB 表现良好;但当基数显著上升时,其性能受限于底层的 LSM-Tree 数据结构而急剧下降。相比之下,TDengineTSDB通过引入 VNode 等分布式存储与调度机制,并定义了一种被称为“超级表”的创新数据模型,从架构上将高基数问题进行拆解和隔离,有效避免了标签爆炸对单表性能的影响,更适合支撑大规模、高基数的时域天文数据管理需求。

支持近数据计算,减少网络传输

在时域天文研究中,科学家经常需要围绕不同的科学目标(如搜索短时标的快速射电暴或长时标的变星周期),对同一组原始观测数据进行不同时间窗口(Time-bin)的重采样分析。

如果沿用传统的“存储—查询—传输—计算”模式,将海量原始时序数据完整传输至应用端再进行分析,不仅会对网络带宽造成持续压力,还会显著增加客户端的内存占用与计算负担,在 PB 级数据规模下几乎不可行。

TDengine TSDB 提供了面向时序数据的强大窗口计算能力,支持在数据库服务端直接完成时间窗口划分(window)、降采样(downsampling)以及多维聚合分析等操作。基于这一能力,可以将光变曲线生成算法中最核心、最耗时的聚合与重采样逻辑下沉至数据库层执行,仅将处理后的轻量级结果数据返回给应用端。

支持大规模表间的多维度聚合分析

为保证数据的高压缩率与高写入吞吐能力,我们采用了 TDengine TSDB 推荐的“一个数据采集点一张表”的建模策略,即一个天体或一个天区一张表。这种设计能够最大化发挥时序数据在时间维度上的连续性优势,但在 NADC 的业务场景下,也意味着需要同时管理上千万甚至上亿张子表,传统数据库在表管理、跨表查询和聚合分析方面难以承受如此规模。

针对这一问题,TDengine TSDB 在数据模型层面引入了“超级表(Super Table)”机制,将具有相同 Schema 的子表在逻辑上归为一个超级表,并允许通过标签(Tag)对子表进行多维度的分类和过滤。

基于超级表模型,我们能够轻松实现跨天体、跨天区的多维度聚合分析,例如“查询误差半径内不同时间范围的光子数”。通过该机制,系统在保持子表物理独立存储所带来的高并发写入与高压缩效率优势的同时,有效解决了海量小表场景下的管理困难和跨表分析性能瓶颈,为大规模时域天文数据的统一分析提供了可行路径。

TDengine TSDB 业务应用

多时标光变曲线生成工具 LCGCT

多时标光变曲线生成工具用于从望远镜原始观测数据出发,采用不同时间间隔进行分箱处理,生成多时间尺度的光变曲线,以满足暂现源搜寻、变源周期提取等不同科学目标的需求。在该系统中,包含三类实体:Source、Instrument 和 Detection。Source 表示一个实际天体,如 Crab、M87 等;Instrument 表示能够产生独立时序观测数据的望远镜或仪器,当同一望远镜配置有多个滤光片时,不同滤光片在系统中分别作为独立的 Instrument 存在;Detection 表示一次具体的观测行为,即某一 Instrument 对某一 Source 的观测记录,包含时间、流量、曝光时间等观测信息。从数据关系角度来看,Source 与 Instrument 之间为多对多关系,二者通过 Detection 进行关联。

Tess–Gaia 联合光变曲线是一类典型的高基数、高频次数据,覆盖上千万个天体。为获得更高的数据压缩率与检索效率,我们选用 TDengine TSDB 作为底层存储引擎,并采用“一个仪器对一个源的观测存储一张表”的方案,将 Detection 数据统一存储于同一超级表中,并以 SourceId 和 InstrumentId 作为标签进行子表划分,最终分布式存储于 TDengine TSDB 集群中。

这种设计不仅极大地降低了标签数据的冗余存储,还保证了同一天体数据的物理连续性,从而实现了高达 75% 的数据压缩率。同时,借助 TDengine TSDB 强大的集群支持能力,我们能够轻松实现数据的横向扩展,高效应对千万级天体表的并发写入与查询需求。

在查询性能方面,TDengine TSDB 的 Vnode(虚拟数据节点)机制在该场景中发挥了关键作用。每个子表的数据被映射到特定的 Vnode 中进行管理,使得查询请求可以被拆分并由多个 Vnode 并行处理,充分利用多核计算资源,显著缩短查询响应时间。借助“一个数据采集点一张表”的数据模型,单个子表(光变曲线)的数据在同一 Vnode 内顺序存储,时间范围查询主要以顺序读为主,相比随机读可获得数量级上的性能提升。

此外,TDengine TSDB 针对时序数据构建了高效的时间索引结构。在定位具体子表(光变曲线)时,系统可在索引文件中快速锁定可能包含目标数据的数据块,避免全表扫描,尤其适合以时间戳为核心条件的过滤查询。对于降采样等常见聚合分析场景,TDengine TSDB 还支持使用预计算结果直接完成聚合计算,无需反复读取和解压原始数据,进一步降低 I/O 开销并提升查询效率。

在天文数据分析过程中,天文学家经常需要使用不同时标(Time-bin)的光变曲线,如果采用传统方式,将海量原始数据全部通过网络传输到应用端再进行重采样,无疑是对带宽和计算资源的巨大浪费。为此,我们基于泊松统计模型,利用原始观测的流量、误差与曝光时间,推导并实现了反推有效面积以及并道光变曲线流量与误差的计算方法。

在此基础上,依托 TDengine TSDB 在存储端提供的窗口计算与聚合分析能力,将光变曲线生成过程中的核心处理逻辑(如时间重采样与降采样)直接转移至数据库层执行。通过 LCGCT 工具,用户无需查询完整原始数据集,即可在数据端按需生成任意时标的光变曲线,仅将处理后的结果数据返回至应用端。这种方式显著减轻了网络传输负担,极大地提升了科学发现的效率。

数据库端降采样以减少网络传输

高能光子数据库 XPhotonBank

传统的X射线天文数据往往以预处理后的图像或固定时标的光变曲线形式存在,但这限制了科学家对瞬变天体的精细化研究。从数据科学视角来看,这些数据都是光子事例数据的“派生”数据,或者说,光子事例数据是更高维的数据,因而也蕴含着更丰富的特征。为了支持在任意观测时段和天区位置灵活生成可定制时间窗口的图像、光变曲线和能谱,以及从更高维度研究各类天体的特征,我们需要直接存储最原始的光子事例(Photon Events)数据。

光子事例数据同样是一个典型的高基数、高频次场景。EP 卫星每年观测到的光子数接近 200 亿个,为了实现对全天球光子数据的高效空间索引,我们采用了“一个天区一张表”的存储策略,将天空按照 HEALPix 网格划分为数千万的细粒度网格,每个网格对应 TDengine TSDB 中的一张子表。

在光子级多时标光变曲线生成场景中,多维度数据聚多维度的数据聚合操作尤为普遍。在实际科学分析中,单个天体的观测往往受到仪器点扩散函数(PSF)和定位误差的影响,其对应的光子事例数据通常分布在相邻的多个天区网格中。依托 TDengine TSDB 的超级表数据模型和强大的多维度聚合能力,系统能够根据源的中心坐标和误差半径,自动定位并筛选出覆盖该区域的多个天区子表,并在服务端对这些子表中的光子数据进行实时聚合,从而直接在数据库层完成跨子表计算,生成任意时标的光子级别的光变曲线,实现长期光子级光变曲线的秒级响应。

科学发现

EP251020a

EP251020a 是使用以上系统发现的重要成果之一。该源在 EP 宽视场 X 射线望远镜(WXT)中的定位坐标为赤经 74.292 度、赤纬 -11.746 度(J2000 历元),半径方向不确定度为 3.1 角分(90% 置信度,含统计与系统误差),与星系 LEDA 962438 位置一致。

研究团队利用 FXT 和 Swift/XRT 进行的后续观测,进一步将 X 射线源精确定位到宿主星系的核区;同时,UVOT 观测到其亮度较历史记录显著增强,这些证据共同支持该事件属于潮汐瓦解事件。在 2025 年 9 月底,该源即通过光子数据库探测到信号,从而引起科研人员的注意。20 多天后,该天体接近本次爆发峰值,才被单次观测处理流水线正式探测到并被命名为 EP251020a。

XPhotonBank 的预警能力成功捕获了原本可能遗漏的早期辐射阶段,显著延长了观测的时间基线并提前引起科研人员注意,为该源证认为为罕见的潮汐瓦解事件候选体争取了宝贵的观测数据和后随观测支持。

上图 (a)由 XPhotonBank 生成的 EP251020a 位置区域的叠加 X 射线图像,显示了该暂现源在单次观测触发前已出现。(b) EP251020a 的 10 天分段光变曲线,显示该暂现源在 2025 年 9 月下旬已开始活动。

EP J012607.7+121047

EP J012607.7+121047 是 XPhotonBank 发现的另一例暂现源,位于赤经 21.510 度、赤纬 12.186 度(J2000 历元),定位不确定度为 2.5 角分。根据 WXT 能谱推得的 0.5–4 keV 波段流量约为 3.5×10-¹² erg·s-¹·cm-²,低于 1000 秒曝光时长的灵敏度极限,因此未被标准单次观测流水线探测到。

而 XPhotonBank 的叠加分析在 2025 年 8 月探测到该源并触发了 FXT 的后续观测,确认其在空间位置上与候选激变变星 AT2023row(即 Gaia23cer)相符。这一发现与后续验证,充分体现了 XPhotonBank 在从叠加数据中挖掘微弱暂现源方面的有效性。如图中所示,XPhotonBank 完整记录了该暂现源从 2025 年 8 月至 12 月的爆发过程。

上图 (a) 由 XPhotonBank 生成的 EP J012607.7+121047 位置区域 1 天叠加 X 射线图像,显示该暂现源可在叠加数据中出现。(b) 8 天时间窗口的叠加光变曲线,表明 XPhotonBank 能够完整观测到该暂现源从 2025 年 8 月至 12 月的整个爆发过程。

关于 NADC

国家天文科学数据中心是由科技部、财政部认定的国家科技资源共享服务平台,属于基础支撑与条件保障类国家科技创新基地,负责汇交管理、整编、集成天文学科领域数据,制定相关标准规范,建设天文数据资源体系,优化完善天文数据开放共享服务平台,提供多元数据服务,建立数据挖掘分析与学科应用平台,促进天文学科领域科学数据的深度应用,开展科学传播和国际合作交流,努力把自身打造成为优秀的国家科学数据中心和国际知名的天文科学数据中心,成为引领天文学进入数据密集型科学发现新时代的重要资源平台和技术力量。

2026年3月9日,微软正式宣布与Anthropic达成深度合作。微软在其官方博客中发布重磅消息:全新推出 Microsoft 365 E7 订阅层级,首次将 Anthropic 的 Claude AI 深度集成到 Copilot 服务中,推出 Copilot Cowork 功能。

这是微软首次在 Office 套件中引入第三方大模型,标志着企业AI办公进入"多模型协同"的新纪元。

什么是 Copilot Cowork?

不同于传统的 Copilot 聊天助手,Copilot Cowork 是一款真正的 AI Agent(智能代理)——它能够:

  • 自主任务执行 — 无需人工逐步指导
  • 多步骤自动化 — 自动规划并执行复杂流程
  • 主动规划— 预判用户需求,主动提供解决方案

典型应用场景

场景一:智能会议助理

自动读取会议邀请和附件,提前准备会议资料和讨论要点,实时记录并生成结构化会议纪要,自动分配待办事项给相关人员。

场景二:文档智能处理

批量分析合同、报告等长文档,提取关键信息并生成摘要,跨文档对比分析,自动格式化输出。

场景三:数据洞察助手

连接Excel、Power BI等数据源,自动识别数据异常和趋势,生成可视化分析报告,预测性分析建议。

为什么微软选择Claude?

1. 超长上下文窗口

Claude 支持高达 200K tokens 的上下文,可一次性处理数百页文档,完美适配企业级长文档分析需求。

2. 强大的推理能力

在复杂逻辑推理任务上表现卓越,擅长多步骤任务规划与执行,更适合企业级业务流程自动化。

3. 安全与可控性

Anthropic 的 Constitutional AI 技术,更低的幻觉率和错误输出,更符合企业合规要求。Microsoft 365 E7 包含:Copilot Cowork (Claude驱动)智能身份管理高级安全合规设备管理与保护企业级支持服务迅易科技观点

趋势一:多模型融合成为主流

微软此举表明,未来企业AI不会是"一家独大",而是根据场景选择最适合的模型。GPT、Claude、Gemini各有所长,融合使用才是正解。

趋势二:AI Agent 时代正式开启

从"对话式AI"到"代理式AI",AI正在从工具进化为数字员工。企业需要重新思考人机协作模式。

趋势三:平台化整合加速

微软将Claude打包进M365,说明企业AI正在从"技术采购"转向"能力订阅"。给企业建议

图片

如果您对上述内容感兴趣,欢迎前往迅易科技官网了解。

编者按:本文是少数派 2025 年度征文活动#TeamCarbon25标签下的入围文章。本文仅代表作者本人观点,少数派只略微调整排版。

今年的征文活动更有创意,「只能用 AI」和「不能用 AI」两大赛道激情 PK,硅基生物和碳基生物都将决出各自领域的佼佼者。我们会在征文结束后统一组织投票活动,但在正式投票之前,如果你喜欢这篇文章,不妨通过充电或评论的方式支持作者,让内容创作者获得更多维度的鼓励。


2025 年度征文里的手工匠人赛道写道:

如果你坚持认为,有一些属于人的独创性光芒,即使在 AI 的潮流中,仍然无可替代,欢迎在这个赛道中通过作品证明你的观点。

我想到了这篇在 Obsidian 草稿箱中躺了一年的文章,这本是投 2024 年度征文的文章,当时写完后觉得方法论的味道太浓,我不满意,投出后又给删了。

一年后,我觉得自己没了那么多方法论,是时候再写一遍投出去了。

离家出走

我妈离家出走的那天,背了我从迪卡侬给她买的红色背包,拉了个小行李箱,没和我说一句话就走了。

她东西很多,没拉我给她买的那个 28 寸大行李箱,我知道她不是真要走。她是想吓唬我,希望我把她追回来。

但我没有。想拿捏我?想都别想。我觉得自己看穿了她。

我确实没把我妈追回来,不过我老婆把她追了回来。

我们冷战了几天,互不说话,时间流逝,事情就这么过去了。一如往常。

一如往常的意思是,我们家一直都是这样。吵完了,谁都不认错,过几天,就当事情从未发生过,依旧过着日子。问题不会消失,只是被搁置着,等着不知什么时候的下一次再爆发。一向如此。

以前觉得这样也挺好,维持表面和气得了,否则又要去面对一堆乱七八糟说不清楚的东西,但这一次有些不同。

我看到我妈红肿的眼睛,又看着我老婆和儿子。家里两对母子,对比鲜明。这是一种不太能说得清楚的感觉。

我妈就这么来了

2020 年,我老婆怀孕,我妈说想来照顾,我们没反对,她就这么来了。

她来得很自然,像是一件顺理成章的事。没人要求,没人拒绝,大家都觉得应该如此。但「应该」这二字,后来想想,其实谁都没真正想过到底意味着什么。

2021 年,我儿子出生,我和我老婆都决定自己带孩子。

不是一开始就这么打算的,是孩子生下之后,我们发现和我妈的理念实在相差太远。

她想给孩子用尿布,我们坚持要用纸尿裤。她一边看直播一边看孩子,我们觉得这不叫看孩子。孩子哭了,她第一反应是赶紧哄住别让孩子哭,我们觉得孩子哭是在表达,不该急着把哭哄回去,而是看看孩子有啥需求。

其实都不是啥大事,但每一件事都告诉我们,还是自己来吧。况且,带孩子本就是父母的责任,再推给上一辈,说不过去。

于是,先是我老婆带,她找到工作后,又换成我,全职在家带孩子。

我妈就这么被搁在了一边。她每天能做的事,是做饭、拖地,再没别的。她也不是没试过参与,时常过来看看孩子,但孩子不跟她,她站一会儿,也就走了。

她的手机几乎一天到晚都在响,醒着的时候放快手直播,睡着了还在放,有时太吵,我就起来去关掉。为这事我和她说过几次,没用。后来我买了个有线耳机给她,又买了个无线耳机,不管她用不用,不再管了。

直播间里的东西,我妈也没少买,保健品、小家电、各种都有。我拦过,拦不住,索性就不拦了。她买回来的东西我就上网查个更便宜的价格给她看,她觉得吃亏,自己就退了。有些保健品实际是压片糖果,我就告诉她少吃,吃多了血糖会高,她也就不怎么吃了。

我为自己的小聪明得意洋洋,觉得自己处理的都不错,我甚至觉得,比起吵架,我成熟多了。不吵不闹,有理有据,能解决的都解决了,解决不了的实在是没那个本事,不该管的也就别管。

我觉得我妈得知足,和儿子住一起,我妹又住楼下,儿子女儿都在身边,孙子外孙女也天天能见,儿媳妇和她相处和善,她想吃啥就能吃啥,也不用干活,多自在的生活啊!

那时我没刨根问底的是,为什么她一天到晚看直播,为什么要买那些东西。

她过得并不容易

我上大学那年,她和我爸离了婚。其实高一的时候就该离,我爸在北京打工,有了外遇,那年过年我来北京,见到了后来的后妈。但为了我,他们的婚姻硬撑了三年。离婚之后,我妈对我爸只有恨,满满的恨,生活里就剩下她自己和两个孩子。

她一直在靠自己撑着。

她所有的感情,都押在了我和我妹身上。我们近乎她的一切,所以在她让我找工作而发生争吵后,她要离家出走,在她看来,我这个儿子已经没用了,大概是觉得天也要塌了吧。

别自以为是了

近些年一直有关于原生家庭的讨论,多数人都在谈和父母间的矛盾、对抗,我也曾如此。

我不理解我妈,觉得她是个敏感、情绪化、控制欲强的人,改不了的。

读过些关于亲密关系、原生家庭的书籍后,我更确信,她想控制我的生活,我俩之间的问题出在她身上,不在我身上。我是那个被原生家庭影响的人,需要和过去划清界线,保护好自己。

这个结论一度让我很安心,既然问题是父母带来的,那我就不用做什么,和他们保持距离就好。

但在我自己带了两年多孩子后,我慢慢觉得不太对。

我花了很多时间学习如何当一个好父亲,怎么和孩子沟通,如何尊重孩子的感受。可我渐渐意识到,我对一个三四岁孩子都能做到的事情,对我妈却做不到。我能蹲下来耐心和我儿子说话,却没办法心平气和地跟我妈聊上几句。

我觉得挺荒谬的。

我努力想当一个好父亲,可等我儿子长大了,他会不会也觉得问题出在我身上呢?我现在自以为做的很好,但谁知道呢?也许我在无意中给孩子制造着某种压力,或让他觉得我在支配他。到那时候,我希望他怎样对我?是把我当成一个要对抗的人,还是愿意坐下来,和我好好聊聊呢?

我觉得我应该先做那个坐下来聊聊的人,不把问题都抛给原生家庭,不去改变我妈,而是能不能先把门打开,我走过去,让她自己决定要不要走过来。

我决定试试,别那么自以为是了。

先从说话开始

以前和我妈说话,我总是带着一股劲儿,不耐烦的时候语气就冲,觉得自己说的是对的,她听不进去是她的问题。但我跟我儿子说话从来不这样,哪怕他把水洒一地,我也能蹲下来慢慢说。

想到这儿,我就觉得不对。

于是我告诉自己,不管什么情况,和我妈说话,语气放平。不指责,不反驳,先听她说完。这事说起来简单,做起来是真的难,不少次话到嘴边又咽回去,憋得难受。但我发现,只要我不呛她,她就没啥事,事情就能接着聊。

我开始和她聊天。聊老家的事,哪个亲戚怎么了,谁家孩子结婚了,谁又生病了。她爱说这些,以前我觉得没什么好聊的,嗯嗯啊啊敷衍两句就赶紧走了。现在我可以坐下来,听她说完。她不是要我回应什么,她就是想有个人听她说话。

我们之间的对话,原来十句里有八句是死胡同,这时偶尔能拐个弯了。

支持她的事业

除了和一般老太太一样对纸壳等废品无法自拔,我妈还爱捡菜。

我们住的附近有个北京交易规模最大的农产品专业批发市场,里面应有尽有,我妈去里面捡菜。

起初我觉得丢人,不愿她去。如今要表示支持。

她不会骑三轮车和电动自行车,骑自行车去捡菜,旧自行车坏了,给她买辆新的,质量好些的。知道她晚上要出去捡菜,我就提前看看车胎,亏气了补补气,少油了抹抹油。

她捡回来的菜其实都还行,一般相当于超市里打特价的品质,有时候甚至还有十分新鲜的。我也不顾及什么面子,能吃尽吃。盘子见底,她就高兴。

我们之间最大的结

带孩子这事,是我们之间最大的结。

我没把孩子给我妈带,虽然这事我觉得堪称明智,但她大概觉得自己被排斥在外。我们一家三口开开心心,她一个人在旁边,像个外人。

在「不让她带孩子」这件事上,我似乎给她画了一条特别分明的界线,这条线把她隔在了外面。

不需要让她承担带孩子的责任,但可以让她参与进来。这两件事是不同的。

我告诉儿子,我们家有四口人:奶奶、爸爸、妈妈和通嘎拉嘎(我儿子小名),每次带孩子出门,我都会让孩子先和我妈说再见,有好吃的分享,也会让孩子先分给他奶奶。

孩子上幼儿园时,需要一张全家福。我叫我妈一起来拍,她说「给幼儿园的还拍我干啥。」我不由分说拽她一起拍了四个人的合影,打印出两张,一张交给幼儿园,一张给了我妈。她把照片放在床头柜上,我儿子总去拿,她又换到更高的镜子上,扭头就能看到。

幼儿园有接送卡,一共两张,我给了我妈一张,告诉她收好,以后接孩子要用。她放在钱包里,然后放在一个很方便拿的地方。时刻准备去接她孙子。

她不说,我说

在我印象里,我妈从来没对我说过「我爱你」。

我几乎每天都会对我儿子说。在我这儿,爱不只是默默守护,还得说出来,让他知道。我也想让我妈知道。

每次我说「妈,我爱你」,她都不好意思地笑着骂我,然后走开。

春节后有一天,她跟我抱怨我妹妹过年来得少。我随口说:「那我小妹也是爱你的。」她说:「她可不爱我。」我问:「那你觉得我爱不爱你?」她说:「你也不爱我。」我追问:「我哪里不爱你了?你说说。」她一边笑一边说:「你就是不爱我。」我们来回掰扯了半天,她始终没承认。

她感受到了。

她朝我们走过来一些

这些事情,说起来都很小。但家里的氛围,正因为这些小事在变。

我妈不再因为带娃的事和我激烈地吵了,有时候看不惯,会埋怨我两句。她还是看快手,还是捡菜,还是会唠叨,但她没再离家出走。

她没有变成另一个人,但我也没有想让她变成另一个人。

我以前总觉得,如果我做了什么,她就应该有所改变,否则就是我白费力气,不如不做。后来我觉得,这个想法本身就是一种控制,和她催我找工作、要求我怎么带孩子,本质上是一样的。我做这些事情,不是为了让她变成我期待的样子,这不可能,她有她自己的方式。

我能做的,就是把我俩之间的门打开,靠近她,让她看见,她自己选择走过来多少,那是她的事。

当然,不是每个家庭都如此。

但至少对我来说,我不想再把和我妈的矛盾扯到「原生家庭」上,然后画上一个句号。它应该是一个逗号,后面还可以接着写,咋写由我们决定。

其实我也都没做啥。买了辆自行车,打印了照片,给了一张接送卡。

是她自己把照片挪到镜子上的,是她自己把那张卡放在钱包最顺手的地方的。

我以为我看穿了她。其实我什么都没看见,只是后来,我推开了一扇门,走过去一点。

她看到了,自己走过来一些。

> 参与 2025 年度少数派征文,分享你的观点和经验 ✍🏻️

> 实用、好用的 正版软件,少数派为你呈现 🚀

    佬们,之前的车翻了。今天下午 1 点新上了一个车,1 点多开始让 AI 干活。。截至 14:20 ,5h 用量只剩 24% ?
    这期间也就是就是 5-6 轮对话。

    是奥特曼飘了,还是商家唬我?

    opencode oauth ,GPT5.4 / 5.3-codex

    组装的台式机,现在什么行情

    CPU:AMD R9 9950X
    主板:华硕 TUF GAMING X670E-PLUS WIFI
    内存:海盗船 32G × 2 DDR5 6400
    固态硬盘:三星 990 PRO 1TB M.2
    固态硬盘:三星 990 PRO 4TB M.2
    显卡:华硕 ATS-RTX4060TI-O8G GAMING 巨齿鲨
    机箱:TT 钢影 X/S (支持顶置 360MM 水冷)
    电源:长城 1250W 金牌巨龙 额定 1250W 金牌全模组
    散热器:利民 CM360 幻芯矩阵 黑色
    风扇:棱镜四代 PRO ARGB 黑色
    显示器:AOC U2790PQ 27 寸 4K 升降旋转

    昨天跟一个法师聊天,他说他有个法术可以长 jj ,名字叫狐仙增阴,我需要做的就是就是烧一杯热水,把热水倒碗里,然后再倒一杯冷水到热水里,再把地址和姓名发给他,拍一张照。他做法术后,兵马就会跑到碗里,我在喝掉。每四天做一次,一个月收费 12 张。听着挺神奇的,他还会很多其他法术,比如增高的

    比起同步失败,较为棘手的是“看似成功”

    作为一名 DBA,深夜收到开发的消息:“Canal 同步任务跑完了,准备明天切业务,你帮看看数据对不对得上?”你熟练地登录数据库,准备手工核对几张核心表的数据量,却清楚地知道,这种抽检方式本质上是“缺乏保障”,无法真正保障数据一致性。

    image.png

    在数据服务生命周期中,数据迁移、主从复制、数据集成等场景均会产生数据流动。Canal 作为成熟的 MySQL 增量日志解析工具,虽能实现数据同步,但受限于软件 程序异常、网络延迟、硬件故障或人为误操作等因素,数据不一致是同步场景中大概率出现的问题。那么,除了通过自定义脚本低效轮询,我们该如何严谨地验证同步后数据一致?

    一、为什么“跑完同步”只是开始?

    许多 DBA 都曾遭遇过同步“看似成功”却暗藏隐患的场景。例如某电商 SaaS 服务商,在一次大商家数据迁移后,仅通过人工抽检核心表数据量便切换业务,最终因订单表存在少量数据不一致,导致大商家业务异常,造成不良品牌影响。

    传统手工抽检风险较高,核心原因在于其存在三个无法规避的盲区:

    • 结构差异被忽略:表结构表面一致,实则可能存在细节偏差——如目标端缺失某类索引,或字段类型精度不匹配(例:MySQL 的 datetime 类型同步至 ClickHouse 时,若映射为 datetime 而非 DateTime64 类型,会导致时间精度丢失)。
    • 数据类型兼容陷阱:Canal 在解析 JSON、地理信息等特殊数据类型时,若目标端不支持该类型,可能出现数据静默截断或转换错误,且此类错误易被忽略。
    • 数据量对不等于内容对:源端与目标端表行数一致,不代表每一行、每一列的具体值经校验一致,部分字段的细微偏差可能引发业务故障。

    因此,同步任务的完成,并非数据交付的终点,而是数据一致性校验的起点。

    二、一个好用的校验工具,应该长什么样?

    人工抽检可靠性不足,自定义脚本轮询又可能影响业务性能,基于 DBA 实际运维需求,一款合格的数据校验工具,需具备以下六项核心特质,才能兼顾严谨性与实用性:

    • 结构一致性校验:可全面对比表、视图、存储过程、触发器等各类数据库对象的定义,避免结构偏差导致的数据不一致。
    • 完善的数据校验:可自动完成屏蔽源端与目标端在字符集、时区、数据格式上的差异,避免因环境配置不同引发的校验偏差。
    • 快速定位不一致:可精准定位具体不一致的数据行及字段,无需人工逐行排查,降低问题定位成本。
    • 自动完成完成订正能力:定位到数据/结构差异后,可自动完成生成标准化修复 SQL,减少人工编写成本与误操作风险。
    • 校验速度快:针对 TB 级海量数据,需具备便捷校验能力,确保在业务停机窗口内完成校验,不影响业务上线节奏。
    • 对生产影响小:具备动态限流能力,可根据数据库负载自动完成调整校验并发度,避免占用过多 IO 资源,保障生产业务稳定运行。

    对照上述标准,结合 NineData 官方文档说明,其数据对比功能可有效解决 Canal 同步后的一致性校验难题,形成完整的校验-修复闭环。

    三、NineData 如何破解“数据对不上”的难题?

    NineData 作为多云数据管理平台,其数据对比功能并非简单的行数(COUNT(*))核对,而是一套覆盖“结构-数据-修复”的全链路数据一致性兜底方案。根据官方文档披露,其核心能力主要体现在以下四个层面:

    1. 结构对比:不止数据,更要校验“数据架子”

    数据不一致的根源,往往是表结构从同步初期就存在偏差。NineData 支持全面覆盖表、视图、存储过程、函数、触发器等各类数据库对象的结构对比,可在 Canal 同步任务启动前(前置校验)或完成后(后置校验)发起结构对比,快速识别两端表定义的差异。若发现结构不一致,NineData 会自动完成生成标准化订正 SQL,用户仅需在目标端执行,即可快速修复结构偏差,从源头规避数据不一致风险。

    image.png

    2. 数据对比:多模式适配,兼顾效率与严谨

    针对不同业务场景与数据量,NineData 提供多种对比模式,可灵活适配各类校验需求:

    • 全量对比:适用于数据量较小或业务可提供停机窗口的场景,通过智能分片与批量混检技术,校验性能可达 100 万笔/秒,确保全量数据全面覆盖校验。

    image.png

    • 快速对比(抽样对比) :适配业务停机窗口较短的场景,通过校验数据量、数据分布,并随机抽取一定比例数据进行一致性校验,快速输出数据一致性置信度,满足快速校验需求。
    • 周期性对比:针对 Canal 搭建的长期复制链路(如主从同步、数据备份),可设置定时自动完成对比任务,一旦检测到数据不一致,将第一时间触发告警,避免问题累积扩大。
    • 不一致复检:针对已发现的不一致数据,可发起快速复检,验证修复效果,确保数据已经校验一致。

    image.png

    3. 性能与稳定性平衡:动态限流,不影响生产

    生产环境中的数据校验,前提不是“跑得越快越好”,而是“尽量不影响业务”。在数据对比任务中,NineData 针对 MySQL 和 SQL Server 提供限流能力:当源数据库的 thread\_running 达到预设阈值时,对比任务会暂停;当该指标回落到阈值以下时,任务再恢复执行。

    这种机制并不意味着系统会对各类数据库统一按 CPU、IO、内存自动完成调节并发,而是在支持的数据源上,通过可观测指标控制对比节奏,帮助 DBA 在推进校验的同时兼顾源库稳定性。

    4. 极端场景适配:无主键表与异构同步

    复杂场景的难点,不在于“能不能跑”,而在于“结果是否足够可控”。

    对于无主键或无唯一约束的表,应将其视为迁移和同步中的高风险对象。在部分复制链路中,如果表缺少主键或唯一约束,可能带来重复同步相同数据等风险。因此,这类对象更适合在迁移前优先治理,而不宜简单理解为工具可以完全兜底。

    对于异构同步场景,NineData 的价值更多体现在预检查、结构复制以及类型映射规则上。以 MySQL -> ClickHouse 为例,系统可结合两端的数据类型映射关系完成处理,降低因类型差异带来的结构和数据风险。NineData 能在支持数据源的异构链路中提供映射规则和执行支撑,帮助 DBA 提前识别兼容性问题。

    四、实战:发现不一致后,如何便捷“修复”?

    数据校验的核心目的是实现数据一致,当 NineData 检测到数据不一致时,可通过标准化流程快速完成修复,形成“校验-发现-修复-复检”的闭环,具体操作流程如下:

    如果差异集中在少量表、少量记录,可优先基于数据对比结果生成变更 SQL,对目标端进行定向订正;修复完成后,再发起重新对比或对前一次不一致内容进行复核,确认问题是否已经消除。这样更适合差异范围清晰、修复动作可控的场景。

    如果某张表存在大量不一致,逐条修复成本过高,则可在满足条件时使用自动完成完成重新同步。这一能力适用于运行中的增量复制任务。在复制详情页中选中目标表后,可以根据实际情况选择不同策略:

    • 清空重写:删除目标表中的各类数据,再重新写入。
    • 追加写入:忽略目标端已有数据,仅补写目标端缺失、但源端存在的数据。
    • 删除重建:删除目标表,并根据源表结构重建后再写入数据。

    重新同步完成后,再回到数据对比页发起新一轮对比,或对前一次不一致内容进行复核,直至结果收敛为一致。

    这套流程把 DBA 原本需要手工拆解的排查、订正和验证动作,收敛为更标准化的处理路径,从而缩短问题关闭时间。

    1. 选择策略后,系统自动完成执行重新同步任务;
    2. 同步完成后,点击“重新对比”,直至校验结果显示“一致”,完成闭环。

    该流程可将原本需要熬夜完成的手工修复工作,缩短至几分钟内完成,大幅提升 DBA 运维效率。

    五、总结

    对于 DBA 而言,数据不一致引发的业务故障,一直是日常运维中的高风险问题。真正棘手的地方不只是“数据能不能同步过去”,而是“同步之后能不能证明结果可信、发现问题后能不能快速闭环”。NineData 提供的,不是单一的数据对比能力,而是一套集数据库 DevOps、数据同步和数据对比于一体的解决方案,帮助 DBA 在同一平台内完成任务管理、链路运行、结果校验和问题处理。

    对 DBA 来说,这意味着不必在不同系统之间来回切换,也不必依赖多种工具拼接流程,而是可以通过一套平台完成数据同步、数据校验与问题闭环,提升处理效率,降低运维复杂度,更是 DBA 降低故障风险、增强交付确定性的重要支撑。

    三四线城市小公司工作情况梳理

    我现在在三四线城市的一家小公司,人员很少,具体配置如下:老板、财务、一个兼做设计和测试的员工、一个前端,还有我这个后端。

    作为后端,我负责的工作内容本身就比前端多一些,加上设计和测试是同一个人,这个人会提出一些修改建议,实际上,最终的产品主要由我和这位兼设计测试的同事共同负责。

    前两天,公司安排我用两天时间开发一个简单的投诉系统,需求很简单:

    • 页面:仅一个投诉表单

    • 后台:可查看投诉、转办投诉、回复投诉

    这两天时间里,我除了开发这个投诉系统,还抽空修改了其他一些工作内容。由于时间比较紧张,开发过程中踩的坑就不细说了,实际上我晚上还加班了一会儿,才基本完成这个系统的开发。当时时间仓促,也没多想,设计给出什么样的原型,我就按照什么样的样子去做了。

    目前,系统中“省内不同人员登录账号”的相关功能,还没有进行测试。

    后来老板要带这个系统给客户看,因为当时处于内网环境,无法实现微信登录,需要其他负责网络的公司调整网络设置。之后老板就说,演示时主要看页面效果,于是就把登录功能临时去掉了。

    但这里出现了我和老板的理解偏差:

    • 老板的理解:他跟客户沟通时,默认系统是完完整整做完的,权限也已经测试好了,他的理想状态是,把这个网页嵌入到公众号里,实现投诉提交功能,同时不同权限的账号登录后,能各自处理投诉相关事宜。

    • 我的理解:只需实现“能提交投诉、后台有一个管理账号可处理投诉”即可,不需要按地市划分权限,相当于一个通用管理账号就能满足需求。

    因为这种理解上的偏差,老板发现系统和他的预期不符后,非常生气,把我们所有人都训了一顿,说我们工作懈怠。

    说实话,我承认自己确实有一点点懈怠。公司没有加班收入,也没有调休,即便加班做好了工作,可能也落不到什么好处,而且我的工资已经好多年没有涨过了。我心里难免会有“拿多少钱干多少活”的想法,不想付出太多额外的精力。我其实知道权限划分的功能还需要添加,但觉得当时的版本足够演示使用,就没有太着急推进。

    薪资方面,我和那位兼设计测试的同事差不多,甚至对方可能比我还高一点,前端的薪资是最低的。

    我现在也有点迷茫,感觉自己的心态可能不太对,但也不确定老板的想法和要求到底合不合理。

    不过客观来说,老板总体上对我们还是挺不错的,不管公司经营多困难,从来没有拖欠过工资,该有的福利也还算说得过去。

    我把聊天记录附上,主要就是这块,也可能不是仅仅因为一件事,老板意思是现在生意不好做,他希望多多在外面跑市场,系统上面的事情我们负责好,别让他操心这块,也不想和我们一起过软件的事情。
    Oz9Qdq.jpeg
    Oz9Qdq.jpeg
    Oz9I79.jpeg

    !谨慎购买 !谨慎购买 !谨慎购买

    这是常规优惠,偶尔会有半价折扣

    直达链接: 点击进入官网


    🚀 1. 性能机:AMD Ryzen 9 7950X3D (无限流量)

    建议: 不建议 3 年付。

    • 购买路径: MultiVPSNew Jersey - AMD Ryzen Quality VPS → 选择第 1 款 NanoVPS-640 America → 购物车选择 12 个月。
    • 价格: **$8.99/年** | $20.99/三年
    配置项目 详细规格
    CPU 1 vCore AMD Ryzen 9 7950X3D @ 4.2 GHz (睿频 5.7 GHz)
    内存 640 MB DDR5 ECC
    硬盘 20GB NVMe Gen4
    网络 1 IPv6/64 + 1 IPv4 NAT (20+3 端口)
    流量 6TB @ 2.5 Gbps (超出后 500Mbps 无限)
    防护 DDoS 防护 1 Tbps+
    备份 每月备份 (C-Servers GoBack 标准版)


    📉 2. 传家宝小机:至强金牌 (低至 $2.43/年)

    建议: 不建议 3 年付。

    • 购买路径: MultiVPSTexas - US Xeon Gold VPS → 选择第 1 款 NanoVPS-384 Low-Cost Special → 购物车选择 36 个月。
    • 价格: $7.29/3 年
    配置项目 详细规格
    CPU 1 vCore Intel Xeon Gold 6138 @ 2.0 GHz
    内存 384 MB DDR4 ECC
    硬盘 8GB NVMe
    网络 NAT IPv4 (20+3 端口) + 1 IPv6 /64
    流量 2TB @ 1Gbps (超出后 200Mbps 无限)
    系统 仅限 Debian 、Ubuntu 、Alpine
    备注 不提供备用方案,不予退款


    ⚡ 3. 高性能大内存:Ryzen 9 3900 (3 核 4G)

    特点: 多核性能强劲,流量充足,包含 ExtraNAT 。

    建议: 不建议 3 年付。

    • 购买路径: MultiVPSFinland Ryzen VPS → 选择第 1 款 ExtraVPS-4096 Finland → 购物车选择 1 年。
    • 价格: $21.79/年
    配置项目 详细规格
    CPU 3 vCPUs Ryzen 9 3900 @ 3.1 GHz
    内存 4GB RAM + 2GB Swap
    硬盘 60GB NVMe
    网络 1 IPv6/64 + 1 IPv4 NAT (10+5 端口)
    流量 25TB @ 1Gbps (超出后 1Gbps 合理使用)
    特性 包含 NAT64/DNS64/NAT46 及远程 SSH 访问


    🛡️ 4. 抗投诉/DMCA 自由机

    特点: 宽松的内容政策,允许 Tor 、种子盒及成人内容。

    • 购买路径: MultiVPSSafe DMCA Servers → 选择第 1 款 NanoVPS-II 640S → 购物车选择 12 个月。
    • 价格: $8.29/年
    配置项目 详细规格
    CPU 2 vCore Intel Xeon E5-2695 v4 @ 2.10 GHz
    内存 640 MB DDR4 ECC
    硬盘 20GB NVMe
    网络 1 IPv6/64 + 1 IPv4 NAT (20+3 端口)
    流量 不限流量 @ 100 Mbps
    政策 允许: DMCA 忽略、Tor 节点、私人种子盒、成人内容


    ⚠️ 通用提示: 所有机型均严禁非法活动及加密货币挖矿。

    我的大盘鸡跑着 PT,还有一个 1T 的 HDD 没有在监控里面显示出来,不过大盘鸡好像没有活动了

    https://i.imgur.com/CDDPrt5.jpeg

    https://i.imgur.com/icINR6f.jpeg

    直达链接: 点击进入官网

    可能是习惯了 v 站 的 /t/123456 短链风格的链接.
    对分享链接 2libra.com/post/social-observation/UlowCg0 显得有些过长 😂
    不知道这方面路由能否做优化.

    具身智能正在经历从实验室走向产业化的关键转折点。长期以来,机器人操控模型面临着"一机一训"的困境——每换一个机器人本体、每增加一个新任务,都需要重新采集数据、重新训练模型,这种高昂的迁移成本严重制约了具身智能的规模化落地。

    此次蚂蚁集团开源的 LingBot-VLA 具身大模型,为行业带来了三个重要突破:

    首次验证了具身智能领域的 Scaling Law
    通过 20,000 小时真实机器人数据的预训练,系统性证明了 VLA 模型性能随数据规模持续提升的规律。这一发现意义重大——它表明具身智能可以像大语言模型一样,通过"大数据+大模型"的范式实现能力跃迁,为行业指明了清晰的技术路线。
    解决了跨本体泛化的核心难题
    通过涵盖 9 种主流双臂机器人构型的大规模预训练,LingBot-VLA 实现了"一个大脑,多种身体"的愿景。在 GM-100 真机评测中,其跨本体泛化成功率达到 17.3%,这意味着同一个模型可以快速适配不同厂商的机器人硬件,大幅降低了商业化部署的门槛。
    打造了真正实用的开源生态
    不同于许多"只开源权重"的项目,LingBot-VLA 同步开放了数据处理、高效微调、自动化评估的全套工具链,训练效率达到主流框架的 1.5~2.8 倍。这种"开箱即用"的完整方案,将帮助开发者以更低成本快速落地自己的具身智能应用。
    特别值得关注的是,LingBot-VLA 引入深度信息后的性能提升,体现了空间感知能力对机器人操控的重要性。结合昨日开源的 LingBot-Depth 模型,我们看到了一个清晰的技术演进路径:从精准的空间感知到智能的操控决策,具身智能正在构建起完整的"感知-认知-执行"闭环。

    随着蚂蚁集团承诺未来几天将陆续开源更多具身智能成果,我们有理由相信,2026 年将成为具身智能从"能用"到"好用"、从"实验室"到"生产线"的关键转折年。

    SegmentFault 思否编辑部
    2026年1月

    以下内容转载自蚂蚁灵波科技官方公众号。

    继昨日开源高精度空间感知模型 LingBot-Depth 后,今天,我们为大家带来了具身大模型 LingBot-VLA。

    LingBot-VLA 具身大模型全面开源

    在上海交通大学开源的具身评测基准 GM-100(包含 100 项真实操作任务)测试中,LingBot-VLA 在 3 个不同的真实机器人平台上,跨本体泛化平均成功率相较于 Pi0.5 的 13.0% 提升至 15.7%(w/o Depth)。引入深度信息(w/ Depth)后,空间感知能力增强,平均成功率进一步攀升至 17.3%,展现了 LingBot-VLA 强大的准确性和泛化性。

    在 GM-100 真机评测中,LingBot-VLA 跨本体泛化性能领先

    在 RoboTwin 2.0 仿真基准(包含50项任务)评测中,面对高强度的环境随机化干扰(如光照、杂物、高度扰动),LingBot-VLA 凭借独特的可学习查询对齐机制,高度融合深度信息,操作成功率比 Pi0.5 提升了 9.92%,实现了从虚拟仿真到真实落地的全方位性能领跑。

    在 RoboTwin 2.0 仿真评测中,LingBot-VLA 跨任务泛化性能领先

    01 Scaling Law 下的大规模真机数据预训练
    长期以来,由于本体差异、任务差异、环境差异等,具身智能模型落地面临严重的泛化性挑战。开发者往往需要针对不同硬件和不同任务重复采集大量数据进行后训练,直接抬高了落地成本,也使行业难以形成可规模化复制的交付路径。
    图片
    针对上述问题,我们基于在海量真实世界数据上的预训练,第一次系统研究了 VLA 模型在真实机器人任务性能上随着数据规模增长时的 Scaling Law。项目发现随着预训练数据规模从 3,000 小时扩展到 6,000、13,000、18,000,最终至 20,000 小时,模型在下游任务的成功率获得持续且显著的提升。值得注意的是,预训练数据量达到 20,000 小时时,模型性能仍呈现上升趋势,表明 VLA 的性能仍然能够随着数据量的增加而提升。这些实验结果证明了 VLA 模型在用真实数据预训练时呈现了良好的可扩展性,为未来的 VLA 开发和大规模数据挖掘提供了重要启示。
    图片
    依此研究结果,我们仔细构造了 20,000 小时的真实机器人训练数据,涵盖了 9 种主流的双臂机器人构型(包括 AgileX Cobot Magic,Galaxea R1Pro、R1Lite 、AgiBot G1等)。为了进行精确的数据标注,数据里的视频由人工标注者按原子动作进行切分,并用大模型标注视频对应任务和子任务。在 codebase 的开发中,适配了 Fully Sharded Data Parallel (FSDP) 分布式、混合精度、算子融合等优化,从而让同一个“大脑”可以快速迁移至不同形态的机器人上,并在任务变化、环境变化时保持可用的成功率与鲁棒性。

    02 深度信息辅助的机器人操控性能提升

    仿真实验结果

    为了显式捕捉操控环境中的空间感知能力,并进一步提升机器人执行的鲁棒性,我们采用了一种基于查询向量(query)的深度蒸馏方法。具体而言,我们引入了与三视角操作图像相对应的可学习 queries,这些 queries 经 VLM 处理后,与 LingBot-Depth 输出的 depth embeddings 进行对齐。这种对齐机制在维持模型训练与推理的效率的同时,有效将深度信息集成到 LingBot-VLA 中。在真实机器人平台和仿真环境下进行的广泛实验证明,深度信息的融入提升了 LingBot-VLA 的操控性能。

    03 后训练成本低、效率高、代码全开源,真正实用的 VLA 模型
    得益于涵盖主流构型和详尽任务的大规模预训练,LingBot-VLA 具备强大的通用操控能力,并且能够将其高效迁移到多样的下游机器人任务中。实验表明,LingBot-VLA 在下游任务中能够使用更少的数据,达到超越 π0.5 的性能;并且性能优势会随着数据量的增加而持续扩大。目前,LingBot-VLA 已与星海图、松灵、乐聚等知名机器人厂商完成适配,验证了模型在不同构型机器人上的跨本体迁移能力。

    与此同时,我们构建了一套高效的后训练工具链,在 8 卡 GPU 配置下实现了单卡每秒 261 个样本的吞吐量,其训练效率达到 StarVLA、OpenPI 等主流框架的 1.5~2.8 倍,实现了数据与算力成本的双重降低。此次开源,我们不仅提供了模型权重,还同步开放了包含数据处理、高效微调及自动化评估在内的全套代码库。我们希望这一举措可以大幅压缩模型训练周期,降低商业化落地的算力与时间门槛,助力开发者以更低成本快速适配自有场景,提升模型实用性。目前我们的模型、后训练代码、技术报告、以及我们和上海交大共同打造的 GM-100 Benchmark 已全部开源,欢迎大家访问我们的开源仓库。

    具身智能的大规模应用依赖高效的具身大模型,这直接决定了模型是否可用以及能否用得起。我们希望通过 LingBot-VLA 的开源,积极探索具身智能上限,推进具身智能研发早日进入可复用、可验证、可规模化落地的新阶段。

    本周,我们已相继开源 LingBot-Depth 和 LingBot-VLA 两款模型,未来几天,我们还将陆续为大家带来我们在具身智能领域智能基座方向的更多成果。我们期待与全球开发者、研究者、产业伙伴一起,加速具身智能技术的迭代与规模化应用,助力 AGI 更快到来。weibo.com/ttarticle/p/show?id=2309405275851624677383 weibo.com/ttarticle/p/show?id=2309405275852031524914 weibo.com/ttarticle/p/show?id=2309405275852413206541 weibo.com/ttarticle/p/show?id=2309405275852815859755 weibo.com/ttarticle/p/show?id=2309405275853201735685 weibo.com/ttarticle/p/show?id=2309405275853583155208 个

    在当今数字化与智能化飞速发展的时代,智能体应用正经历着从单点工具到企业级系统的深刻架构演进。这一转变不仅革新了企业运营的方式,更重塑了行业的竞争格局。智能体以其自主决策、多模态交互以及持续进化的能力,正逐渐成为推动各行业创新与发展的核心驱动力。

    智能体应用的层级革命,传统脚本工具 vs 自主决策智能体

    传统脚本工具在过去的自动化流程中扮演着重要角色,它基于预设的规则和流程运行,如同机械般执行任务。例如传统的RPA(机器人流程自动化)机器人,在财务数据录入场景中,依据脚本设定好的步骤,将票信息录入财务系统。然而,其依赖清晰、固定的流程,一旦流程改变,便需重新编写或调整脚本。与之形成鲜明对比的是自主决策智能体,它建立在人工智能的多种技术之上,具备学习和理解能力,能处理非结构化数据。在某电网的故障诊断场景中,传统的故障诊断依赖于固定的流程和规则,从故障发生到诊断并给出响应,平均需要6小时。而引入实在Agent智能体后,通过多模态感知故障信号,利用LLM(大语言模型)进行推理决策,并借助API生态执行修复指令,故障诊断响应时间大幅缩短至8分钟。这一显著的提升,充分展现了智能体在复杂、动态环境中自主决策的优势。

    温州开住宿1️⃣5️⃣9️⃣一1️⃣41️⃣5️⃣一8️⃣️5️⃣2️⃣9️⃣餐饮电子发票哪里,可先开。住宿费、餐饮费、会务费、劳务费、技术服务费、咨询费、医药费、运输费、建材钢材、机械设备、办公用品、劳保用品、建筑工程等态输入)-决策层(LLM+ 规则引擎)-执行层(API生态)

    智能体的架构可清晰地分为三个关键层级。感知层负责多模态输入,能够接收来自文本、图像、语音等多种形式的数据。例如在智能客服场景中,智能体可同时接收客户的文字咨询以及语音提问,全面感知客户需求。决策层由LLM与规则引擎协同构成,LLM凭借其强大的语言理解与生成能力,从多模态数据中提取关键信息,进行深度推理;规则引擎则依据行业规则和企业内部策略,对LLM的决策进行补充和修正。在金融风险评估场景中,LLM分析市场数据、企业财报等文本信息,规则引擎根据金融监管规则对风险评估结果进行校准。执行层依托API生态,与外部系统进行交互,将决策转化为实际行动。如在电商营销场景中,智能体通过API调用广告投放平台,执行精准营销方案。

    企业级落地的三大核心模块,动态知识库构建

    行业知识蒸馏技术是动态知识库构建的关键。以汽车维修领域为例,汽车维修手册中蕴含着海量的专业知识,但在实际故障诊断中,直接使用手册效率较低。通过行业知识蒸馏技术,可将维修手册中的知识转化为故障诊断规则树。当智能体接收到汽车故障描述时,能快速在规则树中进行匹配和推理,精准定位故障原因。同时,动态知识库会随着新的维修案例和技术更新不断进化,智能体通过持续学习新的知识,优化故障诊断规则树,提升诊断的准确性和效率。
    多智能体协作框架

    在复杂的企业业务场景中,多智能体协作框架至关重要。以招标场景为例,可部署三个智能体分工协作。资质审查智能体负责收集和分析投标企业的资质文件,依据预设的资质标准进行审查;成本核算智能体根据招标项目的需求和市场行情,对项目成本进行核算;风险评估智能体则从政策风险、市场风险等多个维度对招标项目进行风险评估。通过任务分派机制,将招标任务合理分配给各个智能体,它们之间通过信息共享和协同机制,共同完成招标流程,显著提高了招标工作的效率和准确性。

    持续进化引擎

    用户反馈自动优化流程是持续进化引擎的核心功能。某银行客服智能体在初始阶段存在较高的拒识率,影响客户服务体验。通过持续进化引擎,智能体能够自动收集客户反馈信息,分析拒识的原因,如语义理解偏差、知识库不完善等。然后,根据反馈对自身的语言模型和知识库进行优化,经过一段时间的运行,拒识率下降了
    62%。这种持续进化的能力,使得智能体能够不断适应业务的变化和用户需求的升级,保持高效的服务水平。

    行业适配架构设计指南,制造业:实时数据流与控制系统的低延迟架构

    在制造业中,生产过程对实时性要求极高。例如汽车制造生产线,每一个生产环节的衔接都需要精准无误。智能体架构需要构建实时数据流通道,快速采集生产设备的运行数据、产品质量检测数据等。同时,采用低延迟的控制系统架构,确保智能体能够及时对生产过程中的异常情况做出响应。如当检测到产品质量出现偏差时,智能体可在毫秒级时间内调整生产设备参数,保证生产线的稳定运行,提高产品质量和生产效率。

    金融业:合规性校验模块的沙箱隔离设计

    金融业面临着严格的监管要求,合规性至关重要。在智能体架构中,需专门设计合规性校验模块,对金融交易、风险评估等业务进行合规性审查。为确保合规性校验的安全性和独立性,采用沙箱隔离设计。将合规性校验模块置于沙箱环境中,与其他业务模块隔离运行,防止因外部攻击或内部错误导致合规性校验出现问题。同时,沙箱环境可模拟真实的金融交易场景,对合规性校验规则进行测试和优化,保障金融业务在合规的框架内稳健运行。

    结语

    智能体应用从单点工具到企业级系统的架构演进,为各行业带来了前所未有的机遇与变革。通过层级革命、企业级核心模块的构建以及行业适配架构设计,智能体正逐步渗透到各行各业的核心业务流程中,推动企业实现智能化转型,提升运营效率,创造更大的价值。随着技术的不断发展和创新,智能体应用的未来充满无限可能,将持续引领行业发展的新潮流

    JeecgBoot AI专题研究 | JeecgBoot低代码 AI 代码生成 Skills 深度解析与实战指南

    前言:当代码生成遇上 AI

    传统的代码生成器,本质上是"模板填充工具"——你先建好数据库表,配好字段类型,然后点击生成按钮,得到一堆半成品代码。这个流程存在几个痛点:必须先手动建表、字段控件需要逐个配置、字典关联要自己查找指定、生成后还得手动搬运文件到正确目录。

    JeecgBoot低代码平台最近推出的 jeecg-codegen Skills,彻底改变了这个局面。它基于 Claude Code 的 AI 能力,让你用一句自然语言就能完成从需求描述到可运行代码的全链路生成。不是简单的模板渲染,而是真正理解业务语义的智能代码生成。

    本文将深入剖析这个 AI 代码生成 Skills 的核心能力、使用方法和实战技巧,帮助你快速上手这种全新的开发范式。


    下载地址

    skills地址: https://github.com/jeecgboot/skills

    与传统代码生成器相比,AI 到底强在哪?

    在正式进入实战之前,有必要先说清楚 AI 代码生成和传统代码生成器的本质区别。很多人可能会觉得"不就是换了个触发方式吗?"——实际上远不止于此。

    无需预建表结构

    传统方式要求你先在数据库里把表建好,字段名、类型、长度都得提前确定。而 JeecgBoot低代码的 AI 代码生成只需要你用自然语言描述业务需求,AI 会自动推导出完整的表结构——包括字段名、数据类型、长度、前端控件类型等。

    当然,如果你已经有了现成的数据库表,它同样支持直接基于已有表生成代码,兼容传统工作流。

    模块级批量生成

    传统代码生成器通常是逐表操作——选一张表,配一次参数,生成一组文件。如果一个业务模块涉及 5 张表,你就得重复 5 次。AI 代码生成支持一次性描述整个模块的需求,批量生成所有表的全套代码。

    字典智能匹配

    这是一个特别实用的能力。AI 会自动读取系统中已有的字典数据(sys_dict + sys_dict_item),为字段智能匹配合适的字典编码。比如你描述了一个"订单状态"字段,AI 会自动找到系统中的 order_status 字典并关联上,省去了手动查找字典编码的繁琐步骤。

    代码自动归位

    生成的代码文件会自动放到项目中正确的目录位置——后端 Java 代码、前端 Vue 组件、Flyway 数据库迁移脚本,各归各位。不需要手动复制粘贴文件。

    增量修改能力

    传统代码生成器是"一次性的"——生成完如果你改了代码,想加个字段就得重新生成覆盖。AI 代码生成支持精确的增量修改:加字段、删字段、改字段类型,AI 会定位到所有相关文件中的具体位置,只改动必要的部分,不影响你已经手动修改过的其他代码。


    快速上手:从触发到生成

    如何触发代码生成

    在 Claude Code 对话中,只需在描述中包含以下任意关键词,Skills 就会自动触发:

    代码生成 / 生成代码 / 创建模块 / 新增功能 / 建表 / 加字段 / 增加字段 / 新增字段 / 修改字段 / 删除字段
    最简用法:一句话生成

    最快的方式就是直接用一句话描述你想要的功能:

    帮我生成一个商品管理模块,包含商品名称、价格、库存、状态、图片、描述

    AI 会自动完成以下推导:

    • 表名:biz_goods
    • 价格 → decimal(10,2) / BigDecimal / InputNumber
    • 库存 → int / Integer / InputNumber
    • 状态 → varchar(10) / String / JDictSelectTag(并尝试匹配已有字典)
    • 图片 → varchar(1000) / String / JImageUpload
    • 描述 → text / String / InputTextArea
    精确控制:指定表名和字典

    如果你对表名、字段细节有明确要求,可以在描述中具体指定:

    创建一个订单管理功能:
    - 表名 biz_order
    - 字段:订单编号、客户名称、下单日期、金额、状态(待付款/已付款/已发货/已完成)、备注
    - 状态用字典 order_status

    AI 会优先使用你明确指定的值,只对未指定的部分进行智能推导。


    六大实战场景详解

    场景一:树形结构表

    当你描述中出现"分类"、"层级"、"树"、"上下级"等关键词时,AI 会自动识别为树表模式:

    建一个部门分类的树表,包含分类名称和分类编码

    树表模式在单表基础上自动增加 pid(父节点 ID)和 has_child(是否有子节点)字段,后端 Controller 额外生成 rootListchildListgetChildListBatch 等树形数据接口,前端页面也会自动适配树形展示。

    场景二:一对多(主子表)

    提到"主子表"、"明细"、"一对多"等关键词,AI 自动进入一对多模式:

    生成一个采购单模块,主表是采购单(单号、供应商、日期、总金额),
    子表是采购明细(商品名、数量、单价、小计)

    一对多模式会生成子表完整的 Entity / Mapper / Service 各一套,主表 Service 包含联合保存/更新/删除逻辑,前端通过 Tab 页展示子表数据。

    场景三:指定后端模块

    如果你的项目有多个后端模块,可以明确指定代码生成到哪个模块:

    在 jeecg-module-demo 模块下生成一个公告管理,包含标题、内容(富文本)、发布时间、状态
    场景四:基于已有数据库表反向生成

    如果数据库中已经存在表结构,直接给表名就行:

    生成 tmp_tables 这个表的代码

    AI 会自动连接数据库执行 SHOW CREATE TABLE,解析出完整的字段信息(类型、注释、主键策略、是否自增等),然后生成与表结构完全匹配的代码。无需重复描述字段。

    场景五:增量修改已有模块

    这是 AI 代码生成最强大的能力之一——对已生成的模块进行精确的增量修改:

    加字段:

    给 tmp_tables 增加两个字段:排序号和状态(启用/停用)

    改字段:

    把商品管理的价格字段从 int 改成 decimal

    删字段:

    删除商品管理的描述字段

    AI 会自动定位所有相关文件(Entity.java、data.ts、Form.vue 等),在每个文件的正确位置执行增删改操作,并生成对应的 ALTER TABLE Flyway 迁移 SQL。

    场景六:批量模块生成

    一次性描述多个功能点,AI 统一生成整个业务模块的代码,覆盖多张表和多个功能。


    交互流程解析:每一步都可控

    JeecgBoot低代码的 AI 代码生成采用"确认制"——每一步都会展示摘要等你确认,不会跳过确认直接写文件。

    全量生成的五步流程

    第一步:需求解析。 AI 分析你的描述,判断是新建表还是基于已有表。

    第二步:参数确认。 AI 会询问四个配置项(都有合理的默认值,直接说"确认"即可跳过):

    1. 后端模块 — 默认 jeecg-module-system/jeecg-system-biz
    2. 前端风格 — vue3(封装风格)或 vue3Native(原生风格)
    3. 前端目录 — 默认按 entityPackage
    4. 是否读取系统字典 — 默认开启,自动匹配

    第三步:结构预览。 展示完整的表结构摘要,包括每个字段的类型、控件、匹配到的字典等,确认无误后继续。

    第四步:代码生成。 自动生成全部文件并写入项目对应目录。

    第五步:结果输出。 输出生成的文件清单和后续操作说明。

    增量修改的精确流程

    增量修改同样遵循确认制:先扫描已有代码文件 → 展示每个文件的具体变更内容 → 确认后再执行修改。这样你可以清楚地知道 AI 要改哪些文件的哪些位置。


    生成产物一览

    单表模式生成 11 个文件
    类别文件说明
    后端Entity.java实体类,含 MyBatis-Plus / AutoPoi / Dict 注解
    Controller.javaREST 控制器,继承 JeecgController,含权限注解
    IService.javaService 接口
    ServiceImpl.javaService 实现
    Mapper.javaMyBatis Mapper 接口
    Mapper.xmlMyBatis XML 映射
    前端*.api.tsAPI 接口定义(list/save/edit/delete/export/import)
    *.data.ts列定义 + 查询表单 + 编辑表单 Schema
    *List.vue列表页面(表格 + 查询 + 操作按钮)
    *Modal.vue编辑弹窗
    *Form.vue表单组件(仅 vue3Native 风格)
    SQLV*__.sqlFlyway 迁移:建表DDL + 菜单 + 7个按钮权限 + 角色授权

    两种前端风格如何选择

    JeecgBoot低代码的 AI 代码生成提供两种前端代码风格,满足不同场景需求:

    维度vue3 封装风格vue3Native 原生风格
    表单实现BasicForm + FormSchema 配置驱动a-form + a-form-item 模板直写
    弹窗实现BasicModal + useModal HookJModal + ref + defineExpose
    表格实现BasicTable + useTable + formConfigBasicTable + 手写查询表单区域
    核心优势代码量少,配置化,统一风格灵活度高,可深度定制交互
    适合场景标准 CRUD 页面,快速出活需要复杂交互或自定义布局的场景

    实战建议:如果你的页面是常规的增删改查,选 vue3 封装风格效率最高;如果页面有较多定制化交互需求(比如联动逻辑、动态表单、自定义布局等),选 vue3Native 获得更大的灵活空间。


    智能字段推导:AI 如何理解你的业务语义

    这是 AI 代码生成最"聪明"的部分——它能根据字段名称中的语义关键词,自动推导出合适的数据库类型、Java 类型和前端控件:

    语义关键词数据库类型Java 类型前端控件
    名称/标题/编码varchar(100)StringInput
    金额/价格/费用decimal(10,2)BigDecimalInputNumber
    数量/个数intIntegerInputNumber
    状态/类型/级别varchar(10)StringJDictSelectTag
    是否/开关varchar(2)StringSwitch
    日期/生日dateDateDatePicker
    备注/描述/说明textStringInputTextArea
    内容/富文本textStringJEditor
    图片/头像/照片varchar(1000)StringJImageUpload
    文件/附件varchar(1000)StringJUpload
    用户/负责人varchar(32)StringJSelectUserByDept
    部门/组织varchar(32)StringJSelectDept

    当然,AI 的推导不是"一刀切"的——如果你在描述中明确指定了字段类型,AI 会优先采用你的指定。智能推导只是兜底策略,让你省去那些显而易见的配置工作。


    字典智能匹配的工作机制

    字典匹配是按优先级逐层匹配的:

    1. 用户明确指定:你说了"状态用字典 order_status",直接用
    2. 字段名精确匹配:字段名 status 恰好与某个字典编码 status 一致
    3. 语义关键词匹配:字段注释含"状态",搜索名称中含"状态"的字典
    4. 不匹配时回退:找不到合适字典就当普通 Input 处理,不强行关联

    匹配结果会在表结构摘要中展示出来,你可以在确认前修改或取消任何字典关联。

    效果示例:假设系统中已有字典 order_status(待付款=0, 已付款=1, 已完成=2),当你描述字段"订单状态"时,AI 会自动在 Entity 上添加 @Dict(dicCode = "order_status") 注解,前端列定义使用 _dictText 后缀字段,表单控件自动切换为字典选择组件。


    主键策略自适应

    对于已有表,AI 会根据 DDL 中的主键定义自动选择正确的 MyBatis-Plus 主键策略:

    表DDL中的主键定义Java类型MyBatis-Plus 注解
    int AUTO_INCREMENTInteger@TableId(type = IdType.AUTO)
    bigint AUTO_INCREMENTLong@TableId(type = IdType.AUTO)
    varchar(36) 无自增String@TableId(type = IdType.ASSIGN_ID)
    bigint 无自增Long@TableId(type = IdType.ASSIGN_ID)

    新建表时默认使用 JeecgBoot 标准的 varchar(36) + ASSIGN_ID 策略。


    Flyway 版本号自动管理

    每次生成或增量修改都会产出 Flyway SQL 文件,版本号自动管理,避免冲突:

    • 命名格式:V{YYYYMMDD}_{序号}__{描述}.sql
    • 如果当天已有 V20260311_1__xxx.sql,新文件自动编号为 V20260311_2__xxx.sql
    • 菜单 SQL 中的 ID 使用 13 位毫秒级时间戳,确保全局唯一

    生成的 SQL 文件位于 jeecg-module-system/jeecg-system-start/src/main/resources/flyway/sql/mysql/,重启后端时 Flyway 自动执行,或者你也可以手动执行。


    生成后只需三步即可使用

    1. 重启后端:Flyway 自动执行建表和菜单 SQL
    2. 前端热更新:开发服务器自动识别新文件,无需重启
    3. 打开浏览器:新菜单已自动添加并授权给 admin 角色,登录即可使用

    整个过程从描述需求到功能可用,通常只需要几分钟。


    实战注意事项

    1. 不会跳过确认直接写文件——每次生成或修改都会先展示摘要,确认后才执行
    2. 增量修改只改必要位置——不会覆盖你手动修改过的其他代码
    3. 权限编码自动生成——格式为 {entityPackage}:{tableName}:add/edit/delete 等 7 个操作
    4. 后端模块不存在时会提示——AI 不会盲目生成到不存在的 Maven 模块中
    5. 生成的代码没有框架锁定——和手写代码完全一样,可以随意二次修改
    6. 字典匹配可关闭——不想自动匹配时在参数确认步骤选择"否"

    总结

    JeecgBoot低代码的 AI 代码生成 Skills 代表了一种全新的开发范式——从"先建表后生成"进化到"用自然语言描述需求,AI 端到端交付可运行代码"。它不仅仅是提升了代码生成的效率,更重要的是降低了使用门槛:你不需要记住表结构设计规范、字段命名约定、字典编码对照表,这些"知识负担"都被 AI 承接了。

    对于 JeecgBoot低代码平台的开发者来说,这意味着你可以把更多精力放在业务逻辑和用户体验上,而不是在模板代码的搬运和配置上消耗时间。


    本文为 JeecgBoot AI 专题研究系列文章。

    <!-- 发布设置:置顶=是, 推荐=是, 发布时删除第一行大标题 -->

    一、迁移需求
    Q:所有用户行为分析系统的数据都能迁到ClkLog吗?
    A: 目前ClkLog的数据迁移方案仅适用于神策数据,其他分析系统需要另行定制方案。

    Q:用户量和事件量很大能迁移吗?
    A: 可以。ClkLog提供的迁移工具可以分批次对原系统中的用户数据和事件数据进行迁移。

    Q:如果只想迁一部分数据,可以吗?
    A: 可以。可根据实际情况备份导出需要迁移的数据进行迁移。

    二、迁移过程
    Q:做迁移需要改客户端埋点代码吗?
    A: 不需要。原有客户端埋点代码无需修改,只需将数据采集服务地址切换到ClkLog采集服务,即可无缝接入数据上报。

    Q:迁移期间,如何确保全量数据都能迁移成功?
    A: 1.保证迁移前备份的历史元数据(事件、事件属性、用户属性)是最终版本。
    2.保证原系统数据库中的事件数据和用户数据的全量历史数据备份( 如果数据量比较大,可根据实际情况将数据拆备份至多个备份文件,且每个备份文件中数据不会有重复)。

    Q:迁移整体过程需要多久?
    A: 迁移过程分两个阶段,迁移前的历史数据备份和数据迁移的实施。
    整体过程需要多久取决于历史数据量的大小,ClkLog迁移工具支持分批次进行迁移,迁移过程需要多久在实施过程中可尝试按天备份迁移后评估所需时长。

    三、迁移后使用
    Q:迁移完成后,历史数据可以直接用于分析吗?会有时间限制吗?
    A: 历史数据迁移完成后,在ClkLog后台可以通过各种预置分析模型对历史数据进行统计分析,也可通过自定义分析功能进行自定义历史数据的统计分析。ClkLog的分析模型无时间限制。

    Q:历史数据迁移后如何验证准确性?
    A: 迁移后如果老的系统还在运行中,可直接与老系统数据库中的数据做对比,如果老的系统已经停止运行,可与备份文件中的数据做对比。

    Q:迁移后用户ID和迁移前是一致的吗?
    A: 是的。迁移后的用户ID、事件ID等历史数据的值与迁移前的值保持一致。

    四、版本问题
    Q:ClkLog哪些版本支持数据迁移?
    A: 目前支持数据迁移的版本为PRO 专业版 2.0 和 CDP 企业版 2.0。

    Q:神策任何版本数据都能迁移到ClkLog吗?
    A: 目前支持迁移通过神策 2024 年 8 月之前的 Apache 协议 SDK 进行数据采集的历史数据。若使用后续更新版本SDK,需单独评估迁移方案可行性。