58同城孙启明:生活服务垂类大模型怎么搭?自研+开源两手抓,火速微调上线Llama 3|GenAICon2024

智东西作者 GenAICon 2024

2024中国生成式AI大会于4月18-19日在北京举行,在大会第二天的主会场AIGC应用专场上,58同城TEG-AI Lab大语言模型算法负责人孙启明以《生活服务领域垂类大语言模型建设和应用》为主题发表演讲。

孙启明详细介绍了58同城搭建生活服务垂类大模型体系的思路和心得。据他分享,58同城正在进行整体改造与产业化升级,力图实现整个服务链条中的信息流程在线化和数字化。为了支持这一转型,58同城AI Lab构建了模型领先、敏捷易用的AI平台,以助力AI应用在其内部四大业务线的快速落地。

在孙启明看来,通用大模型+提示不会代替一切,应用方需要结合自身业务场景,微调出自己的大模型。目前58同城每天都有大量的大模型训练任务在进行,四大业务线都用大模型提升服务体验,迄今其线上模型数量已经超过200个。

58同城搭建了一套支持大语言模型训练、推理的平台,基于该平台推出垂类大语言模型灵犀大模型(ChatLing),相比官方开源大模型实现了更好效果。除了自研模型外,58同城还积极集成开源通用大模型,并能快速响应最新开源模型的发布。

例如,4月18日晚间最新的Llama 3模型刚开源,第二天下午58同城就火速在自家AI平台上线这款新开源模型。

以下为孙启明的演讲实录:

我将主要介绍我们是如何构建相关垂直领域的大模型平台,并以此赋能58同城的线上业务产品,从而带来了较为可观的线上收益。

首先,让我做一个简短的自我介绍。自从毕业后加入58同城,我的工作重点一直集中在推荐系统、NLP(自然语言处理)以及大模型技术等领域。目前,我负责58同城大语言模型的技术方向,并主导了公司内部大模型平台从0到1的建设工作。

58同城作为一个服务平台,其主营业务涵盖四个主要方向:生活服务、房产、招聘和汽车。

我们目前对业务增长的策略进行了“第一曲线”和“第二曲线”的划分。“第一曲线”指的是我们传统的流量模式,即潜在客户通过购买58同城的会员服务,成为我们的B端商家,这些商家在58同城平台上发布信息。而C端则浏览这些帖子,并与商家直接进行交互和后续沟通,这就是我们的流量生意模式。我们的每条业务线,包括维修、房产等,都有相应的案例展示。

通过这种方式,58同城不仅提供了一个信息发布的平台,还促进了B端商家和C端消费者之间的直接联系,从而实现了双方的需求匹配。

一、服务平台借力AI转型,智能助手实现初步筛选和留资

大语言模型的建设和应用,将进一步优化流量生意模式的过程,提高用户体验,增强平台的服务质量和效率。

58同城正在进行整体的改造和产业化升级,力图通过第二曲线战略实现业务模式的转型。

我们的目标是将整个服务链条中的信息流程在线化和数字化,以此无缝连接上下游环节,提供一站式服务,让客户能够在我们平台上完成更多事务,而不仅仅是简单的流量生意。比如用户可以在58同城平台上直接寻找保姆、月嫂,或者完成房产领域的相关工作。

为了支持这一转型,58同城AI Lab致力于建立一个领先、敏捷且易用的AI平台,旨在促进AI应用在各个业务线中的快速实施和落地。

我们设计的流程图从底层的AI算力开始,包括GPU、CPU、NPU等通用技术平台资源。

在技术平台层,我们进行整体的算法引擎设计,包括算力管理、大规模集群调度,以及离线和在线性能加速。

在算法模型层面,我们的平台涵盖了图像、语音、传统NLP算法、3D建模,以及新兴的大语言模型和多模态大模型。

在技术平台层之上,我们构建了应用平台层,提供了包括智能对话、客服服务、VR看房、AIGC图片生成、数字人克隆互动等服务。此外,我们的Agent(智能体)包含工作流和知识库插件,以适应不同领域的应用需求。

最终,基于整个AI应用平台,我们进一步赋能公司内部的AI应用,包括销售、客服以及线上产品、运营和办公等各个方面。

目前这套流程在公司内部运行得相当顺畅,每天有大量的大模型训练任务在进行,我们四大业务线基本上都能够利用大模型来提升服务。以今天为例,我们线上训练的模型数量大约有200多个。

在应用方面,我们上线了一个B端商家智能聊天助手。这个助手主要应用于招聘场景,尤其是在58同城平台上,我们发现有很多蓝领岗位的招聘用到了这一助手。

招聘方可能没有足够的客服团队来及时响应每一个投递简历的商家,这时,我们的智能助手就会接管对话。它基于大模型和职位相关信息,能够主动询问投递者是否具备一些基本的工作经验,是否能够满足职位的基本要求。同时,如果用户对公司的位置、职位的待遇等信息有疑问,智能助手也能够基于大模型提供相关内容,进行简单的沟通。

智能聊天助手的核心功能在于AI留资和初步筛选。对于求职者而言,AI需要与其进行有效沟通,获取简历,并判断其是否符合招聘方的基本需求。

在理想情况下,我们希望AI能够做到更进一步,即为招聘方直接提供已经通过面试的人选。甚至可能由AI完成整个面试过程,直接判断求职者是否适合入职。

如果能够实现这一点,相比传统的仅提供流量的业务模式,使用大模型作为聊天助手将是一个巨大的提升。后者的优势在于它们能够更好地理解和处理复杂的对话场景,提供更为精准和个性化的交互体验。

我们尝试了两种大模型应用方案。

首先,我们尝试了一种端到端的方法,让大模型全面接管并处理整个聊天过程,包括适时的回复和沟通交流。然而,我们发现这种方法并不理想。随后,我们转向了传统NLP方法的参考,这些方法包括自动回复、文本分类、文本匹配和问答知识库。

此外,还有主动引导策略,它基于状态机进行回复,例如,在解答了一个问题之后,系统会根据配置好的话术适时提出下一个问题。最后是槽位识别,它根据用户提供的内容进行设计和回复。但这些传统NLP方法过于依赖知识库,且维护成本较高,尤其是在信息快速变化的情况下,比如经济趋势变化或新兴职位的出现,传统知识库的更新维护尤为困难。

我们的团队负责58同城线上众多场景的知识库服务,面对知识库信息的不断变化,我们尝试采用自动化挖掘技术以减少手动更新的需求,但目前这些技术仍未能达到手动更新的效果,尤其是在多样性方面存在不足。

我们对AI对话系统的评估非常严格,尤其是在对话的流畅度方面,我们通过设定正确标准来评估机器人在对话中的每一句话是否恰当,任何不符合标准的回复都会导致对话流畅度的下降。我们的目标是使对话流畅度达到80%,这是衡量机器人能否替代人类工作的指标之一。

二、汇集自研和第三方模型,Llama 3已上线平台

我们紧跟去年ChatGPT等通用大模型的发展趋势,开始探索各类模型。

我们与业界的共识是,通用大模型结合提示工程并不能解决所有问题,尤其在实际应用中,我们不能仅依赖聊天能力来应对所有问题。尽管一些开源或闭源的商业模型在日常对话中表现良好,但在业务场景中,它们难以达到99.9%以上的准确率。

因此,我们开始着手构建一个平台,旨在支持大语言模型的整个训练和推理流程,并与各个行业中效果显著的API进行集成。我们希望公司内部所有业务部门都能利用上当前最好的模型。

我们的平台架构分为几个层次,首先是设施层,它提供了必要的硬件资源和计算平台。在模型层,我们集成了多种开源序列模型,包括Llama、Qwen、Baichuan、Yi等。我们自建的“灵犀”平台也训练并集成了我们的模型ChatLing。

在工具层面,我们提供了当前性能优秀的推理加速框架,如vLLM、TGI、TensorRT-LLM、EnergonAI,以及训练方面的微调工具,包括对齐方式和封装了MoE建模方式的工具。

这样的封装设计使得我们的业务线研发人员,甚至是非技术背景的同事,可以不必深入了解复杂的技术细节。他们只需要准备好数据,通过平台的简单点击操作和数据集配置,利用我们提供的优秀默认参数,或者使用我们的工具对这些参数进行微调,就能训练出适合自己行业的大语言模型。

我们构建了名为ChatLing的灵犀大语言模型,这一过程得益于我们之前提到的大语言平台,使得预训练、SST、领域微调和强化学习对齐这三个阶段的流程能够顺利执行。

我们并没有完全采用从零开始训练的策略,因为这需要大量的高质量语料,而且当前的模型训练通常需要处理至少1.5T到2T的Tokens。

为了高效利用资源并快速迭代,我们选择了基于已有的、国内外表现良好的开源模型作为基础,即所谓的“基座”。在这些基座之上,我们结合58同城的业务数据,使用经过清洗的、规模达几百亿的高质量语料进行增量预训练,随后执行微调和强化学习,以进一步提升模型的性能。

通过在开源通用基座上完成这三个阶段的训练,我们得到了灵犀大模型,该模型随后被用于赋能58同城的业务应用。

这个流程的灵活性体现在,一旦有新的开源模型发布,我们的团队能够迅速响应。4月18日晚上Llama 3刚开源,4月19日下午我们已经完成了基于该模型的微调训练和强化学习,并且已经上线了新模型。这意味着4月19日晚上我们的业务部门就可以开始使用基于Llama 3微调的模型。

我们致力于开发和采用多种技术来优化大语言模型的推理资源使用,这些技术目前正被积极地应用于我们的业务中。

其中一项技术是MoE,我们创建了一套自动化流程来构建MoE模型。这一流程允许不同模型根据自身需求,选择多种实现方式,包括类似Databricks的方法、传统的Mistral方式,或TM2等,来生成其基座MoE模型。此外,我们完成了基于MoE模型的微调和训练工作,使得模型能够更加精准地服务于特定的业务场景。

我们还采用了S-LoRA技术,这是一种广泛使用的微调方法,尽管有人质疑其与BERT直接微调的差异性,但我们通过集成LoRA的方式,允许一个基座模型兼容多达上千个LoRA模型,实现每个场景的个性化定制。这种方法可以根据线上流量的多样性进行批次拼接,与基座模型结合进行推理,极大程度地节约了资源。

在大模型的训练和推理加速方面,我们采用了包括Unsloth在内的传统方案,以及在Flamer上实现的微调技术和增量预训练中的Flash Attention技术。此外,我们利用基于HQQ的推理加速技术。尽管存在一定的硬件资源上限,例如使用两张4090显卡来支持千问72B模型的推理和微调,但这已是我们目前的极限。

三、大语言模型支持多种合作模式,灵活应对不同业务方

我们的平台建设支持多种合作模式。

对于内部没有算法团队的应用方,我们提供了Agent平台,类似于智谱和千问提供的能力。这个内部Agent平台允许用户通过低代码甚至零代码的方式快速创建机器人,并通过拖拽的方式构建大模型的工作流。

例如,创建一个查询天气的机器人或调用内部接口的服务,用户只需拖拽相应的流程模块,比如大模型处理流程、知识库流程、接口调用流程,以及让大模型自检工作流正确性的流程。完成后,用户一点发布即可生成API,供业务方直接接入。

这种简便的使用方式,提高了大家的使用满意度,并在公司内部得到了广泛应用。

对于应用四,我们直接提供API接口,但不包括Agent平台。这种方法适合于那些认为无需微调模型即可直接使用的场景。我们接入了多种商用模型,如文心一言、智谱AI(的GLM)、通义千问等,并结合我们自己的ChatLing模型,以便快速部署。

针对需要微调的场景,我们提供了三种不同的支持方案。

应用三是我们较为常见的做法,包含一个专门的微调团队,他们基于灵犀大模型为业务提供定制化的微调服务,从而实现平台对业务的赋能。

对于应用二,业务方拥有自己的算法团队,因此不需要ChatLing大模型团队的直接参与。在这种情况下,算法团队可以直接在我们的大模型平台上进行深入的定制化微调和相关操作。

对于那些算法能力特别强的业务方(应用一),他们可能不需要基于灵犀大模型或经过Instruct调整的模型进行微调。对于这样的情况,我们同样提供支持,包括必要的参数配置以及后续的Prompt优化服务,帮助业务方对微调数据进行思维链式的优化和重现。

四、灵犀模型更能理解生活服务,在线推理速度超闭源2.6倍

在灵犀大模型的效果评测方面,我们基于不同尺寸的开源大模型训练并落地了多版本的灵犀大模型,包括MoE架构的实现。

我们在OpenCompass、MT-bench等公开评估平台上对模型能力进行了测试,并提供了Turbo、Plus等四个版本的模型。相比其他开源模型,我们的模型在MMU、C-Eval等指标上展现出了一定的性能优势。

除了在开源数据集上的评测,我们还使用内部数据对模型进行了评估。在NLP和NLU任务上,我们经过微调的开源模型相比直接使用官方开源大模型的效果更为显著。

这一改进主要得益于我们在ChatLing的开发过程中融入了大量行业数据,构建了具有行业特性的大模型,这使得我们的模型在理解生活服务和招聘领域方面更为精准和强大。

我们进行了一项实验,购买了市场上排名前一、二大厂的服务,并与我们的ChatLing进行了对比测试。

我们使用的是拥有约百亿级别参数量的ChatLing Turbo,与商用大厂基于千亿参数的大模型进行了同期微调对比。在这次对比中,我们确保了除了模型本身,其他使用的数据和条件尽可能保持一致。

结果显示,在百亿参数规模下,我们的ChatLing模型在微调后的表现超过了商用大厂的千亿参数模型。这一发现极大地增强了我们对小尺度模型在特定行业数据上应用可行性的信心。

我们将大模型的能力进行了分解,并设计了一套包含四个独立模块的方案。这四个模块都是独立的大模型,通过S-LoRA技术部署到一个基座模型上。

第一个模块是意图识别,它负责判断用户的当前意图;第二个模块是回答问题,它需要判断用户的问题是否可以回答,并生成相应的答案,这涉及到NLG和NLU的双重任务;第三个模块是反问生成,它根据用户已提供的信息,识别出缺失的部分,并生成问题以向用户询问;最后一个模块是信息抽取,它负责从用户提供的信息中抽取关键数据。

在这四个能力中,意图识别、信息抽取以及回答问题模块的一部分可以被视为较为直接的NLG任务,大模型在这些任务上表现出了很高的准确性。而回答问题和反问生成模块则涉及到更复杂的NLU任务,我们通过结合NLG和NLU的技术,优化了模型,减少了模型产生幻觉的概率。

我们通过实施基于AI中控或Agent的案例,对不同的大模型应用策略进行了深入的比较和分析。我们特别关注了将大模型拆分为四个独立能力的方法,并与闭源千亿参数大模型的微调效果以及GPT-4 Turbo直接管理对话的效果进行了对比。

通过这些对比,我们得出了一些有价值的结论。

相比于商用的闭源大模型,当我们将大模型拆分为意图识别、回答问题、反问生成和信息抽取这四个独立能力时,每个独立能力的表现都优于闭源模型。这表明,针对特定行业领域的大模型在该场景下的训练是非常成功的。

其次,在会话流畅度方面,如果要求对话的每一轮都必须流畅准确,传统NLP的水平虽然较高,但GPT-4端到端的方案并未达到这一水平。无论是使用闭源大模型还是我们的灵犀大模型,按照四个能力拆分后的方案都比传统NLP有显著提升。

在推理速度上,我们的百亿级模型在尺寸上比商用模型小很多,但通过推理加速技术,我们的在线推理速度是商用闭源大模型最高档位速度的2.6倍。

综上所述,垂直领域的大模型相比于开源的通用大模型具有明显的性能优势。无论是在开源数据还是闭源数据上,垂直领域大模型都能达到或超过开源模型的传统评估标准,同时在内部的特定场景下展现出更优的性能指标。即使与经过微调的商用千亿参数通用大模型相比,垂直领域的百亿参数大模型在性能上也不逊色。

大模型的民主化趋势愈发明显,即使使用较小规模的大模型,如Llama 3这样的开源8B模型,只要结合了特定垂直领域的语料进行训练,其在特定场景下的表现甚至可能超越直接使用商用千亿通用大模型或基于其微调的结果。这是我们通过实践积累的宝贵经验。

以上是孙启明演讲内容的完整整理。