class_docstr: **CNN / Daily Mail** 数据集的 **Loader** ，用于 **extractive summarization task** 任务。
  如果你使用了这个数据，请引用 https://arxiv.org/pdf/1506.03340.pdf
  
  读取的 :class:`~fastNLP.core.DataSet` 将具备以下的数据结构：
  
  .. csv-table::
     :header: "text", "summary", "label", "publication"
  
     "['I got new tires from them and... ','...']", "['The new tires...','...']", "[0, 1]", "cnndm"
     "['Don't waste your time.  We had two...','...']", "['Time is precious','...']", "[1]", "cnndm"
     "['...']", "['...']", "[]", "cnndm"
  
  :param fields:
docstr: 从指定一个或多个路径中的文件中读取数据，返回 :class:`~fastNLP.io.DataBundle` 。
  
  读取的 field 根据 :class:`ExtCNNDMLoader` 初始化时传入的 ``fields`` 决定。
  
  :param paths: 传入一个目录, 将在该目录下寻找 ``train.label.jsonl`` , ``dev.label.jsonl`` , 
      ``test.label.jsonl`` 三个文件（该目录还应该需要有一个名字为 ``vocab`` 的文件，在 :class:`~fastNLP.io.pipe.ExtCNNDMPipe`
      当中需要用到）。
  
  :return: :class:`~fastNLP.io.DataBundle`
docstr_tok: ["\u4ece\u6307\u5b9a\u4e00\u4e2a\u6216\u591a\u4e2a\u8def\u5f84\u4e2d\u7684\u6587\u4ef6\u4e2d\u8bfb\u53d6\u6570\u636e\uff0c\u8fd4\u56de",":","class",":","`","~fastNLP.io.DataBundle","`","\u3002","\u8bfb\u53d6\u7684","field","\u6839\u636e",":","class",":","`","ExtCNNDMLoader","`","\u521d\u59cb\u5316\u65f6\u4f20\u5165\u7684","``","fields","``","\u51b3\u5b9a\u3002",":","param","paths",":","\u4f20\u5165\u4e00\u4e2a\u76ee\u5f55",",","\u5c06\u5728\u8be5\u76ee\u5f55\u4e0b\u5bfb\u627e","``","train.label.jsonl","``",",","``","dev.label.jsonl","``",",","``","test.label.jsonl","``","\u4e09\u4e2a\u6587\u4ef6\uff08\u8be5\u76ee\u5f55\u8fd8\u5e94\u8be5\u9700\u8981\u6709\u4e00\u4e2a\u540d\u5b57\u4e3a","``","vocab","``","\u7684\u6587\u4ef6\uff0c\u5728",":","class",":","`","~fastNLP.io.pipe.ExtCNNDMPipe","`","\u5f53\u4e2d\u9700\u8981\u7528\u5230\uff09\u3002",":","return",":",":","class",":","`","~fastNLP.io.DataBundle","`"]
code: def load(self, paths: Union[str, Dict[str, str]] = None):
      r"""
      从指定一个或多个路径中的文件中读取数据，返回 :class:`~fastNLP.io.DataBundle` 。
  
      读取的 field 根据 :class:`ExtCNNDMLoader` 初始化时传入的 ``fields`` 决定。
  
      :param paths: 传入一个目录, 将在该目录下寻找 ``train.label.jsonl`` , ``dev.label.jsonl`` ,
          ``test.label.jsonl`` 三个文件（该目录还应该需要有一个名字为 ``vocab`` 的文件，在 :class:`~fastNLP.io.pipe.ExtCNNDMPipe`
          当中需要用到）。
  
      :return: :class:`~fastNLP.io.DataBundle`
      """
      if paths is None:
          paths = self.download()
      paths = check_loader_paths(paths)
      if ("train" in paths) and ("test" not in paths):
          paths["test"] = paths["train"]
          paths.pop("train")
  
      datasets = {
          name: self._load(path) for name, path in paths.items()
      }
      data_bundle = DataBundle(datasets=datasets)
      return data_bundle
  
file_path: fastNLP/fastNLP/io/loader/summarization.py
imports: import os
  from typing import Union, Dict
  from ..data_bundle import DataBundle
  from ..utils import check_loader_paths
  from .json import JsonLoader
label_desc: Use image node_id 2 for calling the ExtCNNDMLoader obj's underlying member method code with example usage: obj.load(paths) and returns: data_bundle