去去还无住,如如自有殊。总来归一法,只是隔邪躯。
—— 节选《西游记》第十七回
开篇这首诗取自经典名著《西游记》,悟空首次看到观世音菩萨化身成尘世妖精模样的诗句。“无住” 本是佛家用语,“以无住立一切法”,寓意为万物随缘。“如如” 取自《金刚经》,“不取于相,如如不动”,寓意为世间表象。如此看,整句话的意思是万物都随缘而起,但外貌却各有差异,但万物本质上都是一样的,不过是表象和作用不一样罢了。
如今各个国产厂商都推出了自己的 AI 大模型,并且各类评测指标纷纷以大模型的通用能力好、参数量大、精确度高来衡量模型的表面能力,但若寻求大模型的本质,实际都是源自同根。如果用取经之路来类比 deepin 对操作系统大语言模型的探索,就好比从东土大唐重新起步,deepin 研发团队经过艰难的起步和摸索,始终在寻找一个适合操作系统级的大模型之路。然而要踏上这条真正的取经之路,就需要先学好一些看家本领。纵使前方路途存在九九八十一难,第一步还是要把本领学好再上路。
模型管理框架,多种大模型的 “变身术”
在《西游记》记载中,孙悟空求学菩提祖师门下,学习了七十二般变化之法,可以变作世间万物,躲避天雷、阴火、赑风三灾,是西天取经路上必备技能之一。
自 2022 年 OpenAI 公司推出划时代的 ChatGPT 以来,人工智能领域迎来了井喷式的发展。如今,市场上的 AI 模型种类繁多,数量之多可达数百,甚至数千。截至本文撰写之日,国内已有 180 家公司正式推出了自己的 AI 大模型服务。在开源社区中,用户可部署使用的大模型更是多如繁星,数不胜数。
这些模型按照功能可以分为通用语言处理、语音处理、图像处理以及向量化处理等多个类别,琳琅满目。面对如此众多的选择,用户在挑选合适模型时难免会感到无所适从,患上所谓的 “选择困难症”。在这样的背景下,用户如何做出明智的选择,找到最适合自己需求的 AI 模型,成为了一项挑战。
deepin 研发团队在探索操作系统的智能化道路上,首先思考的是如何让用户深刻体验不同 AI 模型的独特魅力。在 deepin 23 中,他们找到了系统模型的 “变身术”—— 一种能够让系统灵活变换、适应用户需求的创新技术。
deepin-modelhub 架构图
通过 deepin-modelhub 模型管理框架,deepin 23 赋予了用户加载个性化 AI 模型的能力。这项技术可以让用户加载属于自己的模型,技术路线上兼容了 llama.cpp 和 OpenVINO 的生态,用户除了可以在 deepin-modelhub 里运行 UOS LM 大语言模型之外,还可以自己添加 llama 3.1、phi-3、gemma2、qwen2 等模型。这些模型可不是只能躺在命令行里提供指令,而是可以直接链接 UOS AI 助手,也许有一天用户可以自己手动训练一个专属模型,直接享受端侧模型带来的便利,最大效能发挥机器硬件算力带来的魅力。
添加端侧模型能力演示
除此之外,在 UOS AI 的模型添加页面,你还可以添加自己专属的模型账号。只要满足 OpenAI 的接口规则,无论是市面上流行的百度、豆包、kimi,还是小众一些的在线模型,都能在 UOS AI 里发挥作用,让用户在面对不同需求时,能够灵活选择,自如应对。如同七十二般的变化之术,用户可以不再为单一模型能力发愁,任意变化方为应对之道。
添加 kimi 模型能力演示
模型业务接口,大模型能力的 “定身术”
在《西游记》记载中,孙悟空掌握了一门叫 “定身术” 的独门绝技,无论在大闹天宫还是取经路上,“定身术” 都起到了不小的作用。
自从 ChatGPT 宣布支持 Function calling、插件系统、GPT + 等功能后,各路厂商大模型均不限于提供一个可问答的大模型了,新的智能体概念被包装出来抬到用户眼前,整个 AI 世界仿佛在向用户勾勒了一张未来的蓝图,好像人类未来可以真正摆脱传统意义的劳动方式,转而让 AI 肩负起更重要的使命,帮助人类解决生产力的问题。这个概念一提出,上至七旬老者、下至八岁学童,都在侃侃而谈一个词:新质生产力。
能够让 AI 工具帮助人类完成日常的工作,比如流程化执行、代码编写、文章写作、绘画创作等领域,确实会给人带来巨大的诱惑力。但我们也不得不承认,当下的大模型似乎还没有赶上能百分百替代人类的思维创作工作的能力。经过了诸多尝试之后,人们发现大模型的功能可能不像想象中的那么智能,因此大部分人转头又回到了传统的机械劳动过程中。这个现象也给了 deepin 研发团队一些思考,如何把大模型能力转化为用户真正需要的实惠功能,成为了一个在大模型开发领域中避不开的话题。
因此,大模型能力必须与操作系统业务紧密串联起来,让用户在各个功能中能无感地用上大模型提供的便利能力,成为了 deepin 研发团队对系统模型赋予的 “定身术”—— 一种顶层封装的多模型能力接口,适应用户的业务使用需要。
AI SDK 架构设计图
在 DTK AI 层面,deepin 23 可以从通用语言问答、文档总结、Function calling、文件搜索、语音识别、语音合成、图像识别等方面,把模型能力装在一个具体的业务场景中。开发者可以通过 DTK AI 接口来调用到自己想要使用的大模型能力,用户在使用文件管理器、全局搜索、看图、相册、UOS AI 助手这些应用的过程中,也在无感地使用到大模型提供的业务能力。将智能体 Agent 概念融化到系统和应用中,是操作系统 AI 能力跟用户之间的桥梁,也是模型能力的最直观体现方式。
全局搜索 AI 能力搜索
向量化索引模型,系统级 AI 的 “火眼金睛”
在《西游记》记载中,孙悟空在太上老君的八卦炉中锻烧七七四十九天,意外中得到了 “火眼金睛” 能力,不怕烟不怕火,可以看穿世间万物本质。
人们在使用大模型变态的泛化能力时,也不免发现大模型也有 “一问三不知” 的时候,比如大模型不会知道你昨天吃了什么东西、今天发生了什么新鲜事、你的代码里有些什么接口。由此我们发现大模型在一些方面仍然具有局限性,例如对于特定领域的高度专业化知识或者最新知识,大模型的训练集没有包含这些信息,就会生成错误的信息,产生幻觉。如果将大模型直接部署在本地使用,对于一些需要保证信息的实时性、安全性和准确性的用户会失去作用。因此必须使用附加方法增强大模型在真实生产环境中的性能。
针对上述大模型的局限性,大模型能力必须与用户的数据紧密绑定起来,且只存在用户本地,不能泄漏到网络上,因此 deepin 研发团队赋予了系统模型 “火眼金睛” 的能力 —— 一种向量化知识库结合 RAG 检索增强技术。
向量化 RAG 检索架构设计图
在 deepin 23 中,用户可以使用本地知识库与大模型结合,以增强大模型的问答性能。具体的方法概念就是检索增强生成 (Retrieval Augmented Generation, RAG),这个概念最早是由 Lewis 在《Retrieval-augmented generation for knowledge-intensive nlp tasks》中所提出。由于大模型的输入 tokens 具有一定长度限制,所以用户提出问题后,先在本地知识库中进行检索,然后将检索到的信息结合问题构成最终的 prompts,输入到大模型。以此来保证信息是用户所需,提高输出的准确性和相关性,从而增强大模型对于特定领域的高度专业化知识或者最新知识的理解生成能力。
个人知识助理功能演示
RAG 技术中最重要的环节是向量索引的生成和向量检索,而向量生成和问答效果都完全依赖于向量化模型和大语言模型的语义表征能力和文本理解生成能力。所以整个技术规划的重点就是向量检索技术,包括向量数据库的搭建和向量的检索流程。并且在拥有向量检索能力后还可以互补全文检索对于长文本和非关键词的检索能力差的问题。有了 “火眼金睛” 能力的系统 AI,可能比你更知道你电脑里面发生的事情。
斗罢艰险又出发,带着本领取真经
AI 领域给大众的感觉一直是高难度、高门槛、高硬件要求,普通人如果想要在自己的系统上用 AI 来帮自己完成一些辅助工作,需要花费大量时间精力来学习 AI 配置相关知识。deepin 本着因理想而出生,为责任而成长的态度,想要把 AI 拉回到每个普通人面前,让每个人都能近距离体验这个新时代革命性工具。
经过漫长的建设,deepin 从传统意义的操作系统,逐步转变为具备 AI 原生的智能操作系统,这个过程如同西天取经,路程曲折而艰辛。而路虽远,行则将至,期待下一次发版时,deepin 的 AI 能力离大家期望的样子又进了一步,deepin 也期待下一次给大家带来更多的惊喜。