Text2Cypher - 自然语言查询
工作原理
此扩展功能允许用户使用自然语言与 NeoDash 交互,以生成用于查询 Neo4j 图数据库的 Cypher 查询。此集成利用语言模型 (LLM) 来解释用户输入并根据提供的模式定义生成 Cypher 查询。
配置
要启用 NeoDash 中的自然语言查询,请按照以下配置步骤操作
-
打开 NeoDash 并导航到左侧边栏中的“扩展”部分。
-
找到“Text2Cypher”扩展,然后单击它以激活它。
-
激活后,屏幕顶部将出现一个带有红色感叹号 (⚠️) 的新按钮。单击此按钮。
-
在配置窗口中,系统将提示您提供连接到语言模型 (LLM) 所需的信息。输入模型提供商、API 密钥、模型提供商可能需要的部署 URL,并选择要使用的模型。
-
提供所需信息后,单击“开始查询”按钮以完成配置。
使用
配置完扩展后,您就可以在 NeoDash 报表中开始使用它了。方法如下
-
打开所需报表的报表设置。
-
在报表设置中,您将在编辑器上方找到一个切换开关。此开关允许您在 Cypher 和英语语言之间切换。
-
由于您已启用扩展并通过提供您的 API 密钥进行了身份验证,因此您可以切换到英语语言模式。
-
开始使用自然语言表达式描述您要检索的数据,用简单的英语表达您的查询。
-
撰写完查询后,您可以选择以下两种操作
-
翻译:单击“翻译”按钮,您的查询将使用语言模型翻译成 Cypher。当您切换到 Cypher 视图时,翻译后的 Cypher 查询将显示在编辑器中。这使您能够在执行之前查看和修改生成的 Cypher 查询。
-
运行:如果您希望直接执行查询并查看结果,请单击右上角的“运行”按钮。查询的执行将取决于所选报表类型,结果将相应显示。
-
通过自定义提示提高准确性
要提高语言模型的准确性,您可以提供您自己的示例查询,这些查询将被输入提示。指定与您的数据模型和用例相关的查询可以显着提高 Text2Cypher 翻译的质量。
要访问模型示例屏幕,请打开扩展设置。在指定提供商和模型后,单击窗口左下角的“调整提示”按钮。这将带您进入示例界面。
在此界面中,您可以指定一个或多个发送到语言模型的示例。一个示例包含 Cypher 查询及其自然语言等效项。您可以创建任意数量的示例,但将它们保持与您的用户查询接近将产生最佳结果。
底层功能
-
检索模式:系统在交互开始时提示检索数据库模式。这确保了生成的查询符合提供的模式以及可用的关系类型和属性。
-
用英语提示:检索完模式后,您可以开始用简单的英语提示您的查询。NeoDash 在 LLM 的支持下将解释您的英语查询,并根据提供的模式生成相应的 Cypher 查询。
-
自动查询生成:NeoDash 会自动为您生成 Cypher 查询,并考虑您指定的报表类型。无论是表格、图形、条形图、折线图还是任何其他受支持的报表类型,生成的查询都将根据报表要求检索必要的数据。
-
重试逻辑:为了增强生成的查询的可靠性,我们实现了重试逻辑。如果在查询生成过程中出现任何问题或错误,系统最多将尝试重试三次,并提供有效的查询以确保查询顺利执行。
提示技巧
在 NeoDash 中使用自然语言查询时,请牢记以下提示以增强您的体验
-
在您的查询中要清晰明了:提供要检索的数据的详细描述,包括节点标签、关系类型和属性值。
-
使用关键字和短语:加入与您的数据相关的常见关键字和短语,以提高查询的准确性。
-
提出精准的问题:将您的查询格式化为问题以获取特定信息。例如,不要使用“显示所有客户”,而应使用“哪些客户在过去一个月内进行了购买?”
-
尝试不同的表达方式:如果无法获得期望的结果,请尝试使用同义词或其他表达方式重新表达您的查询。
-
避免使用含糊不清的查询:含糊不清或模棱两可的查询可能会产生意外的结果。确保提供足够的上下文并澄清任何歧义。
-
验证和查看生成的查询:始终查看生成的 Cypher 查询以确保它们准确地反映了您的意图并产生期望的结果。