《LLM的新技术与新实践-王元.pdf》由会员分享,可在线阅读,更多相关《LLM的新技术与新实践-王元.pdf(34页珍藏版)》请在三个皮匠报告上搜索。
1、Agent新技术新实践王元 CEngLLM出圈了ChatGPT技术内核:生成式AI本次分享,AI Agent时代下的新方法和新实践聊技术前,先捋捋场景私域问答机器人无代码数据分析与报表文档智能/企业内网搜索UI-交互式;后台-多轮UI-交互式;后台-多轮UI-线性执行;后台-单/多轮新的技术栈私域数据角色框架多模态语义缓存测试问题私域数据问题:如何接入私域数据?私域数据常常大于LLM原生的context length全量放入context可能不是最优方式步骤:私域数据的分割,存入向量数据库;向量数据库召回,召回结果作为LLM的context;私域数据-分割考量:分割颗粒度召回准确率和速度维护成
2、本数据接入M个文件N个embeddings分割策略:分隔符 均匀分割 树结构私域数据-召回考量:满足上下文长度信息不丢失语义流畅召回querycontext+queryLLMN个embeddings1个context召回策略:顺序拼接 重排序拼接 摘要 混合私域数据-召回检索排序生成Model私域数据-评估传统检索指标:MRRNDCG等端到端:答案与标准答案的相似度LLM-无需标注(RAGAS):上下文与问题的相关性上下文与问题的相关性答案与上下文的相关性答案与问题的相关性私域数据-经验召回方法,分割大小,top-K是影响性能的主要超参向量空间的语义搜索,有时会有不靠谱的情况结合传统文字BM2
3、5搜索会带来一些帮助召回数据排序,decoder-only比encoder-decoder更敏感把query同时放在召回数据前和后,有助于LLM回答召回可以有更多的考量维度,不仅限于语义相似度角色框架给LLM加上方法论:了解背景任务拆分,逐个击破自省行动(感知和改变环境)基础模块:角色设定规划模块内存模块动作模块角色框架-优势Agent机制的好处:提升LLM处理复杂任务的能力,扩大了应用范围将LLM从无状态变为有状态;缓解context length有限的外部框架;赋予LLM自主调用外部工具的能力;使LLM获得拆解任务的思维,将复杂问题分拆逐个解决;简化手写FSM;多个agent相互合作成为可
4、能,即群体智慧(multi-agent)角色框架角色框架角色框架-规划开环系统:i步的执行结果不影响不影响i+1步的规划 LLMprompt+querystep 1answerstep nLLMprompt+querystep 1answerstep nstep 1step nCOTCOT-SCReWOOLLMprompt+querystep 1answerstep nLLMLLM角色框架-规划闭环系统:i步的执行影响影响i+1步的规划多轮调用LLM使用外部工具(tools)内存使用LLMInit prompt+queryanswerToolsMemoryEnvironment角色框架-规划一
5、些代表性的闭环系统:Self-Ask:COT+follow-up Q+toolsReAct:局部plan 执行 观察Plan-n-Solve:全局plan+ReActReflextion:群体智能雏形(3个LLM)角色框架-内存内存种类:短期记忆(上下文),长期记忆(向量数据库)内存形式:向量,字符串(text/json/list),数据库内存召回指标:相关性,时效性,重要性内存写入:append,去重,覆写(overflow或者简化)角色框架-行动函数类型:人类函数,LLM函数函数选择:类似RAG检索函数入参提取:string-json函数返回值:string json/xml角色框架-性能
6、评估主观评估:人类打分;图灵测试;数据评估:端到端任务指标,KIE准确率,回答GT相似度;经典数据集:Alfworld,HotpotQA,FEVER,HumanEvalbenchmark:AgentBench,ToolBench等multi-task集合系统评估:报错次数平均LLM calls迭代轮次(耗时)角色框架-经验一些尝试:ReActPlan-n-ExecuteSelf-Ask一些思考:Plan-n-Execute ReAct Self-Ask工具选择有时会错 工具list最好不要固定一个顺序中间结果生成有时会错 GPT4 turbo会改善现实情