class_docstr: A wrapper class to apply sklearn clustering models on DocumentEmbeddings.
class_docstr_tok: ["A","wrapper","class","to","apply","sklearn","clustering","models","on","DocumentEmbeddings","."]
docstr: Instantiate the ClusteringModel.
  
  Args:
      model: the clustering algorithm from sklearn this wrapper will use.
      embeddings: the flair DocumentEmbedding this wrapper uses to calculate a vector for each sentence.
docstr_tok: ["Instantiate","the","ClusteringModel",".","Args",":","model",":","the","clustering","algorithm","from","sklearn","this","wrapper","will","use",".","embeddings",":","the","flair","DocumentEmbedding","this","wrapper","uses","to","calculate","a","vector","for","each","sentence","."]
code: def __init__(
      self,
      model: Union[ClusterMixin, BaseEstimator],
      embeddings: DocumentEmbeddings,
  ) -> None:
      """Instantiate the ClusteringModel.
  
      Args:
          model: the clustering algorithm from sklearn this wrapper will use.
          embeddings: the flair DocumentEmbedding this wrapper uses to calculate a vector for each sentence.
      """
      self.model = model
      self.embeddings = embeddings
  
imports: import logging
  import pickle
  from collections import OrderedDict
  from pathlib import Path
  from typing import Optional, Union
  import joblib
  from sklearn.base import BaseEstimator, ClusterMixin
  from sklearn.metrics import normalized_mutual_info_score
  from tqdm import tqdm
  from flair.data import Corpus, _iter_dataset
  from flair.datasets import DataLoader
  from flair.embeddings import DocumentEmbeddings
label_desc: Use image node_id 1 to create a new ClusteringModel object  with example: obj = ClusteringModel(model, embeddings)