上海交通大学 《版本管理系统原理及企业实践》 课程 - 2023 年 10 月 8 日

上海交通大学闵行校区-陈瑞球教学楼

国庆节后的第一趟差旅是飞到上海,参加上海交通大学的一个开源相关课程的授课。第一天晚上飞到第二天讲完晚上赶回北京,这就是所谓的特种兵差旅吧。 之前在参与 openEuler 工作的时候,也在学校里面参与一些活动,有时候也会演讲,但都是 30 分钟或者 40 分钟那种的 Topic 。这样第一次正式的在课堂里面上课还是第一次,终于如愿正式的在大学里面讲课。在 Twitter 上有人问我有什么区别,我想可能就是有学分和没有学分的区别吧。这次课程是正式的课程,选修的学生会要求完成最后的大作业,然后会得到相应的学分。

上海交通大学闵行校区-提前准备好设备

跟负责课程的林云老师商定,这次课程我来讲 《版本管理系统原理及企业实践》 的部分,正好是当前我正在主要研究的方向。 国庆假期中准备了一个 50 页的 Slide ,最后发现三节课的时间讲的比较匆忙,没有按照预定的计划讲完,而且是在上课中互动不多的情况下。 这次讲课的感觉,还是少有学生主动回答问题,更别说主动提出问题了。如果要互动,可能是需要采用提问的模式,但是这样需要对之前设计的互动环节内容进行调整,可能临时的情况下效果更不好,所以就放弃了。 由于没有反馈,所以也无从知道自己讲的是否被在场的同学理解,是否引起了他们的思考。 如果想把这个讲好, 可能是需要准备的周边内容介绍,在代码管理的上下文进行铺垫。 如果还有类似的讲课机会,我想可能要把课时增加,更精心的准备才行。

上海交通大学闵行校区-准备来听课的同学

课堂的间隙和林云老师交流,主要是讨论当前 LLM 下如何构建合适的版本管理工具链,支撑 LLM 的科研和研发。当前能看到的都是使用 Git LFS 来进行版本管理,如果深入研究 LFS 实现的人肯定会意识到这不过是 control-c/control-v 的高阶方案。当然也可以说,后端可定是用了对象存储的技术来处理,通过对象存储的切块去重来实现更高效的存储。但是从语义层面讲,还是很难讲清楚版本之间的关系。如果采用 Sapling 或者 Git 采用的 Delta Diff 的逻辑,通过二进制 Diff 来处理版本也是一个解决方案,但是也会丧失语义的部分。 所以到底如何做才是最好的,还没有一个定论。 我想国内在做 HuggingFace 的公司和创业团队没有 100 也有 50 家吧,不知道他们都在怎么思考这个问题,估计年底就能看到一堆趋同的项目高调发布,不会造成投资人和观众都不够用的情况吧?


上海交大的闵行校区离市区还是比较远的距离,但是校园里面的景色非常好,穿过校园的时候会思考自己是不是要回到学校重新深造一下,对于一个师范专科学校生物教育专业毕业的人,还是需要回炉重造一下,也许会有新的提升。

上海交通大学闵行校区-1

上海交通大学闵行校区-2

上海交通大学闵行校区-3