Generates a pure python (no numpy) response based on numpy arrays
        returned by `self.cosine` and `self.analogy`

def generate_response(self, indexes, metrics, clusters=True):
        """
        Generates a pure python (no numpy) response based on numpy arrays
        returned by `self.cosine` and `self.analogy`
        """
        if self.clusters and clusters:
            return np.rec.fromarrays(
                (self.vocab[indexes], metrics, self.clusters.clusters[indexes]),
                names=("word", "metric", "cluster"),
            )
        else:
            return np.rec.fromarrays((self.vocab[indexes], metrics), names=("word", "metric"))