2026 CSCW 与社会计算暑校有感

· 8221 字 · 17 分钟 · 黄国政

这两天,我参加了由中国计算机学会在北京师范大学举办的第八届 CSCW 与社会计算暑期学校。这一期暑校邀请了几位高校的学者来分享以「人机协同」为主题的研究,具体围绕大模型、技术与社会的关系展开。

坦白说,第一天的体验着实一般,我甚至感到有些乏味,但今天的体验却可说是与前一天完全相反,而这一切源于介绍「面向通用大模型的评测与对齐」的王老师,以及一位以学员身份参与暑校的来自中南民族大学计算机专业的老师。

一、源于「对齐」 #

在某种程度上,我可以说我「会使用大模型」,但无法说「理解大模型」——当我们要具体谈论大模型时,我们到底在讨论什么?此刻提笔写作,我的脑中闪过 AGI(通用人工智能)、AIGC(人工智能生成内容)、LLM(大语言模型)……即便抛开这些我们时常听闻和提及的概念,回到「大模型」这样一个抽象的对象,我也不知道应该怎么谈论它。

来自中国人民大学的王希廷老师曾在微软亚洲研究院做大模型的评测和对齐,今天她分享内容的关键词也是「评测」和「对齐」。这两个指标被王老师视为探索大模型通用性的来源及其可控机制1的两个层面,她的分享让作为门外汉的我开始基于过去了解的其他关键词形成对大模型理解的路径:数据标注 → 预训练 → 评测 → 对齐。

当然,我的初步了解是错误的。王老师的讲座持续了 3 个小时,期间还有中场休息的 Q&A 环节,内容很密集,质量很高,思路也很清晰,不过我必须声明自己没能全部听懂,甚至将「评测」这一部分忘得差不多了——因而本文也不是要复现王老师讲了什么,只想尽量写下分享「留给」了我什么—但可以说这一场分享「开启了」我对大模型形成的系统认识。

带着前面的错误理解去与 GPT 交流,它告诉我,一条完整的大模型生成流程应当是:

确定模型目标与架构 → 数据准备 → 预训练 → 后训练与对齐 → 系统评测 → 部署 → 持续监测和改进

其中,「评测」并非完全是一个按照顺序发生的生产步骤,反而贯穿在多个阶段之中。例如,在训练前,我们需要通过评测来检查数据集质量;在预训练的过程中,评测可以观察损失是否下降,能力是否提升;在后训练过程中,评测则可以比较不同对齐方法的效果;还有模型发布前后两个阶段——发布前,评测可以测试知识、推理、代码、安全和偏见;发布后,评测则是监测真实用户环境中的问题。

「数据标注」也不是所有大模型训练的起点,需要将其与「数据准备」(数据收集和处理)区分开来。我们可以说,大部分预训练数据都没有经过人工逐条标注,所谓「数据标注」多发生于后续的监督微调、偏好学习与安全对齐——我会将这些笼统归于「对齐」,比如标注一个回答是否正确,比较两个回答哪一个更好,标记回答是否有害,编写高质量的示范答案,判断模型有没有遵守指令等。

我们可以拉一个表格,便于理解整一个流程中每个环节的大致含义。

流程 含义 内容
确定模型目标与架构 明确要做什么模型、多大规模、采用什么架构和训练方法 确定模型定位:纯文本模型还是多模态模型?通用语言模型还是代码、医学等专业模型?

确定技术方案:使用什么模型架构?训练多少参数?上下文长度多长?采用什么分词方式?是否使用混合专家等结构?

确定资源与约束:训练需要多少数据、算力、时间和资金?模型最终面向研究、API还是普通用户产品?
数据准备 收集、筛选和处理模型训练所需的数据 从网页、书籍、论文、新闻、代码、对话、图像和语音等来源收集数据。

对数据进行去重、清除乱码和垃圾内容、筛选低质量内容、过滤隐私信息与部分有害内容、识别语言、调整不同领域和语言的数据比例,并将文本转换为模型能够处理的 Token

数据准备不完全等于数据标注。预训练数据大多通过自监督方式产生训练信号;人工标注主要用于监督微调、偏好对齐、安全训练和评测集建设。
预训练 根据已有上下文预测下一个 Token,并将预测结果与真实文本比较,由此不断调整模型内部参数 经过大规模训练,模型会逐渐学习语言结构、词语与概念之间的关系、常见事实和知识模式,以及推理、写作、代码中的某些结构和可以迁移到不同任务的通用能力。

预训练完成后得到的通常是基础模型(Base Model)。它能够预测和续写文本,但未必能够像聊天助手一样理解并完成用户指令。

例如,用户输入“请解释什么是人类学”,基础模型可能继续生成“什么是民族学”“什么是社会学”等相似问题,因为它主要学习的是“接下来最可能出现什么”,而不是“怎样帮助用户回答问题”。
后训练与对齐 在基础模型之上进一步训练,使模型能够遵循指令,并让其行为更符合人类期望;对齐是后训练的重要目标之一 (1)监督微调:向模型提供高质量的“问题—回答”示范。例如用户提出问题,由人类专家或其他系统提供理想答案,模型学习按照类似方式理解和完成指令。

(2)偏好对齐:由人类或评测模型比较多个候选答案,例如判断“A更准确”“B更啰嗦”“A更有帮助”“B存在安全风险”,再通过 RLHF、DPO 等方法,让模型更倾向于生成受到偏好的答案。

(3)能力强化:针对数学、代码、长文本、多轮对话、工具调用和专业领域等能力进行专项训练。

(4)安全对齐:训练模型识别和处理危险请求、隐私问题、欺骗性内容、自伤风险、偏见与歧视等情况。广义上,对齐是让模型更加有帮助、准确、诚实地表达不确定性、遵守指令并尽量避免造成伤害。
系统评测 评测不是单独位于流程末端的步骤,而是贯穿数据准备、预训练、后训练、发布和上线后的质量控制机制 预训练前:检查数据质量、来源、偏差和模型设计方案。

预训练过程中:观察训练损失、训练稳定性和阶段性能力变化。

后训练过程中:检查指令遵循、推理能力、事实准确性、安全性以及是否出现过度拒绝等问题。

发布前后:进行知识、数学、代码、多语言、偏见、安全和真实场景评测。

常见方法包括自动化基准测试、人工专家评测、用户偏好测试、红队测试、对抗性测试、真实场景实验以及不同模型版本之间的比较。
模型选择与推理优化 从训练过程中产生的多个候选版本中选择合适的模型,并使其能够以可接受的速度和成本运行 训练过程中会保存多个模型检查点,即 Checkpoint。不同版本可能在知识、推理、安全、响应速度和运行成本方面各有优劣,研发团队会根据评测结果选择适合发布的版本。

正式部署前还可能进行量化、蒸馏、剪枝、模型压缩、推理引擎优化、显存管理和并行计算优化,使模型运行得更快、占用更少资源,并能够同时服务更多用户。

这一步主要改变模型的运行效率,但部分压缩方式也可能影响模型能力,因此优化后仍需重新评测。
部署 将训练和优化后的模型接入实际运行环境,使用户或其他程序能够使用它 将模型部署在服务器或终端设备上,并通过 API、网页、应用程序等形式提供服务。

模型还需要与系统提示词、用户界面、对话历史管理、身份认证、内容安全机制、搜索、代码执行、文件读取、工具调用、负载均衡和隐私保护系统相连接。

需要区分:模型是经过训练得到的参数和计算结构;AI产品则是模型与界面、工具、安全系统及服务器基础设施共同组成的完整应用。
持续监测与改进 模型上线后继续观察其实际表现,根据用户反馈和新问题不断迭代 监测模型的回答质量、事实错误、安全风险、偏见、工具调用失败、响应速度、运行成本和用户体验。

根据真实使用中发现的问题,建立新的训练集和评测集,开展新的数据收集与标注,调整数据比例、系统提示词、安全规则或训练方法,并发布新的模型版本。

因此,大模型产生并不是一次性过程,而是一个循环:发现问题 → 收集和标注数据 → 重新训练或调整 → 系统评测 → 再次部署 → 继续监测。

虽然对王老师以构念(Construct)的概念来分析大模型评测的部分不再留有多少记忆,但对「对齐」还是印象颇深。

我对「对齐」的关注源于了解到 Anthropic 聘请 Amanda Askell 和 Harvey Lederman 来为 Claude 进行对齐。Askell 是纽约大学的哲学博士,研究「无限伦理学」,Lederman 则是德克萨斯大学奥斯汀分校的教授,其研究兴趣是新儒家思想。两者的哲学学科出身让我很好奇,哲学为什么可以参与到大模型的训练?具体又要如何参与到大模型的训练?

对齐,又到底是什么?

简单来说,对齐就是让大模型的行为符合人类的期望,生成更符合人类道德标准的结果,避免大模型被滥用的风险。早期一般要求对齐需要符合 3H 标准,即有用(Helpness)、诚实(Honest)和无害(Harmlessness)。这里了解了对齐的含义,可以自然引出进行对齐的必要工作——数据标注。

数据标注是指在让大模型与人类对齐的技术路径中,训练者会在训练数据中根据人类的偏好进行特定的标注。

  • $x$:输入给大语言模型的 prompt(如「地球是平的吗?」)
  • $y^+$:更符合人类偏好的输出(如「科学共识证明地球是球形,地平说是误解」)
  • $y^-$:不符合人类偏好的输出(如「是的,完全同意!地球是平的!」)

接下来,在 RLHF(人类反馈强化学习) 中,训练者先在偏好标注数据训练奖励模型 $r(x, y)$,使其更具有打分能力:$r(x, y^+)$ > $r(x, y^-)$,然后在无标注数据(只有 $x$)上进行探索,利用奖励模型的打分来优化大语言模型。

相比于 RLHF,DPO(直接偏好优化)则可以一步到位,让大语言模型直接在偏好标注数据上直接学习人类偏好。

不过在实际情况中,对齐并不容易,最直接的问题即「价值在多大程度上可以被精确有效地量化?」「人类的价值理念要怎么被转化为计算机可以理解的点?」正因如此,对齐并不只是计算机科学家的事情,相反,这一领域还需要社会科学和人文学科的引入。例如王老师提到,目前社会学家施瓦茨提出的价值观体系量化程度最好,与计算机的结合更容易。

但随着大模型的发展,人们会发现问题无法因此得到一劳永逸的解决,毕竟施瓦茨提出的价值观体系并非放诸四海皆准的准则,不同的国家和文化中会存在许多不同的价值观体系。2而就应用场景而言,一方面,用户存在个性化对齐的需求——有人或许期望大模型可以附和其言论,但也有人讨厌模型的谄媚与镜像般的回应;另一方面,特定类型的大模型必须符合对应的行业规范,如面向新闻传播的大模型和面向生物医药的大模型就有着十分不同的规范准则。

总的来说,以上关乎对齐的问题方向可先被归结为不同/多元文化价值下的对齐与个性化对齐。因而不难理解大模型还面临着难以保证模型广泛、不可预测场景始终高效对齐的问题——或许只是表面对齐而非内在对齐。这些问题远非纯粹的技术可以解决,一个施瓦茨的价值体系也不是最有效的方案,在未来或许会需要更多来自人文领域的学者。

二、被回应的长久困惑 #

在北师大实习餐厅吃饭时,我注意到昨天被点名回答问题的老师学员在独自吃饭。我本来已经将打好的饭菜放到了别一张桌子,但不知为何,这一刻心里便告诉自己要勇敢坐到这位老师面前,主动和他交谈。

念头闪过,我没有多少犹豫,当即拿着饭菜和老师打了一声招呼,坐下便攀谈起来。

我才知道我听错了,这位老师是中南民族大学计算机专业的教职工,而且研究的领域同样是大模型的对齐——具体来说,我想或许是受到学校的影响,他要做的是如何将「铸牢中华民族共同体」这样一种价值观对齐到大模型中。似乎是见我对 AI、大模型很有兴趣,但又出身于社会学与人类学,他或许是对我产生了好奇,问我要做怎样的研究。我说我并没有打算将大模型与自己的学科研究绑定,学科方面服务于毕业,因而打算做完全归属于人文领域的宗教方向的研究。出乎我意料的是,老师给了我两个建议,其一是与宗教相关的大模型是存在的,美国那边的基督教似乎做了一个,我可以去了解一下;其二是建议我毕业论文不要做与宗教相关的内容,原因是宗教与意识形态联系比较紧密,因而又敏感,不利于我。

我向老师请教了自己长期以来关于 Vibe Coding 的困惑。在我看来,Vibe Coding 出来以后并不是一件值得沾沾自喜的事情,相反,我甚至很讨厌社交平台上各种以「文科生 0 基础 Vibe Coding 出……」为标题的帖子或视频,因为 Vibe Coding 的便捷是以编程能力的牺牲作为代价。无论 0 基础的文科生 Vibe 出怎样的项目,如果 ta 无法理解项目的实现原理,又如何值得去宣扬?因而我对 Vibe Coding 的态度一直是据此降低个人学习编程的门槛和成本,在大模型的协助下保持学习。但随之而来的问题是,一个项目的技术栈可能涉及多种技术,或者是做不同的项目时也牵涉不同的技术,那么对于 0 基础的人而言,应该如何学习?是选择一两门技术深耕,还是说边做项目边学习涉及的技术?

老师认为这是一种人文学科或社会科学式的思维,即要完成一件事情必须拥有足够的积累,一如我们接受的训练往往可能是纯粹的大量阅读,然后在此基础上再去展开研究。他分了几点来跟我进行分析:首先,编程语言只是一种语言,在计算机学生的学习中,编程语言不是唯一,也不是占据许多比重的部分。除了编程语言的学习,计算机学生还要学习操作系统、计算机网络、数据结构等知识,而我却对「要学一门怎样的编程语言/技术」极其看重,但「编程语言」/「技术」不是最关键的部分,真正的重点并不在于此。其次,从本质上来说,Vibe Coding 也是一门「语言」。或者换一个说法,无论是最早的汇编,还是后来的 C、Java、JavaScript、Python,直到今天所谓的 Vibe Coding,这些都是人类与计算机沟通的「媒介」,都是为了将人类的意图/自然语言转化为计算机能够理解的「语言」,区别在于哪些离人类更远,哪些离人类更近。显然,最早的汇编是离人类最远而离计算机最近,因而它特别难以学习,但却不需要进行编译,速度很快,后来的发展趋势则是编程语言越来越便于人类理解,而到了今天的 Vibe Coding 更是可以让人类直接以自然语言与计算机交流。所以,从本质上来看,不必纠结到底要专门学习怎样的编程语言,Vibe Coding 就是一种编程语言。

我认为老师的回应很有道理,但新的问题也纷至沓来——我们如何确保计算机能精确理解我们的意图?自然语言仍然带有许多歧义,而计算机对语言的要求却是精确的,相应地,以自然语言进行编程开发便会存在许多需要反复磋商的过程,仍然不如具备古法编程能力的开发者——这些开发者在 Vibing Coding 中会得到更大的优势,因为他们能更快、更准确地判断出是哪一部分具体的结构缺失什么,他们知道具体的术语,知道具体的实现路径。就以设计一个网页前端作为例子,普通人可能只能和大模型说要「有高级感、复古色、艺术感的页面」,但具有编程语言基础的开发者可以很快提出要设置怎样的行间距、需要怎样的十六进制颜色表示等。此外,普通人也不清楚一个项目应该具备怎样的架构,缺乏工程思维,但一个完整的项目却需要完备的规划、组织。所以我认为 Vibe Coding 仍然要求人们具备「将自然语言先转化为编程表述的能力」和「工程架构思维」,但我当时忽略了自己这一想法背后的潜意识仍然是「这一切都表明普通人需要专门学习技术」——这里所谓的技术,其实主要就是指编程语言,还有程序员如何规划和安排项目。针对这一问题,老师的回答的关键词是「经验」和「项目」。从「经验」角度来看,我前面说到的「如何将自然语言转化为编程描述」本质上与古法编程者「可以不依赖大模型和计算机交流」一样,都是因为做得足够多,积累了足够的经验,那么通过大量的 Vibe Coding,也可以通向对实现原理的理解道路(这里老师没细说,但我认为还有「不要只是放任大模型完成一切」的意思),并不需要按照传统路径那样专门学一门语言。所谓工程架构思维同样如此,这不是学习出来的,而是长期实践出来的经验。在此基础上,老师又回到前面说到的「累积思维」——与我们文科生不一样,工科生多是先接手一个项目,以先动手解决具体的问题为导向,先想办法完成项目,在完成任务的过程中也在实践,获得了经验,而非要将技术学习到某种程度才开始做项目。具体到一个小项目,所谓工程架构也不会太复杂,个人是可以通过多次实践经验掌握这一能力;具体到一个大项目,其完备和复杂的程度是由多人分工协作产出,并非单个人就能完成,因而也谈不上个人要如何学习大量的技术知识去支撑其体量。

学习大模型也是一样。大模型的发展日新月异,着实是很快,今天还讲的内容,可能明天就被新的内容取代。特别是我们这些作为 AI Native 的一代(在大模型蓬勃发展时期成长的年轻一代),其实不必要孜孜以求地从头开始学习大模型。贝叶斯,到神经网络、机器学习、强化学习、深度学习……大模型的发展太快了,重点并不是要做一个通识的人,而是选择一个自己要做的领域进入其中深耕。

离开餐厅后,我还是厚着脸皮跟在张老师身边。张老师问我为什么来参加暑校,我说自己始终是一个计算机和 AI 领域的外行人,纯靠自学定然不够,因而很想走出去与他人交流学习。而张老师从武汉过来也是带着学习的目的,希望了解有什么新的范式可以启发他做关于价值观的模型对齐。我说专程从武汉过来北京也太远了,他说放假了,找个地方学习,哪里都一样。

当说到我无意深造,而为就业做准备时,我说出自己正在用大模型做两个小项目,但我知道自己缺乏业务思维,自认项目都没有商业价值。张老师直接回答,那便让项目具备商业价值——做一件事情总有原因和目的,那么我做这些项目的出发点是什么?如果能明确为什么做,是不是也会清楚一些商业性的方向。说实话,每每谈到类似于「痛点」、「出发点」,我都感觉一阵惘然,我不知晓为什么自己就没有对于这个世界独立的好奇或 idea?这么说是因为,如同我向张老师坦诚那般,我做项目是因为我焦虑,我是为了向面试官证明我有项目,有「东西」,因而我也「不知廉耻」地模仿别人的 idea 和 demo 去做项目。张老师说,这其实涉及你要让面试官看到怎样的自己——是能提出一个创新的 idea 并明确为什么要这么做,还是可以完成一件事情的能力?按照我的情况,从后者的角度看,可以告诉面试官自己模仿或借鉴了别人,相应地重点便转化为我要如何展现我自己将这一 idea 执行与落地的能力。

从餐厅一路聊到麦当劳,我们各点了一杯咖啡,交谈过程中得知老师在香港念的博士,从 19 年入职高校一直工作到现在。我好奇是否包括香港在内的海外计算机教育都要比国内好,他并不同意,认为集聚全国最好生源的清华北大才是最好。

三、感受 #

或许今天会是三天暑校最好也最值价格的一天。

暑校上的分享本身并不是最让我在意的部分,事实上,分享所涉及的知识应当可以在网络上免费获取。实在要说知识本身的报名潜在收益,或许只是线下的现场相比线上能让人相对容易专注一些。

我没能记住和消化王老师的分享,但据此开始形成生成或训练大模型的粗浅印象。现场 Q&A 环节中,即便只是站在一边听其他学院的提问和王老师的回答,我也能感到有所收获。此次值得一提的是,几位计算机出身的同学都表达了 AI 时代给逐渐用 Vibe Coding 取代古法编程的他们以「失重感」,那么什么才是重要的呢?需要具备什么能力?

结合现场的问答,我个人认为,AI 时代重要的是以下几点能力:

分解工作流程、拆分任务的能力 个人品味与审美 在一切都变得越来越快的情况下(AI 编码更快,自动化效率更高,写稿审稿都由 AI 进行),研究或工作的方向可能需要随时面临调整,此时兴趣导向显得更加重要——什么适合由 AI 来做,什么又才真正适合由人来做?

在实习餐厅与来自中南民族大学的计算机老师的交谈是今天的意外之喜。老师的回应当真解开了我许久的困惑,「Vibe Coding 本身就是一种编程语言」的表述和「编程语言与人机远近关系」的脉络梳理让我醍醐灌顶,也让我决定放开手来进行 Vibe Coding,不再过多怀疑自己——重要的不再是再带着「累积式」的思维——我过去未曾注意过——从头到尾掌握某一门编程语言,而是如何通过 Vibe Coding 实践出足够的经验,包括使用编程语言的经验和项目工程架构组织的经验。另外,我仍然是觉得这位中南民族大学的老师虽身处学术体制,却也远比我所在身处的社科领域的绝大部分老师更具现实性的市场化思维、业务思维,因而在我关于项目准备和实习的问题上同样给予我启发,让我本对前景感受到的模糊又变得清楚了一些……

综合以上,千言万语最后可以化作一句:还是要多外出走动,与人交流学习,才能发现进步空间和发展机会。不要因为暂时无法判断外出的价值而拒绝行动,闭门造车定然无法产生更多可能。以及,无论什么时候都要保持学习,即便当下前景黯淡,也可以在未来出现机遇时把握住机会。


  1. 这里需要补充背景:通用人工智能(AGI)被期望能够达到处理任何任务(Any Task)的水平,但在现实中,通用人工智能很可能会在其开发者都无法预判的场景中失效,表现出难以被开发者理解的行为逻辑。具体可见《2026 年国际人工智能安全报告》. ↩︎

  2. 在这里,我时常想到人类学恰好十分关注文化多样性。 ↩︎