langchain_community.document_loaders.sql_database
.SQLDatabaseLoader¶
- class langchain_community.document_loaders.sql_database.SQLDatabaseLoader(query: Union[str, Select], db: SQLDatabase, *, parameters: Optional[Dict[str, Any]] = None, page_content_mapper: Optional[Callable[[...], str]] = None, metadata_mapper: Optional[Callable[[...], Dict[str, Any]]] = None, source_columns: Optional[Sequence[str]] = None, include_rownum_into_metadata: bool = False, include_query_into_metadata: bool = False)[source]¶
通过查询SQLAlchemy支持的数据库表加载文档。
为了与数据库通信,文档加载器使用LangChain集成工具包中的`SQLDatabase`实用程序。
每个文档代表结果集中的一行。
参数: query: 要执行的查询。 db: 包装了一个SQLAlchemy引擎的LangChain SQLDatabase。 sqlalchemy_kwargs: 用于SQLAlchemy的`create_engine`的更多关键字参数。 parameters: 可选。要传递给查询的参数。 page_content_mapper: 可选。将行转换为字符串的函数,用作文档的`page_content`。默认情况下,加载器将整行序列化为一个字符串,包括所有列。 metadata_mapper: 可选。将行转换为字典的函数,用作文档的`metadata`。默认情况下,不会选择任何列到元数据字典中。 source_columns: 可选。要用作元数据字典中的`source`的列名。 include_rownum_into_metadata: 可选。是否将行号包含在元数据字典中。默认值:False。 include_query_into_metadata: 可选。是否将查询表达式包含在元数据字典中。默认值:False。
Methods
__init__
(query, db, *[, parameters, ...])参数: query: 要执行的查询。 db: 包装了一个SQLAlchemy引擎的LangChain SQLDatabase。 sqlalchemy_kwargs: 用于SQLAlchemy的`create_engine`的更多关键字参数。 parameters: 可选。要传递给查询的参数。 page_content_mapper: 可选。将行转换为字符串的函数,用作文档的`page_content`。默认情况下,加载器将整行序列化为一个字符串,包括所有列。 metadata_mapper: 可选。将行转换为字典的函数,用作文档的`metadata`。默认情况下,不会选择任何列到元数据字典中。 source_columns: 可选。要用作元数据字典中的`source`的列名。 include_rownum_into_metadata: 可选。是否将行号包含在元数据字典中。默认值:False。 include_query_into_metadata: 可选。是否将查询表达式包含在元数据字典中。默认值:False。
一个用于文档的惰性加载器。
aload
()将数据加载到文档对象中。
一个用于文档的惰性加载器。
load
()将数据加载到文档对象中。
load_and_split
([text_splitter])加载文档并分割成块。块作为文档返回。
metadata_default_mapper
(row[, column_names])一个合理的默认函数,将记录转换为“元数据”字典。
page_content_default_mapper
(row[, column_names])一个合理的默认函数,用于将记录转换为“页面内容”字符串。
- Parameters
query (Union[str, Select]) –
db (SQLDatabase) –
parameters (Optional[Dict[str, Any]]) –
page_content_mapper (Optional[Callable[[...], str]]) –
metadata_mapper (Optional[Callable[[...], Dict[str, Any]]]) –
source_columns (Optional[Sequence[str]]) –
include_rownum_into_metadata (bool) –
include_query_into_metadata (bool) –
- __init__(query: Union[str, Select], db: SQLDatabase, *, parameters: Optional[Dict[str, Any]] = None, page_content_mapper: Optional[Callable[[...], str]] = None, metadata_mapper: Optional[Callable[[...], Dict[str, Any]]] = None, source_columns: Optional[Sequence[str]] = None, include_rownum_into_metadata: bool = False, include_query_into_metadata: bool = False)[source]¶
参数: query: 要执行的查询。 db: 包装了一个SQLAlchemy引擎的LangChain SQLDatabase。 sqlalchemy_kwargs: 用于SQLAlchemy的`create_engine`的更多关键字参数。 parameters: 可选。要传递给查询的参数。 page_content_mapper: 可选。将行转换为字符串的函数,用作文档的`page_content`。默认情况下,加载器将整行序列化为一个字符串,包括所有列。 metadata_mapper: 可选。将行转换为字典的函数,用作文档的`metadata`。默认情况下,不会选择任何列到元数据字典中。 source_columns: 可选。要用作元数据字典中的`source`的列名。 include_rownum_into_metadata: 可选。是否将行号包含在元数据字典中。默认值:False。 include_query_into_metadata: 可选。是否将查询表达式包含在元数据字典中。默认值:False。
- Parameters
query (Union[str, Select]) –
db (SQLDatabase) –
parameters (Optional[Dict[str, Any]]) –
page_content_mapper (Optional[Callable[[...], str]]) –
metadata_mapper (Optional[Callable[[...], Dict[str, Any]]]) –
source_columns (Optional[Sequence[str]]) –
include_rownum_into_metadata (bool) –
include_query_into_metadata (bool) –
- load_and_split(text_splitter: Optional[TextSplitter] = None) List[Document] ¶
加载文档并分割成块。块作为文档返回。
不要覆盖此方法。应该被视为已弃用!
- 参数:
- text_splitter: 用于分割文档的TextSplitter实例。
默认为RecursiveCharacterTextSplitter。
- 返回:
文档列表。
- Parameters
text_splitter (Optional[TextSplitter]) –
- Return type
List[Document]