诸如OpenAI的GPT-3或其后继者GPT-4等LLM的基础在深度学习中,这是AI的一个子集,利用具有三个或更多层的神经网络。这些模型是在广阔的数据集上进行训练的,涵盖了互联网文本的广泛领域。通过训练,LLM学会了预测序列中的下一个单词,给出之前的单词。这种能力,本质上简单,是LLM能够生成连续序列上连贯、上下文相关文本的基础。
潜在的应用是无限的,从起草电子邮件、创建代码、回答查询,甚至创造性写作。然而,强大的功能伴随着巨大的责任,在生产环境中管理这些庞大的模型并不容易。这就是LLMOps介入的地方,它体现了一套最佳实践、工具和流程,以确保LLM的可靠、安全和高效运行。
LLM集成的路线图有三种主要途径:
- 提供通用LLM的提示:
- 像ChatGPT和Bard这样的模型提供了一个低门槛的采用方式,前期成本较低,但长远来看可能会有一定的价格标签。
- 然而,数据隐私和安全的阴影仍然存在,特别是对于金融科技和医疗保健等拥有严格监管框架的行业。
- 对通用LLM进行微调:
- 通过像Llama、Falcon和Mistral这样的开源模型,组织可以根据特定的用例定制这些LLM,只需进行模型调优的资源支出。
- 这种方法虽然解决了隐私和安全问题,但需要更深入的模型选择、数据准备、微调、部署和监控。
- 这条路径的循环性要求持久的参与,然而像LoRA(低秩适应)和Q(量化)-LoRa这样的最新创新已经简化了微调过程,使其成为越来越受欢迎的选择。
- 自定义LLM训练:
- 从头开始开发LLM可以带来与手头任务相适应的无与伦比的准确性。然而,AI专业知识、计算资源、大量数据和时间投入的要求是相当大的障碍。
这三种方法中,对通用LLM进行微调是公司最有利的选择。创建一个新的基础模型可能需要高达1亿美元的成本,而对现有模型进行微调的成本范围在10万到100万美元之间。这些数字来自于计算开支、数据采集和标注,以及工程和研发支出。
LLMOps与MLOps的对比
机器学习运营(MLOps)已经被广泛应用,为从开发到生产的机器学习(ML)模型提供了一个结构化的过渡路径。然而,随着大型语言模型(LLM)的兴起,一种名为LLMOps的新的操作范式出现,用于解决部署和管理LLM所面临的独特挑战。LLMOps与MLOps的区分基于以下几个因素:
- 计算资源:
- LLM对于训练和微调需要大量的计算能力,通常需要使用像GPU这样的专门硬件来加速数据并行操作。
- 推理的成本进一步强调了模型压缩和蒸馏技术在控制计算开支方面的重要性。
- 迁移学习:
- 与常规的ML模型经常从头开始训练不同,LLM主要依靠迁移学习,从预训练模型开始,并对其进行针对特定领域任务的微调。
- 这种方法在节约数据和计算资源的同时,实现了最先进的性能。
- 人类反馈循环:
- LLM的迭代增强很大程度上是由人类反馈的强化学习驱动的。
- 在LLMOps流程中集成反馈循环不仅简化了评估,还推动了微调过程。
- 超参数调整:
- 传统的ML侧重于通过超参数调整来提高准确性,在LLM领域,重点还包括减少计算需求。
- 调整批量大小和学习速率等参数可以显著改变训练速度和成本。
- 性能指标:
- 传统的ML模型遵循明确定义的性能指标,如准确性、AUC或F1分数,而LLM具有不同的指标集,如BLEU和ROUGE。
- BLEU和ROUGE是用于评估机器生成的翻译和摘要质量的指标。BLEU主要用于机器翻译任务,而ROUGE用于文本摘要任务。
- BLEU衡量精确度,即机器生成的摘要中有多少单词出现在人工参考摘要中。ROUGE衡量召回率,即人工参考摘要中有多少单词出现在机器生成的摘要中。
- 提示工程:
- 精确的提示工程对于从LLM获取准确可靠的响应至关重要,可以减轻诸如模型幻觉和提示黑客等风险。
- LLM流水线构建:
- 像LangChain或LlamaIndex这样的工具可以实现LLM流水线的组装,将多个LLM调用或外部系统交互交织在一起,用于复杂任务,如知识库问答。
LLMOPS工作流程
理解LLMOps工作流程:深入分析
语言模型运营(LLMOps)类似于大型语言模型的运营骨干,确保在各种应用程序之间实现无缝的功能和集成。虽然LLMOps似乎是MLOps或DevOps的变种,但LLMOps具有独特的细微差别,以满足大型语言模型的需求。让我们深入探究插图中描述的LLMOps工作流程,全面探讨每个阶段。
- 训练数据:
- 语言模型的精髓在于其训练数据。此步骤涉及收集数据集,确保数据集经过清理、平衡和适当的注释。数据的质量和多样性对模型的准确性和多样性有重大影响。在LLMOps中,不仅强调数据量,还要与模型的预期用途保持一致。
- 开源基础模型:
- 插图引用了一个“开源基础模型”,这是由领先的人工智能实体通常发布的预训练模型。这些模型是在大型数据集上进行训练的精彩起点,节省时间和资源,使其能够为特定任务进行微调,而不是重新训练。
- 训练/微调:
- 具备基础模型和特定训练数据后,进行微调。此步骤对模型进行专门用途的细化,如使用医学文献对一般文本模型进行微调以进行医疗应用。在LLMOps中,进行严格的微调和一致的检查至关重要,以防止过度拟合,并确保对未见数据具有良好的泛化能力。
- 训练完成的模型:
- 微调后,出现了一个准备部署的训练完成的模型。该模型是基础模型的增强版,现在针对特定应用进行专门定制。它可以是开源的,具有公开可访问的权重和架构,或者是由组织保密的专有模型。
- 部署:
- 部署包括将模型集成到实时环境中进行实际的查询处理。这涉及关于托管的决策,可以在本地或云平台上进行。在LLMOps中,关注延迟、计算成本和可访问性至关重要,同时确保模型能够很好地扩展以处理大量的同时请求。
- 提示:
- 在语言模型中,提示是输入的查询或陈述。制定有效的提示,通常需要理解模型的行为,对于模型处理这些提示时产生期望的输出非常重要。
- 嵌入存储或向量数据库:
- 在后处理阶段,模型可能会返回不仅仅是纯文本响应的结果。高级应用程序可能需要嵌入-表示语义内容的高维向量。这些嵌入可以被存储或作为服务提供,以便快速检索或比较语义信息,丰富模型在纯文本生成之外的能力的利用方式。
- 部署的模型(自托管或API):
- 一旦处理完成,模型的输出就准备就绪。根据策略,可以通过自托管界面或API访问输出,前者为主办组织提供更多控制权,后者为第三方开发人员提供可扩展性和简便集成。
- 输出:
- 该阶段产生了工作流程的有形结果。模型接收提示,处理它并返回一个输出,该输出根据应用程序的不同,可以是文本块、答案、生成的故事,甚至是前面讨论的嵌入。
顶级LLM初创公司
大型语言模型运营(LLMOps)领域出现了一些专业平台和初创公司。以下是两个与LLMOps领域相关的初创公司/平台及其描述:
Comet
Comet简化了机器学习生命周期,专门为大型语言模型开发提供支持。它提供了跟踪实验和管理生产模型的功能。该平台适用于大型企业团队,提供各种部署策略,包括私有云、混合和本地设置。
Dify
Dify是一个开源的LLMOps平台,利用类似GPT-4的大型语言模型来辅助AI应用的开发。它提供了用户友好的界面,并提供无缝的模型访问、上下文嵌入、成本控制和数据标注功能。用户可以轻松地以可视化方式管理其模型,并利用文件、网络内容或Notion笔记作为AI上下文,Dify负责预处理和其他操作。
Portkey.ai
Portkey.ai是一家专注于语言模型操作(LLMOps)的印度初创公司。在由Lightspeed Venture Partners领投的300万美元种子轮融资后,Portkey.ai与OpenAI和Anthropic等重要的大型语言模型进行集成。他们的服务面向生成式AI公司,重点是提升LLM操作堆栈,包括实时金丝雀测试和模型微调能力。