设置与安装
要使用此功能,请安装@sap/hana-langchain 包及其依赖项:
HanaSparqlQAAgent 是一种基于智能体的方法,用于回答存储在 SAP HANA Cloud 中的 RDF 数据库中的问题。与基于链的方法不同,智能体可以:
- 动态检索本体 使用专用工具
- 生成并执行 SPARQL 查询 迭代
- 自我纠正 如果查询失败或返回意外结果
- 逐步推理 关于复杂问题
初始化
您需要:- 一个 LLM 为智能体的推理提供支持
- 一个
HanaRdfGraph(具有连接、graphUri和本体)
HanaRdfGraph 实例的信息。
导入 HanaSparqlQAAgent
智能体概述
智能体使用工具迭代执行以下操作:- 首先检索本体以理解数据结构
- 根据模式生成适当的 SPARQL 查询
- 执行查询并解释结果
- 制定自然语言答案
默认设置
- 工具:
retrieveOntology- 从图中以 Turtle 格式检索 RDF 本体/模式executeSparql- 对 HANA RDF 图执行 SPARQL 查询
- 系统提示词:提供默认系统提示词,包含 SPARQL 生成和工具使用的说明。
- 中间件:
ModelRetryMiddleware({maxRetries:3})和ToolRetryMiddleWare({maxRetries:2})默认添加以防止无限循环
自定义您的智能体
您可以通过向createAgent 提供附加参数来自定义智能体的行为:
示例:在“电影”知识图谱上进行问答
前提条件: 您必须有一个启用了 三元组存储 功能的 SAP HANA Cloud 实例。 有关详细说明,请参阅:启用三元组存储加载
kgdocu_movies 示例数据。参见 知识图谱示例。
以下示例:
- 实例化
HanaRdfGraph指向电影数据图 - 创建一个由 LLM 驱动的
HanaSparqlQAAgent - 提出自然语言问题,并让智能体通过推理得出答案
底层工作原理是什么?
-
本体检索
智能体首先使用
retrieveOntology工具以 Turtle 格式获取 RDF 模式。这使其了解可用的类、属性和关系。 -
SPARQL 生成
根据本体和用户的问题,智能体推理要查询哪些实体和属性,然后生成一个有效的
SELECT查询。 -
查询执行
智能体调用
executeSparql工具在 HANA RDF 图上运行生成的查询。如果查询失败或返回意外结果,智能体可以自我纠正并重试。 - 答案制定 智能体解释查询结果,并严格基于检索到的数据制定简洁、人类可读的答案。
官方原文:src/oss/javascript/integrations/agents/sap_hana_sparql_qa_agent.mdx · 非官方翻译,译文由 AI 生成,以英文原文为准。