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

如何建设简易网站建设网站赚钱吗

如何建设简易网站,建设网站赚钱吗,360推广登录入口,上海高端网站定制开发本文首发于博客 LLM 应用开发实践 随着 LangChain LLM 方案快速普及#xff0c;知识问答类应用的开发变得容易#xff0c;但是面对回答准确度要求较高的场景#xff0c;则暴露出一些局限性#xff0c;比如向量查询方式得到的内容不匹配#xff0c;LLM 对意图识别不准。所…本文首发于博客 LLM 应用开发实践 随着 LangChain LLM 方案快速普及知识问答类应用的开发变得容易但是面对回答准确度要求较高的场景则暴露出一些局限性比如向量查询方式得到的内容不匹配LLM 对意图识别不准。所以 LlamaIndex(也称为 GPT Index)由社区顺势推出是一个开发者友好的接口它将外部数据连接到 LLM提供了一系列工具来简化流程包括可以与各种现有数据源和格式(如 api、pdf、文档和 SQL 等)集成的数据连接器极大的改善了上述问题。本文译自 LlamaIndex: How to Use Index Correctly翻译内容并非原版无对照翻译有所增减。 LlamaIndex索引 列表索引 它对于综合跨多个数据源的信息的答案非常有用 列表索引是一种简单的数据结构其中节点按顺序存储。在索引构建期间文档文本被分块、转换为节点并存储在列表中。 在查询期间如果没有指定其他查询参数LlamaIndex只是将列表中的所有node加载到Response Synthesis模块中。 列表索引提供了许多查询列表索引的方法从基于嵌入的查询中获取前k个邻居或者添加一个关键字过滤器如下所示: LlamaIndex为列表索引提供Embedding支持。除了每个节点存储文本之外每个节点还可以选择存储Embedding。在查询期间我们可以在调用LLM合成答案之前使用Embeddings对节点进行最大相似度检索。 在索引构建过程中LlamaIndex不会生成Embedding而是在查询时生成这种设计避免了在索引构建期间为所有文本块生成Embeddings这可能会导致大量数据的开销。 向量存储索引 它是最常见且易于使用的允许对大型数据语料库回答查询 默认情况下GPTVectorStoreIndex 使用内存中的 SimpleVectorStore作为默认存储上下文的一部分初始化基于向量存储的索引在索引构建期间生成Embeddings 树状索引 它对总结一组文件很有用 树状索引是树结构索引其中每个节点是子节点的摘要。在索引构建期间树以自下而上的方式构建直到我们最终得到一组根节点。树状索引从一组节点(成为该树中的叶节点)构建层次树。 查询树状索引涉及从根节点向下遍历到叶节点。默认情况下(child_branch_factor1 )查询在给定父节点的情况下选择一个子节点。如果child_branch_factor2则查询在每个级别选择两个子节点。 为了在查询期间构建树状索引我们需要将retriver_mode和response_mode添加到查询引擎并将GPTTreeIndex中的build_tree参数设置为False index_light GPTTreeIndex.from_documents(documents, build_treeFalse) query_engine index_light.as_query_engine(retriever_modeall_leaf,response_modetree_summarize, ) query_engine.query(What is net operating income?)关键词表索引 他对于将查询路由到不同的数据源非常有用 关键字表索引从每个Node提取关键字并构建从每个关键字到该关键字对应的Node的映射。 在查询时从查询中提取相关关键字并将其与预提取的Node关键字进行匹配获取相应的Node。提取的节点被传递到响应合成模块。 GPTKeywordTableIndex- 使用LLM从每个文档中提取关键字这意味着它确实需要在构建期间调用LLM GPTSimpleKeywordTableIndex- 使用regex关键字提取器从每个文档中提取关键字在构建期间不会调用LLM 可组合性图索引 它对于构建知识图谱很有用 使用LlamaIndex您可以通过在现有索引之上构建索引来创建复合索引。该特性使您能够有效地索引完整的文档层次结构并为GPT提供量身定制的知识。 通过利用可组合性可以在多个级别定义索引例如为单个文档定义低级索引为文档组定义高级索引。考虑下面的例子: 可以为每个文档中的文本创建树索引。生成一个列表索引涵盖所有的树索引为整个文档集合。 通过一个场景来演示可组合性图索引的能力: 从多个文档创建树索引从树索引生成摘要接下来在3个树索引的顶部创建一个列表索引的图因为列表索引适合于合成跨多个数据源组合信息的答案最后查询图 from llama_index.indices.composability import ComposableGraphfrom langchain.chat_models import ChatOpenAI from llama_index import LLMPredictor# setting up vector indicies for each year service_context ServiceContext.from_defaults(chunk_size_limit512) index_set {} for year in years:storage_context StorageContext.from_defaults()cur_index GPTVectorStoreIndex.from_documents(documentsdoc_set[year],service_contextservice_context,storage_contextstorage_context)index_set[year] cur_index# store index in the local env, so you dont need to do it over againstorage_context.persist(f./storage_index/apple-10k/{year})# define an LLMPredictor set number of output tokens llm_predictor LLMPredictor(llmChatOpenAI(temperature0, max_tokens512, model_namegpt-3.5-turbo)) service_context ServiceContext.from_defaults(llm_predictorllm_predictor) storage_context StorageContext.from_defaults()\## define a list index over the vector indicies ## allow us to synthesize information across each index index_summary [index_set[year].as_query_engine().query(Summary this document in 100 words).response for year in years] graph ComposableGraph.from_indices(GPTListIndex,[index_set[y] for y in years],index_summariesindex_summary,service_contextservice_context,storage_contextstorage_context )root_id graph.root_id#save to disk storage_context.persist(f./storage_index/apple-10k/root)## querying graph custom_query_engines {index_set[year].index_id: index_set[year].as_query_engine() for year in years }query_engine graph.as_query_engine(custom_query_enginescustom_query_engines )response query_engine.query(Outline the financial statement of Q2 2023) response.responsePandas索引和SQL索引 它对结构化数据很有用 from llama_index.indices.struct_store import GPTPandasIndex import pandas as pddf pd.read_csv(titanic_train.csv)index GPTPandasIndex(dfdf)query_engine index.as_query_engine(verboseTrue ) response query_engine.query(What is the correlation between survival and age?, )文档摘要索引 这是一个全新的LlamaIndex数据结构它是为了问答而制作的。 通常大多数用户以以下方式开发基于LLM的QA系统: 获取源文档并将其分成文本块。然后将文本块存储在矢量数据库中。在查询期间通过使用相似度和/或关键字过滤器进行Embedding来检索文本块。执行整合后的响应。 然而这种方法存在一些影响检索性能的局限性 文本块没有完整的全局上下文这通常限制了问答过程的有效性。需要仔细调优top-k /相似性分数阈值因为过小的值可能会导致错过相关上下文而过大的值可能会增加不相关上下文的成本和延迟。Embeddings可能并不总是为一个问题选择最合适的上下文因为这个过程本质上是分别决定文本和上下文的。 为了增强检索结果一些开发人员添加了关键字过滤器。然而这种方法有其自身的挑战例如通过手工或使用NLP关键字提取/主题标记模型为每个文档确定适当的关键字以及从查询中推断正确的关键字。 这就是 LlamaIndex 引入文档摘要索引的原因它可以为每份文档提取非结构化文本摘要并编制索引从而提高检索性能超越现有方法。该索引比单一文本块包含更多信息比关键字标签具有更多语义。它还允许灵活的检索包括基于 LLM 和嵌入的方法。在构建期间该索引接收文档并使用 LLM 从每个文档中提取摘要。在查询时它会根据摘要使用以下方法检索相关文档 基于 LLM 的检索获取文档摘要集合并请求 LLM 识别相关文档相关性得分基于嵌入的检索利用摘要嵌入相似性来检索相关文档并对检索结果的数量施加顶k限制。 文档摘要索引的检索类为任何选定的文档检索所有节点而不是在节点级返回相关块。 知识图谱索引 它通过在一组文档中提取知识三元组主语、谓语、宾语来建立索引。 在查询时它既可以只使用知识图谱作为上下文进行查询也可以利用每个实体的底层文本作为上下文进行查询。通过利用底层文本我们可以针对文档内容提出更复杂的查询。 索引成本和索引时间 索引的成本是一个需要考虑的重要因素在处理海量数据集时这一点尤为重要。索引速度整个解决方案的运行准备时间。索引时间各不相同但都是一次性的通常 40 页的 PDF 文件大约需要 5 秒钟。试想一下如果一个庞大的数据集超过 10 万页可能需要几天时间可以利用异步方法来缩短索引时间。 更多内容在公号LLM 应用全栈开发
http://www.zqtcl.cn/news/556394/

相关文章:

  • 建设网站呼叫中心有什么好处站长统计免费下载
  • 做网站电脑配置要求个高吗电子商务网站的建设包含哪些流程图
  • 青岛做网站大公司wordpress文章页加一言
  • 用哪个网站做相册视频文件夹谷歌ads
  • 注册top域名做公司网站男女做暖网站是什么
  • 郴州本地网站建设高端网站设计多少钱
  • 此网站域名即将过期广告制作属于什么行业
  • 牛牛襄阳网站建设wap网站asp源码
  • 信用网站建设招标书建网站需要什么手续
  • 重庆建网站方法网站开发和维护
  • 做网站需要什么人活动策划流程及细节
  • wordpress企业网站seo上海市
  • 北京建外贸网站公司网络域名是什么
  • 聚美优品网站建设方案上市公司的信息网站
  • 济南做网站比较好的公司知道吗为什么做美食视频网站
  • 药店网站源码宣传方式
  • word如何做网站链接淘宝客建站需要多少钱
  • 凡科网免费建站步骤及视频logo设计网页
  • 天梯网站建设软件开发公司职位
  • 建站公司外贸东方购物网上商城
  • 白银做网站企业免费网站模板
  • 网络公司给我们做的网站_但是我们不知道域名是否属于我们湖北正规网站建设质量保障
  • 本地网站asp iis团队展示网站
  • 企业网站管理系统cmswordpress知识管理系统
  • 创建一个网站需要怎么做销售平台公司
  • 网站域名实名认证吗做斗图的网站
  • 公司在兰州要做网站怎样选择做网站数据库表各字段详情
  • 营销型网站建设的要素搭建本地网站
  • 深圳网站建设V芯ee8888ewordpress瀑布流主 #65533;
  • 股票交易网站开发angular2做的网站有