AI 训练师和标注师的工作存在以下区别:
对于神经网络而言,我们将搜索限制在程序空间的一个连续的子集上,并且,使用反向传播和随机梯度下降方法进行搜索,(出人意料地)这种搜索方式挺有效。更具体地对比,软件1.0是将人工设计的源码(比如cpp文件)编译为可以有效工作的二进制文件。而软件2.0的源码通常由两部分组成:1)定义了目标行为的数据集;2)给定代码大致结构,但是需要填充细节的神经网络结构。训练神经网络的过程,就是将数据集编译成二进制文件的过程——得到最终的神经网络。时至今日,大多数实际应用中,神经网络的结构及训练系统已经日益标准化为一种商品,所以,大部分活跃的“软件开发”工作某种形式上变成了组织、增加、调整和清理带标签的数据集。这从根本上改变了我们迭代软件的编程范式,将开发团队分成了两拨:软件2.0的程序员(数据标记员)负责编辑和扩大数据集,而另一小撮人,维护着与训练有关的基础设施以及分析、可视化和标注等接口。事实证明,对于真实世界中的很多问题,采集数据(更泛化地说,确定期待的行为)比显式地写程序要容易得多。由于以上以及以下我将要介绍的软件2.0的诸多好处,我们正在见证工业界大量代码从软件1.0迁移至软件2.0的重大转变。软件1.0吞噬着整个世界,软件2.0(AI)在吞噬软件1.0。
毫无疑问,AI将不可逆转地改变我们如何预防和治疗疾病。医生将把文档工作交给AI书记员;初级医疗服务提供者将依赖聊天机器人进行分诊;几乎无穷无尽的预测蛋白结构库将极大地加速药物开发。然而,为了真正改变这些领域,我们应该投资于创建一个模型生态系统——比如说,“专家” AI——它们像我们今天最优秀的医生和药物开发者那样学习。成为某个领域顶尖人才通常以多年的密集信息输入开始,通常是通过正规的学校教育,然后是某种形式的学徒实践;数年时间都致力于从该领域最出色的实践者那里学习,大多数情况下是面对面地学习。这是一个几乎不可替代的过程:例如,医学住院医生通过聆听和观察高水平的外科医生所获取的大部分信息,是任何教科书中都没有明确写出来的。通过学校教育和经验,获得有助于在复杂情况下确定最佳答案的直觉特别具有挑战性。这一点对于人工智能和人类都是如此,但对于AI来说,这个问题因其当前的学习方式以及技术人员当前对待这个机会和挑战的方式而变得更加严重。通过研究成千上万个标记过的数据点(“正确”和“错误”的例子)——当前的先进神经网络架构能够弄清楚什么使一个选择比另一个选择更好。我们应该通过使用彼此堆叠的模型来训练AI,而不是仅仅依靠大量的数据,并期望一个生成模型解决所有问题。例如,我们首先应该训练生物学的模型,然后是化学的模型,在这些基础上添加特定于医疗保健或药物设计的数据点。预医学生的目标是成为医生,但他们的课程从化学和生物学的基础开始,而不是诊断疾病的细微差别。如果没有这些基础课程,他们未来提供高质量医疗保健的能力将受到严重限制。同样,设计新疗法的科学家需要经历数年的化学和生物学学习,然后是博士研究,再然后是在经验丰富的药物设计师的指导下工作。这种学习方式可以帮助培养如何处理涉及细微差别的决策的直觉,特别是在分子层面,这些差别真的很重要。例如,雌激素和睾酮只有细微的差别,但它们对人类健康的影响截然不同。
Langchain等框架,Milvus、Pinecone等向量数据库,记忆存储,会话管理等等应用层建设…负责开发AI应用的后端部分的代码工程师,Prompt只是写的过程中顺便写的一个环节,好不好另外调,也可以包装出去给专门的写提示词做测试的同事(新时代“数据标记员”)去完善这块,毕竟需要不断迭代的活,在没有能够debug和控制变量的情况下,想要一下子得到好的结果,还是需要不断地迭代优化,会耽误开发进程吧,可以作为并行分支同步进行。[heading3]4、AI模型训练师[content]训练模型时涉及到数据清洗、数据生成、对齐等操作,需要用到Prompt工程的地方很多,这方面我了解不多,实操机会较少,未来有一定实操沉淀后再分享给大家。[heading3]5、AIGC产品经理[content]很多产品经理都会说,不懂技术老是被开发那边吐槽这个那个,这里的技术指的是前端设计,后端逻辑,数据库增删改查逻辑等等。那懂技术的产品经理,他就会把每个环节的前后端联调方案都写出来,开会决议等等,减少了很多这样的问题:“这个环节,后端实现起来难度怎么样?”同理,在做AIGC应用时,要验证用户的需求是否能够用AI解决,就离不开提示词设计的技能需要了,这还真不是你把提示词这块工作完全丢给“提示词工程师”就可以解决的,就好像你把后端相关内容你不考虑进去,直接把界面设计出来让后端自己去联想解决方案一样,最后就会导致大家步调不一致,重写。