docstr: Scan the vocabulary, calculate ngrams and their hashes, and cache the list of ngrams for each known word.
docstr_tok: ["Scan","the","vocabulary",",","calculate","ngrams","and","their","hashes",",","and","cache","the","list","of","ngrams","for","each","known","word","."]
code: def recalc_char_ngram_buckets(self):
      """
      Scan the vocabulary, calculate ngrams and their hashes, and cache the list of ngrams for each known word.
  
      """
      # TODO: evaluate if precaching even necessary, compared to recalculating as needed.
      if self.bucket == 0:
          self.buckets_word = [np.array([], dtype=np.uint32)] * len(
              self.index_to_key
          )
          return
  
      self.buckets_word = [None] * len(self.index_to_key)
  
      for i, word in enumerate(self.index_to_key):
          self.buckets_word[i] = np.array(
              ft_ngram_hashes(
                  word, self.min_n, self.max_n, self.bucket
              ),
              dtype=np.uint32,
          )
  
imports: import logging
  import numpy
  from numpy import ones, vstack, float32
  import gensim.models._fasttext_bin
  from gensim.models.word2vec import Word2Vec
  from gensim.models.keyedvectors import KeyedVectors, prep_vectors
  from gensim import utils
  from gensim.utils import deprecated
  from gensim.models import keyedvectors
label_desc: Use image node_id 12 for calling the FastTextKeyedVectors obj's underlying member method code with example usage: obj.recalc_char_ngram_buckets() without return types