LlamaIndex框架 AI模型应用开发专用语的浅薄理解
AI模型应用开发时,对一些关键专用语的个人理解。
当学AI模型应用技术开发的时候,多多少少会有些人疑惑 prompt,rag,agent,workflow(工作流)之间的区别和关系,以及如何如何使用。
下面我就逐个分享下个人的浅薄理解:
Prompt (提示词)
prompt,中文意为提示词,提示词分2种,一种是系统提示词,一种是用户输入的提示词。系统提示词总是在会话的第一条记录,主要定义大致的沟通规则,如最经典的就是“你是一个助手,帮助用户解决问题”,这也是一个提示词,至于这个提示词是用户(user)提示词还是系统(system)提示词,这就要看发起人是谁了。
RAG (知识库/检索增强生成)
rag,这里是称为知识库,一般需要结合向量数据库来进行使用。在使用rag知识库之前,需要使用向量embedding模型,将一些知识通过各种方式抽离,经过模型转换为向量,存入向量数据库中。在使用时常根据用户输入的内容,进行语义级别的模糊搜索向量数据库,然后经过召回一定的记录数据,经过重排序流程后,将其与用户的输入一起放到提示词模板里,发送到大模型,之后的大模型回应的信息显示给用户。
Agent (智能体/代理)
agent,这里称为智能体或代理。为什么叫智能体呢,因为这个智能体会使用工具,使用名为function calling(简称FC)的工具,在用户的问题发送给大模型后,由大模型判断是否需要调用工具,如果需要调用工具的话,就会响应对应fc名称和参数,程序获取到工具结果之后,再发给大模型,得到最终响应展示给用户。
Workflow (工作流)
workflow,应该是称为工作流吧。因为如果agent负责太多任何的话,如计划拆解,工具调用等等各种操作,都放到单个Agent处理的话,这会导致模型的思考内容过多,又因为模型上下文有限,并且一个智能体做太多事的话,容易忘了细节和原来的目的。
所以搞出了工作流,大白话就是你看,原本的开发程序需要经历,调研,原型,UI,前、后端开发,运维等等不同阶段的人,每个流程的输入和输出的任务直接明了,现在呢,如果上边的你全干,你还能依旧记的清晰每件事吗?肯定是不能的。
所以这不搞出了工作流,还能省调其他任务的思考的内容,只关注输入和输出。
我个人理解的工作流的的工作方式,就用以下简短的例子进行说明。
假设有 写作大模型,审查大模型,工具大模型。
用户提交的问题,交给工具大模型,根据自己的工具整理 用户问题 的相关资料,然后这些内容交给 写作大模型,写作大模型写报告内容,写完之后,交给 审查大模型,这个大模型检查是否有错字不连贯,文章资料等等异常问题后,整理成清单和改进的建议,交给写作大模型,写作大模型写完之后再把报告内容交给审查大模型,如果没有问题并且可以响应给用户的话,就直接给用户输出展示报告的内容了。
你如果看过llamaindex的教程,你应该会感觉到熟悉,没错,就是那里面的工作流Agent章节的教程内容。

浙公网安备 33010602011771号