          msg.divider(f"STEP 2 - after training")
          _print_model(model, print_settings)
  
      # STEP 3: the final prediction
      prediction = model.predict(X)
      if print_settings.get("print_prediction"):
          msg.divider(f"STEP 3 - prediction")
          msg.info(str(prediction))
  
      msg.good(f"Succesfully ended analysis - model looks good.")
 
</s> remove         if tok2vec:
            tok2vec.update([Example.from_dict(x, {}) for x in X])
        Y, get_dX = model.begin_update(X)
        if goldY is None:
            goldY = _simulate_gold(Y)
        dY = get_gradient(goldY, Y, model.ops)
        get_dX(dY)
        model.finish_update(optimizer)
 </s> add         if upstream_component:
            upstream_component.update(examples)
        pipe.update(examples) </s> remove     X = _get_docs()
    # The output vector might differ from the official type of the output layer
 </s> add  </s> remove def get_gradient(goldY, Y, ops):
    return ops.asarray(Y) - ops.asarray(goldY)


def _simulate_gold(element, counter=1):
    if isinstance(element, Iterable):
        for i in range(len(element)):
            element[i] = _simulate_gold(element[i], counter + i)
        return element
    else:
        return 1 / counter


 </s> add  </s> remove                     "Could not initialize the model: you'll have to provide a valid train_corpus argument in the config file.",
 </s> add                     "Could not initialize the model: you'll have to provide a valid 'train_corpus' argument in the config file.", </s> remove     # ugly hack to deal with Tok2Vec listeners
    tok2vec = None
    if model.has_ref("tok2vec") and model.get_ref("tok2vec").name == "tok2vec-listener":
        tok2vec = nlp.get_pipe("tok2vec")
 </s> add     # ugly hack to deal with Tok2Vec/Transformer listeners
    upstream_component = None
    if model.has_ref("tok2vec") and "tok2vec-listener" in model.get_ref("tok2vec").name:
        upstream_component = nlp.get_pipe("tok2vec")
    if model.has_ref("tok2vec") and "transformer-listener" in model.get_ref("tok2vec").name:
        upstream_component = nlp.get_pipe("transformer")
    prediction = model.predict([ex.predicted for ex in examples])
          msg.divider(f"STEP 2 - after training")
          _print_model(model, print_settings)
  
      # STEP 3: the final prediction
    prediction = model.predict([ex.predicted for ex in examples])
      if print_settings.get("print_prediction"):
          msg.divider(f"STEP 3 - prediction")
          msg.info(str(prediction))
  
      msg.good(f"Succesfully ended analysis - model looks good.")
keep keep keep keep replace keep keep keep keep keep
 Fix 'debug model' for transformers + generalize (#7973)

* add overrides to docs

* fix debug model with transformer

* assume training data is set in config 
spacy/cli/debug_model.py