langchain_community.graphs.memgraph_graph.MemgraphGraph

class langchain_community.graphs.memgraph_graph.MemgraphGraph(url: str, username: str, password: str, *, database: str = 'memgraph')[source]

Memgraph 图操作的包装器。

安全提示:确保数据库连接使用只包括必要权限的凭据。

未能这样做可能会导致数据损坏或丢失,因为调用代码可能尝试导致数据删除、数据变异或读取敏感数据的命令。避免此类负面结果的最佳方法是(根据适当)限制与此工具一起使用的凭据所获得的权限。

有关更多信息,请参阅 https://python.langchain.ac.cn/docs/security

创建一个新的 Memgraph 图包装器实例。

属性

get_schema

返回图的架构

get_structured_schema

返回图的结构化架构

方法

__init__(url, username, password, *[, database])

创建一个新的 Memgraph 图包装器实例。

add_graph_documents(graph_documents[, ...])

此方法根据提供的 GraphDocument 对象在图中构建节点和关系。

query(query[, params])

查询 Neo4j 数据库。

refresh_schema()

刷新 Memgraph 图架构信息。

参数
  • url (str) –

  • username (str) –

  • password (str) –

  • database (str) –

__init__(url: str, username: str, password: str, *, database: str = 'memgraph') None[source]

创建一个新的 Memgraph 图包装器实例。

参数
  • url (str) –

  • username (str) –

  • password (str) –

  • database (str) –

返回类型

None

add_graph_documents(graph_documents: List[GraphDocument], include_source: bool = False, baseEntityLabel: bool = False) None

此方法根据提供的 GraphDocument 对象在图中构建节点和关系。

参数: - graph_documents (List[GraphDocument]): 要添加到图中的节点和关系的 GraphDocument 对象列表。每个 GraphDocument 都应封装部分图的结构,包括节点、关系和源文档信息。 - include_source (bool, 可选): 如果为 True,则存储源文档并将其与图中的节点通过 MENTIONS 关系链接。这对于追踪数据的起源很有用。如果可选的话,根据源文档元数据的 id 属性合并源文档;否则它将计算 page_content 的 MD5 哈希用于合并过程。默认为 False。 - baseEntityLabel (bool, 可选): 如果为 True,每个新创建的节点都会获得一个次要的 __Entity__ 标签,该标签被索引以提高导入速度和性能。默认为 False。

参数
  • graph_documents (List[GraphDocument]) –

  • include_source (bool) –

  • baseEntityLabel (bool) –

返回类型

None

query(query: str, params: dict = {}) List[Dict[str, Any]]

查询 Neo4j 数据库。

参数
  • query (str) – 要执行的 Cypher 查询。

  • params (dict) – 要传递给查询的参数。

返回值

包含查询结果的字典列表。

返回类型

List[Dict[str, Any]]

refresh_schema() None[source]

刷新 Memgraph 图架构信息。

返回类型

None

使用 MemgraphGraph 的示例