<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def batch_geoparse(self, text_list):
 """ Batch geoparsing function. Take in a list of text documents and return a list of lists of the geoparsed documents. The speed improvements come exclusively from using spaCy's `nlp.pipe`. Parameters text_list : list of strs List of documents. The documents should not have been pre-processed by spaCy. Returns ------- processed : list of list of dictionaries. The list is the same length as the input list of documents. Each element is a list of dicts, one for each geolocated entity. """

        if not self.threads:
            print("batch_geoparsed should be used with threaded searches. Please set `threads=True` when initializing the geoparser.")
        nlped_docs = list(nlp.pipe(text_list, as_tuples=False, n_threads=multiprocessing.cpu_count()))
        processed = []
        for i in tqdm(nlped_docs, disable=not self.progress):
            p = self.geoparse(i)
            processed.append(p)
        return processed