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 (Union[str, Select]) – 要执行的查询。
db (SQLDatabase) – 一个封装了 SQLAlchemy 引擎的 LangChain SQLDatabase。
sqlalchemy_kwargs – SQLAlchemy’s create_engine 的更多关键字参数。
parameters (Optional[Dict[str, Any]]) –可选。传递给查询的参数。
page_content_mapper (Optional[Callable[[...], str]]) –可选。将行转换为字符串并用作文档的 page_content 的函数。默认情况下,加载器将整个行序列化为字符串,包括所有列。
metadata_mapper (Optional[Callable[[...], Dict[str, Any]]]) –可选。将行转换为字典并用作文档的 metadata 的函数。默认情况下,不会将任何列选择到元数据字典中。
source_columns (Optional[Sequence[str]]) –可选。用作元数据字典中 source 的列的名称。
include_rownum_into_metadata (bool) –可选。是否将行号包含到元数据字典中。默认:False。
include_query_into_metadata (bool) –可选。是否将查询表达式包含到元数据字典中。默认:False。
方法
__init__
(query, db, *[, parameters, ...])- 参数 query
要执行的查询。
Document 的懒加载。
aload
()将数据加载到 Document 对象中。
Document 的懒加载。
load
()将数据加载到 Document 对象中。
load_and_split
([text_splitter])加载 Documents 并将其分割成块。
metadata_default_mapper
(row[, column_names])将记录转换为“元数据”字典的合理默认函数。
page_content_default_mapper
(row[, column_names])将记录转换为“页面内容”字符串的合理默认函数。
- __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 (Union[str, Select]) – 要执行的查询。
db (SQLDatabase) – 一个封装了 SQLAlchemy 引擎的 LangChain SQLDatabase。
sqlalchemy_kwargs – SQLAlchemy’s create_engine 的更多关键字参数。
parameters (Optional[Dict[str, Any]]) –可选。传递给查询的参数。
page_content_mapper (Optional[Callable[[...], str]]) –可选。将行转换为字符串并用作文档的 page_content 的函数。默认情况下,加载器将整个行序列化为字符串,包括所有列。
metadata_mapper (Optional[Callable[[...], Dict[str, Any]]]) –可选。将行转换为字典并用作文档的 metadata 的函数。默认情况下,不会将任何列选择到元数据字典中。
source_columns (Optional[Sequence[str]]) –可选。用作元数据字典中 source 的列的名称。
include_rownum_into_metadata (bool) –可选。是否将行号包含到元数据字典中。默认:False。
include_query_into_metadata (bool) –可选。是否将查询表达式包含到元数据字典中。默认:False。
- load_and_split(text_splitter: Optional[TextSplitter] = None) List[Document]¶
加载数据并分割为块。块作为Document返回。
不要重写此方法。应考虑将其弃用!
- 参数
text_splitter (可选[TextSplitter]) - 用于分割文档的TextSplitter实例。默认为RecursiveCharacterTextSplitter。
- 返回
文档列表。
- 返回类型
List[Document]