docstr: Creates the Pipeline.
  
  Args:
      metadata: arbitrary dictionary to store metadata about this pipeline. Make sure all the values contained in
          this dictionary can be serialized and deserialized if you wish to save this pipeline to file with
          `save_pipelines()/load_pipelines()`.
      max_loops_allowed: how many times the pipeline can run the same node before throwing an exception.
      debug_path: when debug is enabled in `run()`, where to save the debug data.
docstr_tok: ["Creates","the","Pipeline",".","Args",":","metadata",":","arbitrary","dictionary","to","store","metadata","about","this","pipeline",".","Make","sure","all","the","values","contained","in","this","dictionary","can","be","serialized","and","deserialized","if","you","wish","to","save","this","pipeline","to","file","with","`","save_pipelines","(",")","\/load_pipelines","(",")","`",".","max_loops_allowed",":","how","many","times","the","pipeline","can","run","the","same","node","before","throwing","an","exception",".","debug_path",":","when","debug","is","enabled","in","`","run","(",")","`",",","where","to","save","the","debug","data","."]
code: def __init__(
      self,
      metadata: Optional[Dict[str, Any]] = None,
      max_loops_allowed: int = 100,
      debug_path: Union[Path, str] = Path(".haystack_debug/"),
  ):
      """
      Creates the Pipeline.
  
      Args:
          metadata: arbitrary dictionary to store metadata about this pipeline. Make sure all the values contained in
              this dictionary can be serialized and deserialized if you wish to save this pipeline to file with
              `save_pipelines()/load_pipelines()`.
          max_loops_allowed: how many times the pipeline can run the same node before throwing an exception.
          debug_path: when debug is enabled in `run()`, where to save the debug data.
      """
      self._telemetry_runs = 0
      self._last_telemetry_sent: Optional[datetime.datetime] = None
      super().__init__(
          metadata=metadata,
          max_loops_allowed=max_loops_allowed,
          debug_path=debug_path,
      )
  
file_path: haystack/haystack/pipeline.py
imports: from collections import defaultdict
  from typing import Any, Dict, Optional, Union, TextIO, Tuple
  from pathlib import Path
  import datetime
  import logging
  from haystack.core.pipeline import Pipeline
  from haystack.telemetry import pipeline_running
  from haystack.marshal import Marshaller, YamlMarshaller
label_desc: Use image node_id 1 to create a new Pipeline object from inherited base classes: _pipeline with example: obj = Pipeline(metadata, max_loops_allowed, debug_path)