def get_counts(self, docs: List[str], doc_ids: List[Any])-> Generator[Tuple[KeysView, ValuesView, List[int]], Any, None]:
logger.info("<STR_LIT>")<EOL>batch_ngrams = list(self.tokenizer(docs))<EOL>logger.info("<STR_LIT>")<EOL>doc_id = iter(doc_ids)<EOL>for ngrams in batch_ngrams:<EOL><INDENT>counts = Counter([hash_(gram, self.hash_size) for gram in ngrams])<EOL>hashes = counts.keys()<EOL>values = counts.values()<EOL>_id = self.doc_index[next(doc_id)]<EOL>if values:<EOL><INDENT>col_id = [_id] * len(values)<EOL><DEDENT>else:<EOL><INDENT>col_id = []<EOL><DEDENT>yield hashes, values, col_id<EOL><DEDENT>
Get term counts for a list of documents.

        Args:
            docs: a list of input documents
            doc_ids: a list of document ids corresponding to input documents

        Yields:
            a tuple of term hashes, count values and column ids

        Returns:
            None