开源如何打破AI垄断:从LLMs到模块化系统
随着自然语言处理(NLP)和大型语言模型(LLMs)的最新进展,以及某机构等大公司主导该领域,许多人都在思考:我们是否正进入一个由科技垄断企业通过API控制的黑箱时代?
答案是否定的。本文将深入探讨开源模型生态系统、关于LLMs在工业中应用的一些常见误解、实际案例以及软件开发的基本原则(如模块化、可测试性和灵活性)如何仍然适用。LLMs是我们工具箱中的一个强大新工具,但最终目标仍然是创建一个能够实现预期功能的系统。显式仍然优于隐式,可组合的构建块仍然胜过庞大的黑箱。
随着理念的发展,我们看到了越来越多高效利用计算资源的方法,从而构建出运行成本更低、更易于控制的AI系统。本文将分享一些可立即应用的实用方法。如果您正在尝试构建一个实现特定功能的系统,您不需要将请求转换为任意语言并调用最能理解任意语言的最大模型。开发这些模型的人可能会讲述这样的故事,但我们其他人没有义务相信他们。
开源模型生态系统
开源模型包括:
- 任务特定模型:小型、通常快速、运行成本低,但泛化能力有限,需要数据进行微调
- 编码器模型(如ELECTRA、T5):相对较小且快速,运行成本可承受,泛化和适应能力良好,需要数据进行微调
- 大型生成模型(如Falcon、MIXTRAL):非常庞大,通常较慢,运行成本高,泛化和适应能力良好,几乎不需要数据
从原型到生产
处理管道原型可以通过以下步骤转化为生产环境:
- 使用
spacy-llm
提示模型并将输出转换为结构化数据 - 在生产环境中交换、替换和混合组件
- 创建结构化的机器可读Doc对象
蒸馏任务特定组件
这些组件具有以下特点:
- 模块化
- 可测试
- 灵活
- 可预测
- 透明
- 无锁定
- 可编程
- 可扩展
- 可在内部运行
- 运行成本低
AI革命不会被垄断
软件行业不依赖于秘密配方。知识被共享和发布,秘密不会给任何人带来垄断地位。使用数据对改进产品很有帮助,但它不具备泛化能力。数据不会给任何人带来垄断地位。LLMs可以成为产品或流程的一部分,并且可以与其他方法互换。互操作性正是垄断的对立面。
开源倡议在民主化AI技术方面发挥着关键作用,提供了透明、可扩展的工具,使用户能够掌握主动权。通过模块化、可测试性和灵活性等基本原则,我们可以构建更高效、更可控的AI系统。