langchain_community.graphs.neo4j_graph.Neo4jGraph

class langchain_community.graphs.neo4j_graph.Neo4jGraph(url: Optional[str] = None, username: Optional[str] = None, password: Optional[str] = None, database: Optional[str] = None, timeout: Optional[float] = None, sanitize: bool = False, refresh_schema: bool = True, *, driver_config: Optional[Dict] = None, enhanced_schema: bool = False)[source]

Neo4j数据库包装器,用于各种图操作。

参数: url(可选[str]):Neo4j数据库服务器的URL。 username(可选[str]):数据库身份验证的用户名。 password(可选[str]):数据库身份验证的密码。 database(str):要连接的数据库的名称。默认为’neo4j’。 timeout(可选[float]):以秒为单位的事务超时时间。

用于终止运行时间较长的查询。 默认情况下,未设置超时时间。

sanitize(bool):指示是否从结果中删除具有超过128个元素的列表的标志。

用于从数据库响应中删除类似嵌入属性。默认为False。

refresh_schema(bool):一个标志,指示是否在初始化时刷新模式信息。默认为True。 enhanced_schema(bool):一个标志,指示是否扫描数据库以查找示例值并在图模式中使用它们。默认为False。 driver_config(Dict):传递给Neo4j Driver的配置。

安全提示:确保数据库连接使用的凭据范围狭窄,仅包括必要的权限。

如果未这样做,可能会导致数据损坏或丢失,因为调用代码可能会尝试执行会导致删除、变异数据的命令,如果适当提示的话,或读取敏感数据,如果数据库中存在这样的数据。 防范这些负面结果的最佳方法是(视情况)限制授予此工具使用的凭据的权限。

有关更多信息,请参见https://python.langchain.com/docs/security。

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

Attributes

get_schema

返回图的模式

get_structured_schema

返回图的结构化模式

Methods

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

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

add_graph_documents(graph_documents[, ...])

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

query(query[, params])

查询Neo4j数据库。

refresh_schema()

刷新Neo4j图模式信息。

Parameters
  • url (Optional[str]) –

  • username (Optional[str]) –

  • password (Optional[str]) –

  • database (Optional[str]) –

  • timeout (Optional[float]) –

  • sanitize (bool) –

  • refresh_schema (bool) –

  • driver_config (Optional[Dict]) –

  • enhanced_schema (bool) –

Return type

None

__init__(url: Optional[str] = None, username: Optional[str] = None, password: Optional[str] = None, database: Optional[str] = None, timeout: Optional[float] = None, sanitize: bool = False, refresh_schema: bool = True, *, driver_config: Optional[Dict] = None, enhanced_schema: bool = False) None[source]

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

Parameters
  • url (Optional[str]) –

  • username (Optional[str]) –

  • password (Optional[str]) –

  • database (Optional[str]) –

  • timeout (Optional[float]) –

  • sanitize (bool) –

  • refresh_schema (bool) –

  • driver_config (Optional[Dict]) –

  • enhanced_schema (bool) –

Return type

None

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

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

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

Parameters
  • graph_documents (List[GraphDocument]) –

  • include_source (bool) –

  • baseEntityLabel (bool) –

Return type

None

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

查询Neo4j数据库。

Parameters
  • query (str) –

  • params (dict) –

Return type

List[Dict[str, Any]]

refresh_schema() None[source]

刷新Neo4j图模式信息。

Return type

None

Examples using Neo4jGraph