PostgresDocumentSaver(
    key,
    engine: langchain_google_cloud_sql_pg.engine.PostgresEngine,
    table_name: str,
    content_column: str,
    metadata_columns: typing.List[str] = [],
    metadata_json_column: typing.Optional[str] = None,
)A class for saving langchain documents into a PostgreSQL database table.
Methods
PostgresDocumentSaver
PostgresDocumentSaver(
    key,
    engine: langchain_google_cloud_sql_pg.engine.PostgresEngine,
    table_name: str,
    content_column: str,
    metadata_columns: typing.List[str] = [],
    metadata_json_column: typing.Optional[str] = None,
)PostgresDocumentSaver constructor.
| Parameters | |
|---|---|
| Name | Description | 
| key | objectPrevent direct constructor usage. | 
| engine | PostgresEngineAsyncEngine with pool connection to the postgres database | 
| table_name | Optional[str], optionalName of table to query. Defaults to None. | 
| content_columns | Optional[List[str]], optionalColumn that represent a Document's page_content. Defaults to the first column. | 
| metadata_columns | Optional[List[str]], optionalColumn(s) that represent a Document's metadata. Defaults to None. | 
| metadata_json_column | Optional[str], optionalColumn to store metadata as JSON. Defaults to "langchain_metadata". | 
| Exceptions | |
|---|---|
| Type | Description | 
| Exception | if called directly by user. | 
_aload_table_schema
_aload_table_schema() -> sqlalchemy.sql.schema.TableLoad table schema from existing table in PgSQL database.
| Returns | |
|---|---|
| Type | Description | 
| (sqlalchemy.Table) | The loaded table. | 
aadd_documents
aadd_documents(docs: typing.List[langchain_core.documents.base.Document]) -> NoneSave documents in the DocumentSaver table. Document’s metadata is added to columns if found or stored in langchain_metadata JSON column.
| Parameter | |
|---|---|
| Name | Description | 
| docs | List[langchain_core.documents.Document]a list of documents to be saved. | 
add_documents
add_documents(docs: typing.List[langchain_core.documents.base.Document]) -> NoneSave documents in the DocumentSaver table. Document’s metadata is added to columns if found or stored in langchain_metadata JSON column.
| Parameter | |
|---|---|
| Name | Description | 
| docs | List[langchain_core.documents.Document]a list of documents to be saved. | 
adelete
adelete(docs: typing.List[langchain_core.documents.base.Document]) -> NoneDelete all instances of a document from the DocumentSaver table by matching the entire Document object.
| Parameter | |
|---|---|
| Name | Description | 
| docs | List[langchain_core.documents.Document]a list of documents to be deleted. | 
create
create(
    engine: langchain_google_cloud_sql_pg.engine.PostgresEngine,
    table_name: str,
    content_column: str = "page_content",
    metadata_columns: typing.List[str] = [],
    metadata_json_column: typing.Optional[str] = "langchain_metadata",
)Create an PostgresDocumentSaver instance.
| Parameters | |
|---|---|
| Name | Description | 
| engine | PostgresEngineAsyncEngine with pool connection to the postgres database | 
| table_name | Optional[str], optionalName of table to query. Defaults to None. | 
| content_columns | Optional[List[str]], optionalColumn that represent a Document's page_content. Defaults to the first column. | 
| metadata_columns | Optional[List[str]], optionalColumn(s) that represent a Document's metadata. Defaults to None. | 
| metadata_json_column | Optional[str], optionalColumn to store metadata as JSON. Defaults to "langchain_metadata". | 
create_sync
create_sync(
    engine: langchain_google_cloud_sql_pg.engine.PostgresEngine,
    table_name: str,
    content_column: str = "page_content",
    metadata_columns: typing.List[str] = [],
    metadata_json_column: str = "langchain_metadata",
)Create an PostgresDocumentSaver instance.
| Parameters | |
|---|---|
| Name | Description | 
| engine | PostgresEngineAsyncEngine with pool connection to the postgres database | 
| table_name | Optional[str], optionalName of table to query. Defaults to None. | 
| content_columns | Optional[List[str]], optionalColumn that represent a Document's page_content. Defaults to the first column. | 
| metadata_columns | Optional[List[str]], optionalColumn(s) that represent a Document's metadata. Defaults to None. | 
| metadata_json_column | Optional[str], optionalColumn to store metadata as JSON. Defaults to "langchain_metadata". | 
delete
delete(docs: typing.List[langchain_core.documents.base.Document]) -> NoneDelete all instances of a document from the DocumentSaver table by matching the entire Document object.
| Parameter | |
|---|---|
| Name | Description | 
| docs | List[langchain_core.documents.Document]a list of documents to be deleted. |