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

建筑网官网登录入口上海单个关键词优化

建筑网官网登录入口,上海单个关键词优化,5118数据分析平台官网,徐州网站app开发本文为大家揭示 NebulaGraph 率先提出的 Graph RAG 方法#xff0c;这种结合知识图谱、图数据库作为大模型结合私有知识系统的最新技术栈#xff0c;是 LLM 系列的第三篇#xff0c;加上之前的图上下文学习、Text2Cypher 这两篇文章#xff0c;目前 NebulaGraph LLM 相关的… 本文为大家揭示 NebulaGraph 率先提出的 Graph RAG 方法这种结合知识图谱、图数据库作为大模型结合私有知识系统的最新技术栈是 LLM 系列的第三篇加上之前的图上下文学习、Text2Cypher 这两篇文章目前 NebulaGraph LLM 相关的文章一共有 3 篇。 Graph RAG 在第一篇关于上下文学习的博客中我们介绍过RAGRetrieval Argumented Generation这种基于特定任务/问题的文档检索范式中我们通常先收集必要的上下文然后利用具有认知能力的机器学习模型进行上下文学习in-context learning来合成任务的答案。 借助 LLM 这个只需要”说话“就可以灵活处理复杂问题的感知层只需要两步就能搭建一个基于私有知识的智能应用 利用各种搜索方式比如 Embedding 与向量数据库从给定的文档中检索相关知识。利用 LLM 理解并智能地合成答案。 而这篇博客中我们结合最新的探索进展和思考尝试把 Graph RAG 和其他方法进行比较说得更透一点。此外我们决定开始用 Graph RAG 这个叫法来描述它。 实际上Graph RAG是最先由我和 Jerry Liu 的直播研讨会讨论和相关的讨论的 Twitter Thread 中提到的差不多的内容我在 NebulaGraph 社区直播 中也用中文介绍过。 在 RAG 中知识图谱的价值 这部分内容我们在第一篇文章中阐述过比如一个查询“告诉我所有关于苹果和乔布斯的事”基于乔布斯自传这本书进行问答而这个问题涉及到的上下文分布在自传这本书的 30 页分块的时候传统的“分割数据Embedding 再向量搜索”方法在多个文档块里用 TOP-K 去搜索的方法很难得到这种分散细粒的完整信息。而且这种方法还很容易遗漏互相关联的文档块从而导致信息检索不完整。 除此之外在之后一次技术会议中我有幸和 leadscloud.com 的徐旭讨论之后他们因为有知识图谱的技术背景也做了和我们类似的探索和尝试让我意识到知识图谱可以减少基于嵌入的语义搜索所导致的不准确性。徐旭给出的一个有趣的例子是“保温大棚”与“保温杯”尽管在语义上两者是存在相关性的但在大多数场景下这种通用语义Embedding下的相关性常常是我们不希望产生的进而作为错误的上下文而引入“幻觉”。 这时候保有领域知识的知识图谱则是非常直接可以缓解、消除这种幻觉的手段。 用 NebulaGraph 实现 Graph RAG 一个简单的 Graph RAG 可以如下去简单实现 使用 LLM或其他模型从问题中提取关键实体根据这些实体检索子图深入到一定的深度例如2利用获得的上下文利用 LLM 产生答案。 对应的伪代码可能是这样 # 伪代码def _get_key_entities(query_str, llmNone ,with_llmTrue):...return _expand_synonyms(entities)def _retrieve_subgraph_context(entities, depth2, limit30):...return nebulagraph_store.get_relations(entities, depth, limit)def _synthesize_answer(query_str, graph_rag_context, llm):return llm.predict(PROMPT_SYNTHESIZE_AND_REFINE, query_str, graph_rag_context)def simple_graph_rag(query_str, nebulagraph_store, llm):entities _get_key_entities(query_str, llm)graph_rag_context _retrieve_subgraph_context(entities)return _synthesize_answer(query_str, graph_rag_context, llm)然而有了像 LlamaIndex 这样方便的 LLM 编排工具开发者可以专注于 LLM 的编排逻辑和 pipeline 设计而不用亲自处理很多细节的抽象与实现。 所以用 LlamaIndex我们可以轻松搭建 Graph RAG甚至整合更复杂的 RAG 逻辑比如 Graph Vector RAG。 在 LlamaIndex 中我们有两种方法实现 Graph RAG KnowledgeGraphIndex 只用来对任何私有数据从零构建知识图谱基于 LLM 或者其他语言模型再 4 行代码进行 Graph RAG graph_store NebulaGraphStore(space_namespace_name,edge_typesedge_types,rel_prop_namesrel_prop_names,tagstags, ) storage_context StorageContext.from_defaults(graph_storegraph_store)# Build KG kg_index KnowledgeGraphIndex.from_documents(documents,storage_contextstorage_context,max_triplets_per_chunk10,space_namespace_name,edge_typesedge_types,rel_prop_namesrel_prop_names,tagstags, )kg_query_engine kg_index.as_query_engine()KnowledgeGraphRAGQueryEngine 则可以在任何已经存在的知识图谱上进行 Graph RAG。不过我还没有完成这个 PR。 graph_store NebulaGraphStore(space_namespace_name,edge_typesedge_types,rel_prop_namesrel_prop_names,tagstags, ) storage_context StorageContext.from_defaults(graph_storegraph_store)graph_rag_query_engine KnowledgeGraphRAGQueryEngine(storage_contextstorage_context, )最后我做了一个 Streamlit 的 Demo 来比较 Graph RAG 与 Vector RAG从中我们可以看到 Graph RAG 并没有取代 Embedding、向量搜索的方法而是增强了/补充了它的不足。 Text2Cypher 基于图谱的 LLM 的另一种有趣方法是 Text2Cypher。这种方法不依赖于实体的子图检索而是将任务/问题翻译成一个面向答案的特定图查询和我们常说的 Text2SQL 方法本质是一样的。 在 NebulaGraph 上进行 Text2Cypher 在之前的文章中我们已经介绍过得益于 LLM实现 Text2Cypher 比传统的 ML 方法更为简单和便宜。 比如LangChain: NebulaGraphQAChain 和 Llama Index: KnowledgeGraphQueryEngine 让我们 3 行代码就能跑起来 Text2Cypher。 比较 Text2Cypher 和 (Sub)Graph RAG 这两种方法主要在其检索机制上有所不同。Text2Cypher 根据 KG 的 Schema 和给定的任务生成图形模式查询而 SubGraph RAG 获取相关的子图以提供上下文。 两者都有其优点为了大家更直观理解他们的特点我做了这个 Demo 视频 我们可以看到两者的图查询模式在可视化下是有非常清晰的差异的。 结合 Text2Cypher 的 Graph RAG 然而两者并没有绝对的好与坏不同场景下它们各有优劣。 在现实世界中我们可能并不总是知道哪种方法更有效用来区分应该用哪一种因此我倾向于考虑同时利用两者这样获取的两种检索结果作为上下文一起来生成最终答案的效果可能是最好的。 具体的实现方法在这个 PR中已经可以做到了只需要设置 with_text2cypherTrueGraph RAG 就会包含 Text2Cypher 上下文敬请期待它的合并。 结论 通过将知识图谱、图存储集成到 LLM 技术栈中Graph RAG 把 RAG 的上下文学习推向了一个新的高度。它能在 LLM 应用中通过利用现有或新建的知识图谱提取细粒度、精确调整、领域特定且互联的知识。 请继续关注图谱和 LLM 领域的更深入的探索和进一步的发展。 相关阅读 Text2Cypher大语言模型驱动的图查询生成关于 LLM 和图、图数据库的那些事LLM知识图谱的另类实践图技术在 LLM 下的应用知识图谱驱动的大语言模型 Llama Index利用 ChatGLM 构建知识图谱 谢谢你读完本文 (///▽///) 如果你想尝鲜图数据库 NebulaGraph记得去 GitHub 下载、使用、(з)-☆ star 它 - GitHub和其他的 NebulaGraph 用户一起交流图数据库技术和应用技能留下「你的名片」一起玩耍呀~ 2023 年 NebulaGraph 技术社区年度征文活动正在进行中来这里领取华为 Meta 60 Pro、Switch 游戏机、小米扫地机器人等等礼品哟~ 活动链接https://discuss.nebula-graph.com.cn/t/topic/13970
http://www.zqtcl.cn/news/341690/

相关文章:

  • 网站开发工程师考试平面设计实例网站
  • ftp更换网站备案密码如何登录添加网站
  • 钢球 东莞网站建设做网站用vue吗
  • 青岛网站建设制作公司制作视频软件哪个免费
  • 用flash做的网站欣赏承德住房和城乡建设局网站关闭了
  • 做网站引流的最佳方法施工企业高级工程师土建答辩
  • 成都优创智汇网站建设旅游网站网页设计代码
  • 郑州冬青街 网站建设网站seo技巧
  • 网站定制公司推荐外包公司怎么样
  • 深圳做网站要网站制作能在家做吗
  • 设计国外网站深圳外贸网站推广
  • wordpress首页文章分类展示站长工具seo综合查询引流
  • 整网站代码 带数据 免费 下载株洲网站的建设
  • 邢台学校网站建设价格个人博客首页
  • php做网站优势wordpress导航图片尺寸
  • 西安商城网站建设咪豆com域名表示的是什么机构
  • 网站如何申请微信支付接口织梦中英文网站源码
  • 礼县住房和城乡建设局网站化妆品的网站设计方案
  • 做外汇网站代理公关团队
  • wordpress登录页面创建seo网站平台
  • 兰州seo整站优化服务商企业网站seo优化方案
  • 高校网站建设管理制度Wordpress动图主题
  • 手机ui设计网站自己做传奇网站
  • 长春网站建设吉网传媒实力牜网站pv是什么意思
  • 西安网站建设培训班无锡seo报价
  • 网站设计的技能高端品牌网站建设公司哪家好
  • 专门做二手书网站或app陕西交通建设集团官方网站
  • 微信商城怎么开徐州网站推广优化
  • 服装店网站建设规划书山西网站的公司
  • 龙岩做网站改版一般多久wordpress后台登入