MemgraphGraph#

class langchain_community.graphs.memgraph_graph.MemgraphGraph(url: str | None = None, username: str | None = None, password: str | None = None, database: str | None = None, refresh_schema: bool = True, *, driver_config: Dict | None = None)[源代码]#

用于图操作的Memgraph包装器。

参数: url (Optional[str]): Memgraph数据库服务器的URL。 username (Optional[str]): 用于数据库认证的用户名。 password (Optional[str]): 用于数据库认证的密码。 database (str): 要连接的数据库名称。默认为‘memgraph’。 refresh_schema (bool): 初始化时是否刷新架构信息的标志。默认为True。 driver_config (Dict): 传递给Neo4j驱动程序的配置。

Security note: Make sure that the database connection uses credentials

这些权限范围狭窄,仅包含必要的权限。 未能这样做可能会导致数据损坏或丢失,因为调用代码可能会尝试执行导致数据删除、变异的命令,如果被适当提示,或者读取敏感数据,如果这些数据存在于数据库中。 防止这种负面结果的最佳方法是(适当地)限制授予与此工具一起使用的凭据的权限。

查看 https://python.langchain.com/docs/security 获取更多信息。

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

属性

get_schema

返回图数据库的模式

get_structured_schema

返回图数据库的结构化模式

方法

__init__([url, username, password, ...])

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

add_graph_documents(graph_documents[, ...])

将GraphDocument作为输入,并使用它在Memgraph中构建图。

close()

query(query[, params])

查询图。

refresh_schema()

刷新Memgraph图模式信息。

Parameters:
  • url (str | None)

  • username (str | None)

  • password (str | None)

  • 数据库 (字符串 | )

  • refresh_schema (bool)

  • driver_config (Dict | None)

__init__(url: str | None = None, username: str | None = None, password: str | None = None, database: str | None = None, refresh_schema: bool = True, *, driver_config: Dict | None = None) None[source]#

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

Parameters:
  • url (str | None)

  • username (str | None)

  • password (str | None)

  • 数据库 (字符串 | )

  • refresh_schema (bool)

  • driver_config (Dict | None)

Return type:

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

将GraphDocument作为输入,并使用它在Memgraph中构建一个图。

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

Parameters:
  • graph_documents (列表[GraphDocument])

  • include_source (bool)

  • baseEntityLabel (bool)

Return type:

close() None[source]#
Return type:

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

查询图表。

Parameters:
  • query (str) – 要执行的Cypher查询。

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

Returns:

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

Return type:

列表[字典[字符串, 任意类型]]

refresh_schema() None[source]#

刷新Memgraph图模式信息。

Return type:

使用 MemgraphGraph 的示例