langchain_experimental.graph_transformers.llm.LLMGraphTransformer

class langchain_experimental.graph_transformers.llm.LLMGraphTransformer(llm: BaseLanguageModel, allowed_nodes: List[str] = [], allowed_relationships: List[str] = [], prompt: Optional[ChatPromptTemplate] = None, strict_mode: bool = True, node_properties: Union[bool, List[str]] = False, relationship_properties: Union[bool, List[str]] = False)[source]

使用LLM将文档转换为基于图的文档。

它允许指定输出图中要包括的节点和关系的类型约束。该类支持提取节点和关系的属性。

参数
  • llm (BaseLanguageModel) – 支持结构化输出的语言模型实例。

  • allowed_nodes (List[str], 可选) – 指定图中允许的节点类型。默认为空列表,允许所有节点类型。

  • allowed_relationships (List[str], 可选) – 指定图中允许的关系类型。默认为空列表,允许所有关系类型。

  • 提示 (可选[ChatPromptTemplate]) – 向 LLM 传递的包含额外说明的提示。

  • 严格模式 (布尔值 可选) – 决定是否对 transformer 应用过滤以严格遵守 允许的节点允许的关系。默认为 True。

  • 节点属性 (联合[ 布尔值 字符串列表 ]) – 如果为 True,则 LLM 可以从文本中提取任何节点属性。或者,可以提供一个有效属性的列表,以便 LLM 提取,限制提取到指定属性。

  • 关系属性 (联合[ 布尔值 字符串列表 ]) – 如果为 True,则 LLM 可以从文本中提取任何关系属性。或者,可以提供一个有效属性的列表,以便 LLM 提取,限制提取到指定属性。

示例

方法

__init__(llm[, allowed_nodes, ...])

aconvert_to_graph_documents(documents[, config])

异步地将一系列文档转换为图文档。

aprocess_response(document[, config])

异步处理单个文档,将其转换为图文档。

convert_to_graph_documents(documents[, config])

将一系列文档转换为图文档。

process_response(document[, config])

使用基于模型模式和约束的 LLM 处理单个文档,将其转换为图文档。

__init__(llm: BaseLanguageModel, allowed_nodes: List[str] = [], allowed_relationships: List[str] = [], prompt: Optional[ChatPromptTemplate] = None, strict_mode: bool = True, node_properties: Union[bool, List[str]] = False, relationship_properties: Union[bool, List[str]] = False) None[源码]
参数
  • llm (BaseLanguageModel) –

  • allowed_nodes (列表包含字符串) –

  • allowed_relationships (列表包含字符串) –

  • prompt (可选ChatPromptTemplate) –

  • strict_mode (布尔值) –

  • node_properties (联合类型:布尔值或字符串列表) –

  • relationship_properties (联合类型:布尔值或字符串列表) –

返回类型

None

async aconvert_to_graph_documents(documents: Sequence[Document], config: Optional[RunnableConfig] = None) List[GraphDocument][source]

异步地将一系列文档转换为图文档。

参数
返回类型

List[GraphDocument]

async aprocess_response(document: Document, config: Optional[RunnableConfig] = None) GraphDocument[source]

异步处理单个文档,将其转换为图文档。

参数
返回类型

GraphDocument

convert_to_graph_documents(documents: Sequence[Document], config: Optional[RunnableConfig] = None) List[GraphDocument][source]

将一系列文档转换为图文档。

参数
  • documents (Sequence[Document]) – 原始文档。

  • kwargs – 额外关键词参数。

  • config (Optional[RunnableConfig]) –

返回

转换为图的文档。

返回类型

Sequence[GraphDocument]

process_response(document: Document, config: Optional[RunnableConfig] = None) GraphDocument[source]

使用基于模型的规范和约束,通过LLM将单个文档处理成图文档。

参数
返回类型

GraphDocument

使用LLMGraphTransformer的示例