def add(
        self,
        nodes: List[BaseNode],
        **add_kwargs: Any,
    ) -> List[str]:
        """
        Adds nodes to the vector store.

        Args:
            nodes (List[BaseNode]): List of nodes with embeddings.

        Returns:
            List[str]: List of document IDs added to the vector store.

        """
        from docarray import DocList

        # check to see if empty document list was passed
        if len(nodes) == 0:
            return []

        docs = DocList[self._schema](  # type: ignore[name-defined]
            self._schema(
                id=node.node_id,
                metadata=node_to_metadata_dict(node, flat_metadata=self.flat_metadata),
                text=node.get_content(metadata_mode=MetadataMode.NONE),
                embedding=node.get_embedding(),
            )
            for node in nodes
        )
        self._index.index(docs)
        logger.info(f"Successfully added {len(docs)} documents to the index")
        if self._ref_docs is not None:
            self._update_ref_docs(docs)
        return [doc.id for doc in docs]

        Adds nodes to the vector store.

        Args:
            nodes (List[BaseNode]): List of nodes with embeddings.

        Returns:
            List[str]: List of document IDs added to the vector store.

        
llama-index-integrations/vector_stores/llama-index-vector-stores-docarray/llama_index/vector_stores/docarray/base.py