点击蓝字
关注我们
AI TIME欢迎每一位AI爱好者的加入!
在信息时代,大语言模型已经引领了自然语言处理领域的发展,为各行各业带来了前所未有的机会和挑战。同时,指令工程已经崭露头角,为我们提供了有效引导大模型的方法,以更好地满足特定任务和需求。ChatGLM干货技术分享系列活动“ChatGLM大模型应用构建和指令工程”邀请了智谱AI解决方案技术总监、大数据算法技术专家柴思远。他从理论结构、实战技巧、应用案例多个角度剖析大模型应用构建和指令工程,结合丰富的一手行业探索经验,带领观众深入了解ChatGLM的强大功能,帮助大家更好地理解和利用大语言模型及指令工程技巧,为企业找到适合的落地大模型产品技术方案。
一、构建大模型产品应用
大模型的出现,让原本需要大量标注才能解决的问题如信息抽取、内容生产等,不再需要其他团队的支持和标注,使得产品经理可以更专注思考客户画像,并且探索如何让大模型稳定地执行指令,从而快速达成应用的效果。首先,柴思远为大家介绍了大模型在企业中的应用场景,然后基于此分享了设计方案的技巧与核心方法,并通过具体案例深入剖析了大模型产品应用的设计流程。
基础知识
在To C场景下使用大模型,一般会根据反馈的内容不断地完善指令,从而让其输出更加满足需求的内容,此时大模型充当一个助理的角色。而在To B场景下使用大模型,当用户可能想要输出各种各样的内容给大模型这时,产品经理设计产品方案时需要注意引导用户完成有效的输入。比如当用户希望利用大模型写一首歌时,那么可以设计一个页面,让用户输入歌曲的主题、风格、情感、字数等等,这样可以使大模型有较好的产出。
在To C和To B场景下使用大模型的差别有三点:场景、指令、输出内容。对于场景,To C场景下,大模型是一个全能的助理,会根据提出的新要求不断提供新的内容;To B场景下,一般针对具象化的场景,围绕特定场景设计好输入,设计解决方案。对于指令,To C场景下需要探索指令,根据内容不断修正指令;To B场景下一般是工程化指令,围绕确定的场景,有稳定的输入评测集,在大模型上做工程化的指令方案,达到很好的评测效果,实现业务可用。针对输出内容:To C场景下自己可以调整和修改;在To B场景下能够与系统做交互,有稳定的格式和输出,与下游的系统或业务目标产生互动。
大模型在To B场景落地应用需要注意两点:首先,要嵌入到业务流程中,比如以按钮的形式实现大模型的内在功能(文本推理、生成);其次,重新分解业务目标,设计一套流程解决问题。
设计方案技巧
随后,柴思远为大家分享了设计方案的一些技巧。第一,管理用户输入,让模型和系统有效融合。通过这样的方式产品经理可以通过交互引导用户产生有效的输入;另一方面,指令工程师在完善指令效果的过程中也可以更好地完成指令开发。第二,管理用户的输出,善于利用Json与系统交互。产品经理可以设计一套通用的指令让大模型理解自然语言,有效将人类语言转化为设备可以操作的指令;第三,细化场景,拆分指令,让大模型更专注解决一类问题。产品经理明确定义大模型需要解决的主要任务或问题,将大任务分解成更小的子任务或子问题,每个子任务应该有明确定义的输入和输出,以便模型能够专注解决特定的问题。第四,借助外力,控制系统与大模型相结合。通过外部的控制系统与医疗知识图谱相结合,从而输出稳定有效的回答。第五,一边一边:多个大模型协同完成任务。第六,通过切片,解决长文本输入。
通过这些技巧,能够帮助在不同的企业应用下将大模型落地到原有的业务系统中,或者设计出新的业务系统去解决全新的问题。
设计方案的核心方法
由上述技巧可以总结,其中最核心的三个方法分别是流程图、评测标准、评测数据。流程图可以看作一个简化的产品需求,它可以更好地帮助大模型完成从业务工作到开发工作的认知转变。大模型的评测标准是达成可用率很重要的手段,它在早期是很难确定的,而是在迭代过程中逐渐产生的。评测数据需要配合评测标准的使用,它也可以帮助我们和用户进一步完善在需求方面的认知。
车险问答(对话)系统旨在通过自动化回答常见问题、提供实时支持、个性化建议和提高客户体验来改进车险业务。柴思远以具体的车险问答(对话)系统的案例构造了真实的应用场景,为大家详细介绍了基于大模型构建系统应用的流程。
指令工程(prompt Engineering)
指令工程能够桥接用户和大模型之间的语言交互,使复杂模型能够更有效地理解和响应用户的自然语言指令,拓宽了大模型应用的可能性。在这一部分,柴思远为大家介绍了指令的定义和特性、指令编写的原则和技巧以及指令应用过程中的注意要点。
大模型基础知识
大模型定义:大模型通常是一种概率模型,它们利用大规模参数和深度神经网络来建模复杂的概率分布,用于处理自然语言处理、计算机视觉和其他机器学习任务。
大模型的训练过程:基座模型通过大规模的无监督学习,例如自监督学习或预训练,从大量文本或图像数据中学习语言或视觉表示。指令模型通常是一个更小的模型,它用于与用户进行交互,接收自然语言指令或问题,并生成相应的答案或结果。指令模型通常在基座模型之上建立,它负责将用户的输入转化为基座模型能够理解的格式,然后生成响应。这两者协同工作,以实现用户友好的自然语言交互。
大模型的应用场景:这可以分为3类。第一种,信息从少到多,即文本生成,如广告文案生成、工作周报生成、简历撰写、智能问答等;第二种,信息从多到少,即文本提炼,如简历内容提取、指令提取、用户画像提取等;第三种,文本信息的转化,如代码生成,语言翻译等。
Prompt基础知识
"prompt"是一种预定义的文本或问题,用于引导大模型以特定方式生成响应,起到引导、约束和规范模型输出的作用。但是它会存在一些问题,如缺乏系统性,依赖个人经验、具有灵活性,不易修改,敏感性,不同模型间存在差异等。
指令工程
指令工程是指设计、开发和优化大模型与用户之间的自然语言交互,以有效引导和控制模型生成合理、符合期望的响应。但是,没有人可以直接写出满分指令,需要像训练算法模型一样不断优化指令,其中的迭代过程是非常重要的。
指令编写
编写指令需要遵循两个重要原则。一是清晰明确,指令应该是清晰和精确的,以确保模型能够准确理解用户的意图,还应该提供足够的上下文信息,使模型了解任务的背景和要求。二是给模型思考的时间,要考虑用户和模型的交互时间,允许模型在必要时进行适当的思考和计算。
指令中一般会包含上下文信息、指令本身、输入内容、输出格式与指引的要求。上下文可以提供任务或对话的背景信息,以便模型理解指令的语境和用户的意图。指令以简洁的方式描述用户的请求,精确表达用户希望模型执行的任务或操作。输入内容可以是文本、数字、图像、文件等,具体取决于任务的性质。输出指引说明用户期望从模型获得的结果或答案,指定期望的输出格式和性质,可以让模型生成合适的响应。
prompt技巧
在指令工程中,有六种常见的技巧,用于设计和优化模型的"prompt"以引导大型语言模型生成所需的响应。第一,zero-shot,它是一种用于向模型提供任务说明的技巧,模型在没有特定示例或训练数据的情况下执行任务;第二,few-shot,允许用户提供一些示例,以指导模型执行任务,通常包括问题或输入输出对;第三,思维链,通过在多个连续的模型请求中建立上下文,以在多轮对话中引导模型;第四,zero-shot cot,允许用户通过提供关于任务的一些信息和上下文,要求模型自动完成特定任务;第五,Temperature,是一种用于控制生成文本的多样性的参数较高的温度值会增加生成的随机性,而较低的温度值会使生成的文本更加确定性;第六,top-p参数,根据top-p参数,模型会考虑词汇表中概率最高的一部分词汇,从中选择下一个词,这有助于控制生成文本的多样性和可解释性。
prompt实战
在实际应用中,设计和编写prompt时需要考虑多个要素,以确保与大型语言模型的交互能够高效和准确地满足用户需求。
分隔符是用于在prompt中分隔不同部分或指令的特殊字符或标记。它有助于将指令和上下文、多个任务或示例等分开,以使模型更好地理解和处理每个部分。
分条目是一种将信息分成清晰、可读性更强的方式。它有助于大模型理解每个独立的任务,引导大模型按照指令顺序进行思考有助于开发者顺利任务的逻辑顺序,便于逐条编写测试以及迭代维护。
使用项目符号、编号或其他分隔方式来列出多个相关事项或示例,有助于模型理解和处理这些信息。
注入相关数据,是指在指令中包含有关任务的附加信息、知识或引用表格、数据库等数据源。这有助于模型更准确地执行任务,它可以利用这些信息来生成响应。
格式化输出,明确要求模型以特定格式返回结果,包括表格、图表、文件格式等,有助于确保模型生成的响应符合用户的预期。
顺势而为,根据模型的回应来进一步引导对话,而不是僵化地坚持一成不变的指令。这有助于避免非常识的逻辑,以及使对话更具交互性和连贯性。当用户的请求无法满足时,指令中应该包含明确的回退或“无”选项,以指示模型无法执行某些任务,防止模型生成虚假或误导性的答案。
最后,柴思远以教学场景中从文章中抽取信息的实例讲述了真实指令生产和迭代的过程,在这个过程中我们需要不断地去完善指令,希望它能尽可能达到较高的评测水平。
往期精彩文章推荐
关注我们 记得星标
关于AI TIME
AI TIME源起于2019年,旨在发扬科学思辨精神,邀请各界人士对人工智能理论、算法和场景应用的本质问题进行探索,加强思想碰撞,链接全球AI学者、行业专家和爱好者,希望以辩论的形式,探讨人工智能和人类未来之间的矛盾,探索人工智能领域的未来。
迄今为止,AI TIME已经邀请了1400多位海内外讲者,举办了逾600场活动,超600万人次观看。
我知道你
在看
哦
~
点击 阅读原文 查看回放!