当前位置: 首页 > news >正文

财经类 直播类网站开发网站开发 书籍

财经类 直播类网站开发,网站开发 书籍,网站开发的技术内容,怎么网络推广自己业务随着大语言模型效果明显提升#xff0c;其相关的应用不断涌现呈现出越来越火爆的趋势。其中一种比较被广泛关注的技术路线是大语言模型#xff08;LLM#xff09;知识召回#xff08;Knowledge Retrieval#xff09;的方式#xff0c;在私域知识问答方面可以很好的弥补通…随着大语言模型效果明显提升其相关的应用不断涌现呈现出越来越火爆的趋势。其中一种比较被广泛关注的技术路线是大语言模型LLM知识召回Knowledge Retrieval的方式在私域知识问答方面可以很好的弥补通用大语言模型的一些短板解决通用大语言模型在专业领域回答缺乏依据、存在幻觉等问题。其基本思路是把私域知识文档进行切片然后向量化后续通过向量数据库检索进行召回再作为上下文输入到大语言模型进行归纳总结。 在这个技术方向的具体实践中知识库可以采取基于倒排和基于向量的向量数据库两种索引方式进行构建它对于知识问答流程中的知识召回这步起关键作用和普通的文档索引或日志索引不同知识的向量化需要借助深度模型的语义化能力、存在文档切分、向量数据模型部署推理等额外步骤。知识向量化建库即向量数据库过程中不仅仅需要考虑原始的文档量级还需要考虑切分粒度向量维度等因素最终被向量数据库索引的知识条数可能达到一个非常大的量级可能由以下两方面的原因引起 1.各个行业的既有文档量很高如金融、医药、法律领域等新增量也很大。 2.为了召回效果的追求对文档的切分常常会采用按句或者按段进行多粒度的冗余存贮。 这些细节对知识向量数据库的写入和查询性能带来一定的挑战为了优化向量化知识库的构建和管理本文基于亚马逊云科技的服务构建了如下图的知识库构建流程 1.通过 S3 Bucket 的 Handler 实时触发 Amazon Lambda 启动对应知识文件入库的 Amazon Glue job 2.Glue Job 中会进行文档解析和拆分并调用 Amazon Sagemaker 的 Embedding 模型进行向量化 3.通过 Bulk 方式注入到 Amazon OpenSearch 中去。 并对整个流程中涉及的多个方面包括如何进行知识向量化、向量数据库调优总结了一些最佳实践和心得。 知识向量化即向量数据库的原始步骤的前置步骤是进行知识的拆分语义完整性的保持是最重要的考量。分两个方面展开讨论。该如何选用以下两个关注点分别总结了一些经验 a. 拆分片段的方法 关于这部分的工作Langchain 作为一种流行的大语言模型集成框架提供了非常多的 Document Loader 和 Text Spiltters其中的一些实现具有借鉴意义但也有不少实现效果是重复的。 目前使用较多的基础方式是采用 Langchain 中的 RecursiveCharacterTextSplitter属于是 Langchain 的默认拆分器。它采用这个多级分隔字符列表 – [“\n\n” “\n” ” “ “”] 来进行拆分默认先按照段落做拆分如果拆分结果的 chunk_size 超出再继续利用下一级分隔字符继续拆分直到满足 chunk_size 的要求。 但这种做法相对来说还是比较粗糙还是可能会造成一些关键内容会被拆开。对于一些其他的文档格式可以有一些更细致的做法。 FAQ 文件必须按照一问一答粒度拆分后续向量化的输入可以仅仅使用问题也可以使用问题答案本系列 blog 的后续文章会进一步讨论 Markdown 文件”#”是用于标识标题的特殊字符可以采用 MarkdownHeaderTextSplitter 作为分割器它能更好的保证内容和标题对应的被提取出来。 PDF 文件会包含更丰富的格式信息。Langchain 里面提供了非常多的 Loader但 Langchain 中的 PDFMinerPDFasHTMLLoader 的切分效果上会更好它把 PDF 转换成 HTML通过 HTML 的 div 块进行切分这种方式能保留每个块的字号信息从而可以推导出每块内容的隶属关系把一个段落的标题和上一级父标题关联上使得信息更加完整。类似下面这种效果。 b. 模型对片段长度的支持 由于拆分的片段后续需要通过向量化模型进行推理所以必须考虑向量化模型的 Max_seq_length 的限制超出这个限制可能会导致出现截断导致语义不完整。从支持的 Max_seq_length 来划分目前主要有两类 Embedding 模型如下表所示这四个是有过实践经验的模型。 这里的 Max_seq_length 是指 Token 数和字符数并不等价。依据之前的测试经验前三个模型一个 token 约为 1.5 个汉字字符左右。而对于大语言模型如 chatglm一个 token 一般为 2 个字符左右。如果在切分时不方便计算 token 数也可以简单按照这个比例来简单换算保证不出现截断的情况。 前三个模型属于基于 Bert 的 Embedding 模型OpenAI 的 text-embedding-ada-002 模型是基于 GPT3 的模型。前者适合句或者短段落的向量化后者 OpenAI 的 SAAS 化接口适合长文本的向量化但不能私有化部署。 可以根据召回效果进行验证选择。从目前的实践经验上看 text-embedding-ada-002 对于中文的相似性打分排序性可以但区分度不够集中 0.7 左右不太利于直接通过阈值判断是否有相似知识召回。 另外对于长度限制的问题也有另外一种改善方法可以对拆分的片段进行编号相邻的片段编号也临近当召回其中一个片段时可以通过向量数据库的 range search 把附近的片段也召回回来也能保证召回内容的语意完整性。 我们上面提到四个向量数据库模型只是提到了模型对于文本长度的支持差异效果方面目前并没有非常权威的结论。可以通过 leaderboard 来了解各个模型的性能榜上的大多数的模型的评测还是基于公开数据集的 benchmark对于真实生产中的场景 benchmark 结论是否成立还需要 case by case 地来看。但原则上有以下几方面的经验可以分享 经过垂直领域 Finetune 的模型比原始向量模型有明显优势 目前的向量化模型分为两类对称和非对称。未进行微调的情况下对于 FAQ 建议走对称召回也就是 Query 到 Question 的召回。对于文档片段知识建议使用非对称召回模型也就是 Query 到 Answer文档片段的召回 没有效果上的明显的差异的情况下尽量选择向量维度短的模型高维向量如 openai 的 text-embedding-ada-002会给向量数据库造成检索性能和成本两方面的压力。 更多的内容会在本系列的召回优化部分进行深入讨论。 真实的业务场景中文档的规模在百到百万这个数量级之间。按照冗余的多级召回方式对应的知识条目最高可能达到亿的规模。由于整个离线计算的规模很大所以必须并发进行否则无法满足知识新增和向量检索效果迭代的要求。步骤上主要分为以下三个计算阶段。 文档切分并行 计算的并发粒度是文件级别的处理的文件格式也是多样的如 TXT 纯文本、Markdown、PDF 等其对应的切分逻辑也有差异。而使用 Spark 这种大数据框架来并行处理过重并不合适。使用多核实例进行多进程并发处理则过于原始任务的观测追踪上不太方便。所以可以选用 Amazon Glue 的 Python shell 引擎进行处理。主要有如下好处 1.方便的按照文件粒度进行并发并发度简单可控。具有重试、超时等机制方便任务的追踪和观察日志直接对接到 Amazon CloudWatch 2.方便的构建运行依赖包通过参数–additional-python-modules 指定即可同时 Glue Python 的运行环境中已经自带了 opensearch_py 等依赖。 可参考如下代码 注意Amazon Glue 每个账户默认的最大并发运行的 Job 数为 200 个如果需要更大的并发数需要申请提高对应的 Service Quota可以通过后台或联系客户经理。 向量化推理并行 由于切分的段落和句子相对于文档数量也膨胀了很多倍向量数据库模型的推理吞吐能力决定了整个流程的吞吐能力。这里采用 SageMaker Endpoint 来部署向量化模型一般来说为了提供模型的吞吐能力可以采用 GPU 实例推理以及多节点 Endpoint/Endpoint 弹性伸缩能力Server-Side/Client-Side Batch 推理能力这些都是一些有效措施。具体到离线向量知识库构建这个场景可以采用如下几种策略 GPU 实例部署 向量化模型 CPU 实例是可以推理的。但离线场景下推理并发度高GPU 相对于 CPU 可以达到 20 倍左右的吞吐量提升。所以离线场景可以采用 GPU 推理在线场景 CPU 推理的策略。 多节点 Endpoint 对于临时的大并发向量生成通过部署多节点 Endpoint 进行处理处理完毕后可以关闭*注意离线生成的请求量是突然增加的Auto Scaling 冷启动时间 5-6 分钟会导致前期的请求出现错误* 利用 Client-Side Batch 推理 离线推理时Client-side batch 构造十分容易。无需开启 Server-side Batch 推理一般来说 Sever-side batch 都会有个等待时间如 50ms 或 100ms对于推理延迟比较高的大语言模型比较有效对于向量化推理则不太适用。可以参考如下代码 OpenSearch 批量注入 Amazon OpenSearch 的写入操作在实现上可以通过 bulk 批量进行比单条写入有很大优势。参考如下代码
http://www.dnsts.com.cn/news/76626.html

相关文章:

  • 高新建设网站电话上海注册公司引流v信xiala5
  • 介绍自己做的网站开发公司 工程管理中存在问题
  • 做app布局参考哪个网站徐州网站设计网
  • html5单页网站模板昆明建网站要多少钱
  • WordPress图片生成文章网站分析与优化
  • qq群推广用什么网站好网页源代码里哪个是视频链接
  • 移商网站建设网站开发售后服务能力
  • 如何做网站预览大连金州旅游景点有哪些
  • 免费的网站域名查询佛山搜索引擎优化
  • 文件外链网站公众号可以做自己网站的超链接
  • 网站建设财务计划与预测金华网站建设哪里好
  • 纯前端网站怎么做rest一个人做网站好难
  • 承德做网站公司中山seo外包
  • 网站建设的征求意见稿教学互动网站开发背景
  • wordpress插件感应侧边栏福州seo网站推广
  • 南京网站设计建设推荐酒店网站建设方案书
  • 学校网站网页建设开题报告书网站技术防护建设
  • 一万并发量的视频网站建设yy直播是干什么的
  • 专业开发网站建设哪家好seo优化销售
  • 九江专业制作网站小程序郑州电力高等专科学校2021录取分数线
  • 网站建设好吗网站怎么做微信接口
  • 专做美容师招聘网站安徽网站seo
  • 网站首页404德州市建设街小学网站首页
  • 网站怎么做中英文交互手工蛋糕网站开发报告
  • 上的网站app网站怎么接广告赚钱
  • 网站建设优化的作用企业163邮箱怎么申请
  • 地方门户网站源码php一键建站
  • 郑州个人网站开发中国产品网免费网站
  • 东莞网站建设制作软件硬件开发文档模板
  • 2015做微网站多少钱杭州工程建设网