SpannerDocumentSaver(
instance_id: str,
database_id: str,
table_name: str,
content_column: str = "page_content",
metadata_columns: typing.List[str] = [],
metadata_json_column: str = "langchain_metadata",
primary_key: typing.Optional[str] = None,
client: typing.Optional[google.cloud.spanner_v1.client.Client] = None,
)
Save docs to Google Cloud Spanner.
Methods
SpannerDocumentSaver
SpannerDocumentSaver(
instance_id: str,
database_id: str,
table_name: str,
content_column: str = "page_content",
metadata_columns: typing.List[str] = [],
metadata_json_column: str = "langchain_metadata",
primary_key: typing.Optional[str] = None,
client: typing.Optional[google.cloud.spanner_v1.client.Client] = None,
)
Initialize Spanner document saver.
Parameters | |
---|---|
Name | Description |
instance_id |
str
The Spanner instance to load data to. |
database_id |
str
The Spanner database to load data to. |
table_name |
str
The table name to load data to. |
content_column |
str
The name of the content column. Defaulted to the first column. |
metadata_columns |
typing.List[str]
This is for user to opt-in a selection of columns to use. Defaulted to use all columns. |
metadata_json_column |
str
The name of the special JSON column. Defaulted to use "langchain_metadata". |
client |
typing.Optional[google.cloud.spanner_v1.client.Client]
The connection object to use. This can be used to customized project id and credentials. |
add_documents
add_documents(documents: typing.List[langchain_core.documents.base.Document])
Add documents to the Spanner table.
create_table
create_table(
client: google.cloud.spanner_v1.client.Client,
instance_id: str,
database_id: str,
table_name: str,
primary_key: str,
metadata_json_column: str,
content_column: str,
metadata_columns: typing.List[langchain_google_spanner.loader.Column],
)
Create a new table in Spanner database.
Parameters | |
---|---|
Name | Description |
client |
Client
The connection object to use. |
instance_id |
str
The Spanner instance to load data to. |
database_id |
str
The Spanner database to load data to. |
table_name |
str
The table name to load data to. |
primary_key |
str
The name of the primary key for the table. |
metadata_json_column |
str
The name of the special JSON column. |
content_column |
str
The name of the content column. |
metadata_columns |
typing.List[langchain_google_spanner.loader.Column]
The metadata columns for custom schema. |
delete
delete(documents: typing.List[langchain_core.documents.base.Document])
Delete documents from the table.
init_document_table
init_document_table(
instance_id: str,
database_id: str,
table_name: str,
content_column: str = "page_content",
metadata_columns: typing.List[langchain_google_spanner.loader.Column] = [],
primary_key: str = "",
store_metadata: bool = True,
metadata_json_column: str = "langchain_metadata",
)
Create a new table to store docs with a custom schema.
Parameters | |
---|---|
Name | Description |
instance_id |
str
The Spanner instance to load data to. |
database_id |
str
The Spanner database to load data to. |
table_name |
str
The table name to load data to. |
content_column |
str
The name of the content column. |
metadata_columns |
typing.List[langchain_google_spanner.loader.Column]
The metadata columns for custom schema. |
primary_key |
str
The name of the primary key. |
store_metadata |
bool
If true, extra metadata will be stored in the "langchain_metadata" column. Defaulted to true. |
metadata_json_column |
str
The name of the special JSON column. Defaulted to use "langchain_metadata". |