----------------------
Yes, LlamaIndex does support ArangoDB. It provides a
SimpleArangoDBReader
that concatenates each ArangoDB document into a Document used by LlamaIndex. This reader has two parameters:
host
and
client
. The
host
parameter is a list of URLs or a URL for connecting to the database, and the
client
parameter is an ArangoDB client.
The
SimpleArangoDBReader
also includes a
lazy_load
method that allows for the lazy loading of data from ArangoDB. This method requires several parameters including
username
,
password
,
db_name
,
collection_name
,
field_names
,
separator
,
query_dict
,
max_docs
, and
metadata_names
.
Here is a snippet of the
SimpleArangoDBReader
class:
class SimpleArangoDBReader(BaseReader):
"""Simple arangodb reader. Concatenates each ArangoDB doc into Document used by LlamaIndex.
Args:
host: (Union[str, List[str]]) list of urls or url for connecting to the db
client: (Any) ArangoDB client
"""
def __init__(self, host: Optional[Union[str, List[str]]] = None, client: Optional[Any] = None) -> None:
"""Initialize with parameters."""
try:
from arango import ArangoClient
except ImportError as err:
raise ImportError("`arango` package not found, please run `pip install python-arango`") from err
host = host or "<http://127.0.0.1:8529">
self.client = client or ArangoClient(hosts=host)
self.client = cast(ArangoClient, self.client)
You can find more details about this in the
LlamaIndex API reference ().
----------------------
Note: you can ask me a follow up question by @ mentioning me again :speech_balloon:
----------------------