mirror of
https://github.com/hwchase17/langchain.git
synced 2025-06-20 13:54:48 +00:00
Astra DB vector store, move constructor docstring to class docstring (#13784)
This PR rearranges the docstring for the `AstraDB` vector store class so as to have all useful information in the _class_ docstring for ease of reading. (incidentally, due to an oversight, the docstring that was in the constructor ended up buried below some lines of code, thereby disappearing altogether from accessibility. Apologies.)
This commit is contained in:
parent
fc40bd4cdb
commit
1fd724293b
@ -77,46 +77,8 @@ class AstraDB(VectorStore):
|
|||||||
|
|
||||||
vectorstore.add_texts(["Giraffes", "All good here"])
|
vectorstore.add_texts(["Giraffes", "All good here"])
|
||||||
results = vectorstore.similarity_search("Everything's ok", k=1)
|
results = vectorstore.similarity_search("Everything's ok", k=1)
|
||||||
"""
|
|
||||||
|
|
||||||
@staticmethod
|
Constructor args (only keyword-arguments accepted):
|
||||||
def _filter_to_metadata(filter_dict: Optional[Dict[str, str]]) -> Dict[str, Any]:
|
|
||||||
if filter_dict is None:
|
|
||||||
return {}
|
|
||||||
else:
|
|
||||||
return {f"metadata.{mdk}": mdv for mdk, mdv in filter_dict.items()}
|
|
||||||
|
|
||||||
def __init__(
|
|
||||||
self,
|
|
||||||
*,
|
|
||||||
embedding: Embeddings,
|
|
||||||
collection_name: str,
|
|
||||||
token: Optional[str] = None,
|
|
||||||
api_endpoint: Optional[str] = None,
|
|
||||||
astra_db_client: Optional[Any] = None, # 'astrapy.db.AstraDB' if passed
|
|
||||||
namespace: Optional[str] = None,
|
|
||||||
metric: Optional[str] = None,
|
|
||||||
batch_size: Optional[int] = None,
|
|
||||||
bulk_insert_batch_concurrency: Optional[int] = None,
|
|
||||||
bulk_insert_overwrite_concurrency: Optional[int] = None,
|
|
||||||
bulk_delete_concurrency: Optional[int] = None,
|
|
||||||
) -> None:
|
|
||||||
try:
|
|
||||||
from astrapy.db import (
|
|
||||||
AstraDB as LibAstraDB,
|
|
||||||
)
|
|
||||||
from astrapy.db import (
|
|
||||||
AstraDBCollection as LibAstraDBCollection,
|
|
||||||
)
|
|
||||||
except (ImportError, ModuleNotFoundError):
|
|
||||||
raise ImportError(
|
|
||||||
"Could not import a recent astrapy python package. "
|
|
||||||
"Please install it with `pip install --upgrade astrapy`."
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
Create an AstraDB vector store object.
|
|
||||||
|
|
||||||
Args (only keyword-arguments accepted):
|
|
||||||
embedding (Embeddings): embedding function to use.
|
embedding (Embeddings): embedding function to use.
|
||||||
collection_name (str): name of the Astra DB collection to create/use.
|
collection_name (str): name of the Astra DB collection to create/use.
|
||||||
token (Optional[str]): API token for Astra DB usage.
|
token (Optional[str]): API token for Astra DB usage.
|
||||||
@ -155,6 +117,43 @@ class AstraDB(VectorStore):
|
|||||||
add_texts and add_documents as well.
|
add_texts and add_documents as well.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _filter_to_metadata(filter_dict: Optional[Dict[str, str]]) -> Dict[str, Any]:
|
||||||
|
if filter_dict is None:
|
||||||
|
return {}
|
||||||
|
else:
|
||||||
|
return {f"metadata.{mdk}": mdv for mdk, mdv in filter_dict.items()}
|
||||||
|
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
*,
|
||||||
|
embedding: Embeddings,
|
||||||
|
collection_name: str,
|
||||||
|
token: Optional[str] = None,
|
||||||
|
api_endpoint: Optional[str] = None,
|
||||||
|
astra_db_client: Optional[Any] = None, # 'astrapy.db.AstraDB' if passed
|
||||||
|
namespace: Optional[str] = None,
|
||||||
|
metric: Optional[str] = None,
|
||||||
|
batch_size: Optional[int] = None,
|
||||||
|
bulk_insert_batch_concurrency: Optional[int] = None,
|
||||||
|
bulk_insert_overwrite_concurrency: Optional[int] = None,
|
||||||
|
bulk_delete_concurrency: Optional[int] = None,
|
||||||
|
) -> None:
|
||||||
|
"""
|
||||||
|
Create an AstraDB vector store object. See class docstring for help.
|
||||||
|
"""
|
||||||
|
try:
|
||||||
|
from astrapy.db import (
|
||||||
|
AstraDB as LibAstraDB,
|
||||||
|
)
|
||||||
|
from astrapy.db import (
|
||||||
|
AstraDBCollection as LibAstraDBCollection,
|
||||||
|
)
|
||||||
|
except (ImportError, ModuleNotFoundError):
|
||||||
|
raise ImportError(
|
||||||
|
"Could not import a recent astrapy python package. "
|
||||||
|
"Please install it with `pip install --upgrade astrapy`."
|
||||||
|
)
|
||||||
# Conflicting-arg checks:
|
# Conflicting-arg checks:
|
||||||
if astra_db_client is not None:
|
if astra_db_client is not None:
|
||||||
if token is not None or api_endpoint is not None:
|
if token is not None or api_endpoint is not None:
|
||||||
|
Loading…
Reference in New Issue
Block a user