class_docstr: A class for converting a dataframe and/or url to a vectorstore embedded with a given embeddings model
class_docstr_tok: ["A","class","for","converting","a","dataframe","and\/or","url","to","a","vectorstore","embedded","with","a","given","embeddings","model"]
code: def split_documents(self, chunk_size, chunk_overlap) -> list:
      # Load documents and split in chunks
      logger.info(f"Loading documents from input data")
  
      documents = []
  
      text_splitter = RecursiveCharacterTextSplitter(
          chunk_size=chunk_size, chunk_overlap=chunk_overlap
      )
  
      if self.df is not None:
          # if user provides a dataframe, load documents from dataframe
          documents.extend(
              df_to_documents(
                  df=self.df,
                  page_content_columns=self.args.context_columns,
                  url_column_name=self.args.url_column_name,
              )
          )
  
      if self.args.url:
          # if user provides a url, load documents from url
          documents.extend(url_to_documents(self.args.url))
  
      n_tokens = sum([len(doc.page_content) for doc in documents])
  
      # split documents into chunks of text
      texts = text_splitter.split_documents(documents)
      logger.info(f"Loaded {len(documents)} documents from input data")
      logger.info(f"Total number of tokens: {n_tokens}")
      logger.info(f"Split into {len(texts)} chunks of text (tokens)")
  
      return texts
  
file_path: mindsdb/mindsdb/integrations/handlers/rag_handler/ingest.py
imports: import time
  from typing import List
  import pandas
  from langchain.schema import Document
  from langchain.text_splitter import RecursiveCharacterTextSplitter
  from langchain.vectorstores import VectorStore
  from mindsdb.integrations.handlers.rag_handler.settings import PersistedVectorStoreSaver, PersistedVectorStoreSaverConfig, RAGBaseParameters, VectorStoreFactory, df_to_documents, get_chroma_client, load_embeddings_model, url_to_documents
  from mindsdb.utilities import log
label_desc: Use image node_id 2 for calling the RAGIngestor obj's underlying member method code with example usage: obj.split_documents(chunk_size, chunk_overlap) and returns: texts