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

个人网页制作模板教程全国seo公司排名

个人网页制作模板教程,全国seo公司排名,深圳坪山比亚迪,福州短视频seo平台生成式AI技术很强大#xff0c;但它们受到知识的限制。 虽然像 ChatGPT 这样的LLM可以执行许多任务#xff0c;但每个LLM的基线知识都存在基于其训练数据的差距。 如果你要求LLM写一些关于最近趋势或事件的文章#xff0c;LLM不会知道你在说什么#xff0c;而且回答最好是混…生成式AI技术很强大但它们受到知识的限制。 虽然像 ChatGPT 这样的LLM可以执行许多任务但每个LLM的基线知识都存在基于其训练数据的差距。 如果你要求LLM写一些关于最近趋势或事件的文章LLM不会知道你在说什么而且回答最好是混合的坏的情况下往往还是有问题的。 LLM基于知识的问题归结为两个关键问题 LLM 训练数据往往无可救药地过时截至撰写本文时ChatGPT 的世界知识将于 2022 年 1 月结束不包括使用 Bing 浏览和 GPT-4V 等提供额外上下文的功能。LLM在无法获得事实的情况下进行推断因此当他们的知识存在差距时称为幻觉他们会自信地做出虚假但听起来合理的陈述。 在线工具推荐 Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器  检索增强生成 (RAGRetrieval Augmented Generation) 是一种有助于解决这两个问题的策略它将信息检索与一组精心设计的系统提示相结合将LLM锚定在从外部知识存储检索的精确、最新和相关信息上。 尽管LLM训练数据保持静态但利用这种背景知识提示LLM可以创建需要对事实进行深入且不断发展的理解的特定领域应用程序。 你可以问LLM“什么是 RAG”根据LLM本身是否使用 RAG可能会得到截然不同的答案 “RAG是什么” 有RAG的LLM响应 RAG检索增强生成是 Meta AI 研究人员引入的一种方法它将信息检索组件与文本生成器模型相结合以解决知识密集型任务。 可以有效地修改其内部知识而无需重新训练整个模型。 您想了解更多详细信息吗 “RAG是什么” 没有 RAG 的LLM响应 根据上下文RAG 可以指多种不同的事物。 以下是一些常见的含义 1. 红色、琥珀色、绿色 (RAG)在项目管理和报告中RAG 是一种颜色编码系统用于快速传达项目或任务的状态或运行状况。 2. RAG分析这是一种用于风险评估或决策的方法。 它涉及根据风险或选项的严重程度、影响或可取性将其分类为红色、琥珀色或绿色。 它有助于优先考虑行动或选择。 3. 随机访问生成器 (RAG)在某些技术背景下RAG 可能指生成随机访问模式或数据的系统或算法通常用于计算机科学或信息检索。 4.资源分配图RAG在操作系统和计算机科学的背景下资源分配图用于死锁检测。 它是一个有向图表示系统中进程之间的资源分配和请求关系。 如果你有特定的上下文或领域请提供更多详细信息我可以在该上下文中为你提供有关“RAG”的更准确的解释。 使用和不使用 RAG 来回答这个问题有很大区别。 特别是在涉及特定领域知识如首字母缩略词的情况下RAG 可以极大地提高LLM回答的准确性。 如果你与了解最近事件、了解用户特定信息或对某个主题比正常情况有更深入了解的聊天机器人进行过交互那么很可能在没有意识到的情况下与 RAG 进行了交互。 如果你看过有关“通过文档聊天”的教程那么这就是 RAG 最简单的版本。 LangChain 和 LlamaIndex 等框架使快速创建简单的知识感知应用程序成为可能从而实现了 RAG 的民主化。 我开发并实现了 Skyflow 内部的 LLM 应用程序包括使用 RAG 的系统。 由于 RAG 几乎无处不在并且不会很快消失因此了解 RAG 的基础知识以及当你想要将代码转移到生产环境时如何超越这些基础知识非常重要。 我邀请你学习我在 RAG 旅程中的经验这样你就不必经历艰难的摸索过程。 1、一个最小RAG示例 LangChain 提供了一个 RAG 最小但不是最简单形式的示例 from langchain.document_loaders import WebBaseLoader from langchain.indexes import VectorstoreIndexCreator loader WebBaseLoader(https://www.promptingguide.ai/techniques/rag) index VectorstoreIndexCreator().from_loaders([loader]) index.query(What is RAG?) 通过这五行代码我们得到了 RAG 的描述但代码是高度抽象的因此很难理解实际发生的情况我们获取网页的内容本示例的知识库。 我们处理源内容并将它们存储在知识库在本例中为矢量数据库中。我们输入一个提示LangChain从知识库中查找一些信息并将提示和知识库结果传递给LLM。 虽然此脚本有助于原型设计和理解使用 RAG 的主要节拍但它对于超越该阶段并不是那么有用因为你没有太多控制权。 让我们讨论一下实际执行的内容。 2、LLMRAG基本架构 由于完整的 LLM 应用程序架构相当大因此我们将仅考虑启用 RAG 的组件 编排层接收用户在任何关联元数据如对话历史记录中的输入与所有相关工具交互将提示发送给 LLM并返回结果。 编排层通常由 LangChain、Semantic Kernel 等工具组成并使用一些本机代码通常是 Python将它们编织在一起。检索工具是一组返回上下文的实用程序这些上下文通知用户提示并对用户提示进行响应。 该组包括知识库和基于 API 的检索系统。LLM 是你向其发送提示的大型语言模型。 它们可能由 OpenAI 等第三方托管也可能在你自己的基础设施中内部运行。 就本文而言你使用的具体模型并不重要。 在典型的LLM应用程序中你的推理处理脚本会根据需要连接到检索工具。 如果你正在构建基于 LLM 代理的应用程序则每个检索实用程序都会作为工具向你的代理公开。 从这里开始我们将只讨论典型的基于脚本的用法。 当用户触发你的推理流程时编排层会将必要的工具和 LLM 结合在一起以从你的检索工具中收集上下文并生成上下文相关的知情响应。 编排层处理所有 API 调用和特定于 RAG 的提示策略我们很快就会谈到。 它还执行验证例如确保你没有超出 LLM 的令牌限制这可能会导致 LLM 拒绝你的请求因为你在提示中填充了太多文本。 3、知识库检索 要查询数据你不仅需要数据还需要应用程序可以访问的格式。 对于基于 LLM 的应用程序这通常涉及向量存储 - 一个可以基于文本相似性而不是精确匹配进行查询的数据库。 将数据从源格式转换为矢量存储需要 ETL提取、转换、加载管道。 汇总源文档。 你需要收集希望可用于你的应用程序的任何内容。 对于我在 Skyflow 的私有LLM方面的工作这包括我们的产品文档、白皮书和博客文章但这可以轻松扩展到内部记录、规划文件等。清理文档内容。 如果有任何东西不应该对LLM提供者或你的应用程序的最终用户可见现在你有机会将其删除。 在此过程中删除个人身份信息 (PII)、机密信息和正在开发的内容。 此步骤之后剩下的任何内容对于后续训练和推理过程的所有阶段都将是可见的。 Skyflow GPT Privacy Vault 可以帮助你对文档内容进行去标识化以确保你的训练数据不含敏感信息。将文档内容加载到内存中。 Unstructed、LlamaIndex 和 LangChain 的文档加载器等工具可以将各种文档类型加载到你的应用程序中特别是非结构化内容。 无论是文本文档、电子表格、网页、PDF、Git 存储库还是数百种其他内容都可能有一个加载程序。 但要小心因为并非所有加载器都是一样的有些加载器比其他加载器加载更多的内容或上下文。 例如一个加载器可能从电子表格中的多个工作表加载内容而另一个加载器仅从第一个工作表加载内容。将内容分成块。 当你分割你的内容时你把它分成小的、一口大小的片段这些片段可以适应LLM提示同时保持意义。 有多种方法可以分割内容。 LangChain 和 LlamaIndex 都有可用的文本分割器默认情况下按空格字符和句子递归分割但你需要使用最适合你的内容的方法。 对于我的项目我发现用 Markdown 编写的文档即使使用 LangChain 的 Markdown 拆分器也会丢失太多上下文因此我编写了自己的拆分器根据 Markdown 的标题和代码块标记对内容进行分块。为文本块创建嵌入。 嵌入存储向量—一个文本块的相对位置以及与其他附近文本块的关系的数字表示。 虽然这很难想象但庆幸的是创建嵌入很容易。 OpenAI 提供嵌入模型LangChain 和 LlamaIndex 提供各种托管或自托管嵌入选项或者您也可以使用 SentenceTransformers 等嵌入模型自行完成。将嵌入存储在向量存储中。 获得嵌入后你可以将它们添加到矢量存储中例如 Pinecone、Weaviate、FAISS、Chroma 或众多其他选项。 存储向量后你可以查询向量存储并查找与你的查询最相似的内容。 如果您需要更新或添加源文档大多数向量数据库都允许更新存储。 这意味着你还可以从矢量存储中删除内容这是微调模型时无法执行的操作。 你可以再次运行管道来重新创建整个知识库虽然这比重新训练模型成本更低但它仍然耗时且效率低下。 如果你希望定期更新源文档请考虑创建文档索引流程以便仅处理管道中的新文档和最近更新的文档。 4、基于API的检索 从向量存储中检索并不是唯一的检索类型。 如果你有任何允许编程访问的数据源客户记录数据库、内部票务系统等请考虑让你的编排层可以访问它们。 在运行时你的编排层可以查询基于 API 的检索系统以提供与当前请求相关的其他上下文。 5、使用 RAG 提示 设置好检索工具后就可以使用一些编排层魔法将它们编织在一起。 首先我们将从提示模板开始。 提示模板包含你想要作为提示的一部分传递给 LLM 的所有信息的占位符。 系统或基本提示符告诉LLM如何表现以及如何处理用户的请求。 一个简单的提示模板可能如下所示 System: You are a friendly chatbot assistant that responds in a conversational manner to users questions. Respond in 1-2 complete sentences, unless specifically asked by the user to elaborate on something. Use History and Context to inform your answers. --- History: {history} --- Context: {context} --- User: {request} 当你的最终用户提交请求时你就可以开始填写变量。 如果用户提交“什么是RAG”你可以填写请求变量。 你可能会随请求一起获得对话历史记录因此也可以填写该变量 System: You are a friendly chatbot assistant that responds in a conversational manner to users questions. Respond in short but complete answers unless specifically asked by the user to elaborate on something. Use History and Context to inform your answers. --- History: [{role: assistant, message: Hi! How can I help you?}] --- Context: {context} --- User: What is RAG? 接下来调用你的检索工具无论它们是矢量存储还是其他 API。 一旦你掌握了上下文知识库结果、客户记录等就可以更新上下文变量以便在推理过程中为 LLM 提供信息和基础。 注意如果你的 RAG 实施中包含多种类型的数据请确保对它们进行标记以帮助LLM区分它们。 System: You are a friendly chatbot assistant that responds in a conversational manner to users questions. Respond in short but complete answers unless specifically asked by the user to elaborate on something. Use History and Context to inform your answers. --- History: [{role: assistant, message: Hi! How can I help you?}] --- Context: [Document(page_contentMeta AI researchers introduced a method called [Retrieval Augmented Generation](https://ai.facebook.com/blog/retrieval-augmented-generation-streamlining-the-creation-of-intelligent-natural-language-processing-models/) (RAG) to address such knowledge-intensive tasks. RAG combines an information retrieval component with a text generator model. RAG can be fine-tuned and its internal knowledge can be modified in an efficient manner and without needing retraining of the entire model., metadata{source: https://www.promptingguide.ai/techniques/rag, title: Retrieval Augmented Generation (RAG)})] --- User: What is RAG? 上下文就位后提示模板已填写但你仍然有两个后处理任务需要完成 就像清理源数据一样你也需要清理提示。 即使你的数据是干净的用户也可以在其请求中输入 PII你且您不希望用户的信息最终出现在 LLM 操作员的日志或数据存储中。 如果你没有清理源数据这也可以作为一种保障。 除了对数据集和提示进行去识别化之外Skyflow GPT Privacy Vault 还可以在你向用户发送响应之前重新识别 LLM 响应中的敏感值。确保你没有超出LLM的令牌数量限制否则你的推理尝试将会失败。 在尝试推理之前请使用令牌计算器例如 tiktoken以确保你处于 LLM 特定的限制范围内。 你可能必须减少包含的上下文数量以适应令牌限制。 一旦你的提示被清理并在令牌限制内就可以通过将提示发送到你选择的LLM来执行推理。 当你收到响应时它应该根据你提供的上下文进行通知并且你可以将其发送回用户。 6、提高性能 现在你的应用程序中已经有了 RAG你可能希望立即投入生产。 还不做 或者你可能对所得到的结果并不那么兴奋。 不用担心你可以采取以下一些措施来提高 RAG 性能并做好生产准备 垃圾进垃圾出。 你提供的上下文质量越高收到的结果质量就越高。 清理源数据以确保数据管道维护足够的内容例如捕获电子表格列标题并确保删除不必要的标记以免干扰LLM对文本的理解。调整你的分块策略。 尝试不同的文本块大小以确保启用 RAG 的推理保持足够的上下文。 每个数据集都是不同的。 创建不同的分割向量存储看看哪一个最适合你的架构。调整你的系统提示。 如果LLM没有对你的上下文给予足够的重视请更新你的系统提示并期望如何处理和使用所提供的信息。过滤你的向量存储结果。 如果你想要或不想返回特定类型的内容请根据元数据元素值过滤矢量存储结果。 例如如果你需要一个流程可以根据 docType 元数据值进行筛选以确保你的结果来自操作文档。尝试不同的嵌入模型并微调自己的模型。 不同的嵌入模型有不同的编码和比较数据向量的方式。 进行实验看看哪一种最适合你的应用。 你可以在 MTEB 排行榜上查看当前性能最佳的开源嵌入模型。 如果喜欢冒险你还可以微调自己的嵌入模型以便你的 LLM 更加了解特定于领域的术语从而为你提供更好的查询结果。 是的你绝对可以使用清理和处理的知识库数据集来微调你的模型。 7、微调 在结束之前让我们先讨论另一个与 LLM 相关的流行语微调。 微调和 RAG 提供了两种不同的方法来优化 LLM。 虽然 RAG 和微调都利用源数据但它们都有独特的优势和需要考虑的挑战。 微调是一个继续使用附加数据训练模型的过程使其在数据集详细说明的特定任务和领域上表现更好。 然而单一模型不可能在所有方面都是最好的并且与微调任务无关的任务通常会随着额外的训练而降低性能。 例如微调是创建特定于代码的 LLM 的方式。 Google 的 Codey 在各种语言的代码示例精选数据集上进行了微调。 这使得 Codey 在编码任务方面的表现明显优于 Google 的 Duet 或 PaLM 2 模型但代价是聊天性能一般。 相反RAG 通过从外部知识库检索到的相关和当前信息来增强LLM。 这种动态增强使LLM能够克服静态知识的局限性并生成更明智、更准确且与上下文相关的响应。 然而外部知识的集成会增加计算复杂性、延迟和提示复杂性可能导致推理时间更长、资源利用率更高和开发周期更长。 RAG 在一个特定领域比微调效果要好遗忘。 当你微调模型时训练数据将成为模型本身的一部分。 你无法隔离或删除模型的特定部分。 LLM 不能忘记。 但是矢量存储允许你添加、更新和删除其内容因此你可以随时轻松删除错误或过时的信息。 微调和 RAG 一起可以创建专门针对特定任务或领域并能够使用上下文知识的 LLM 支持的应用程序。 考虑 GitHub Copilot它是一个经过微调的模型专门从事编码并使用你的代码和编码环境作为知识库为你的提示提供上下文。 因此Copilot 往往适应性强、准确且与你的代码相关。 另一方面Copilot 基于聊天的响应据说比其他模型需要更长的时间来处理并且 Copilot 无法协助完成与编码无关的任务。 8、结束语 RAG 代表了增强LLM能力的实用解决方案。 通过将实时外部知识集成到 LLM 响应中RAG 解决了静态训练数据的挑战确保所提供的信息保持最新且与上下文相关。 展望未来将 RAG 集成到各种应用程序中有望显着改善用户体验和信息准确性。 在当今时代及时了解最新动态至关重要RAG 提供了一种可靠的方法来让法学硕士了解情况并保持高效。 采用 RAG 的实用性使我们能够自信而精确地应对现代人工智能应用的复杂性。 原文链接检索增强生成架构剖析 - BimAnt
http://wiki.neutronadmin.com/news/442801/

相关文章:

  • 南乐网站开发美食网站建设的思路
  • 域名后缀cn做网站350模板网
  • 厦门企业网站公司网站开发人员考核指标
  • 郴州发布网系统优化因素
  • 安阳网站开发目前网络最好的挣钱平台
  • 加强门户网站建设的通知wordpress主题无法更换
  • 劳力士手表价格及图片 官方网站wordpress不买域名可以吗
  • 河南省住房和城乡建设厅二维码网站网站建设需要什么东西
  • 好看的网站模版做3个网站需要多大的服务器
  • 网站界面设计用户体验利用百度搜索自己的网站
  • 温州网站建网站分销系统
  • 苏州招聘网站制作青岛建设投资公司网站
  • 有趣的网站网址莱芜建设局网站
  • 建设信用卡秒批网站网站推广途径和方案
  • windows做网站的工具山西建设工程集团有限公司
  • 在哪个网站可以免费制作简历互联网公司用wordpress
  • 商业网站开发 流程集团网站建设多少钱
  • win7优化设置杭州优化外包哪里好
  • 网站被挂黑链竞价托管代运营
  • 快速建站全流程详细指导手册优秀网站建设平台
  • 撰写网站建设规划设计任务书网站备案最快要几天
  • vue.js做的网站国外做化工产品的网站
  • 四川代理网站建设的公司服务支持型网站
  • 购物网站页面设计步骤做营销策划要用到哪些网站
  • 需要上传视频的网站做网站流量怎么赚钱
  • flash网站制作教程 下载南京市溧水区建设局网站
  • 招商网站建设费用价格乐陵seo网站
  • 广州网站建设功能如何用自己网站做大电商
  • 南通旅游网站建设菏泽官方网站
  • 个人做电子商务网站备案龙江建站技术