class_docstr: Recursive pipelines are Spark NLP specific pipelines that allow a Spark
  ML Pipeline to know about itself on every Pipeline Stage task.
  
  This allows annotators to utilize this same pipeline against external
  resources to process them in the same way the user decides.
  
  Only some of the annotators take advantage of this. RecursivePipeline
  behaves exactly the same as normal Spark ML pipelines, so they can be used
  with the same intention.
  
  Examples
  --------
  >>> from sparknlp.annotator import *
  >>> from sparknlp.base import *
  >>> recursivePipeline = RecursivePipeline(stages=[
  ...     documentAssembler,
  ...     sentenceDetector,
  ...     tokenizer,
  ...     lemmatizer,
  ...     finisher
  ... ])
class_docstr_tok: ["Recursive","pipelines","are","Spark","NLP","specific","pipelines","that","allow","a","Spark","ML","Pipeline","to","know","about","itself","on","every","Pipeline","Stage","task",".","This","allows","annotators","to","utilize","this","same","pipeline","against","external","resources","to","process","them","in","the","same","way","the","user","decides",".","Only","some","of","the","annotators","take","advantage","of","this",".","RecursivePipeline","behaves","exactly","the","same","as","normal","Spark","ML","pipelines",",","so","they","can","be","used","with","the","same","intention",".","Examples","--","--","--","--",">",">",">","from","sparknlp.annotator","import","*",">",">",">","from","sparknlp.base","import","*",">",">",">","recursivePipeline","=","RecursivePipeline","(","stages=","[","...","documentAssembler",",","...","sentenceDetector",",","...","tokenizer",",","...","lemmatizer",",","...","finisher","...","]",")"]
code: def __init__(self, *args, **kwargs):
      super(RecursivePipeline, self).__init__(*args, **kwargs)
      self._java_obj = self._new_java_obj(
          "com.johnsnowlabs.nlp.RecursivePipeline", self.uid
      )
      kwargs = self._input_kwargs
      self.setParams(**kwargs)
  
file_path: spark-nlp/python/sparknlp/base/recursive_pipeline.py
imports: from pyspark import keyword_only
  from pyspark.ml import PipelineModel, Estimator, Pipeline, Transformer
  from pyspark.ml.wrapper import JavaEstimator
  from sparknlp.common import AnnotatorProperties
  from sparknlp.internal import RecursiveEstimator
  from sparknlp.base import HasRecursiveTransform
label_desc: Use image node_id 1 to create a new RecursivePipeline object from inherited base classes: Pipeline, JavaEstimator with example: obj = RecursivePipeline()