code: def check_learns_zero_output(model, sgd, X, Y):
      """Check we can learn to output a zero vector"""
      Yh, get_dX = model.begin_update(X)
      dYh = (Yh - Y) / Yh.shape[0]
      dX = get_dX(dYh)
      model.finish_update(sgd)
      prev = numpy.abs(Yh.sum())
      for i in range(100):
          Yh, get_dX = model.begin_update(X)
          total = numpy.abs(Yh.sum())
          dX = get_dX(Yh - Y)  # noqa: F841
          model.finish_update(sgd)
      assert total < prev
  
file_path: thinc/thinc/tests/layers/test_pytorch_wrapper.py
imports: import numpy
  import pytest
  from thinc.api import SGD, ArgsKwargs, CupyOps, Linear, MPSOps, NumpyOps, PyTorchWrapper, PyTorchWrapper_v2, PyTorchWrapper_v3, Relu, chain, get_current_ops, torch2xp, use_ops, xp2torch
  from thinc.backends import context_pools
  from thinc.compat import has_cupy_gpu, has_torch, has_torch_amp, has_torch_mps_gpu
  from thinc.layers.pytorchwrapper import PyTorchWrapper_v3
  from thinc.shims.pytorch import default_deserialize_torch_model, default_serialize_torch_model
  from thinc.shims.pytorch_grad_scaler import PyTorchGradScaler
  from thinc.util import get_torch_default_device
  from ..util import check_input_converters, make_tempdir
label_desc: Use image node_id 1 for calling a global function with example usage: check_learns_zero_output(model, sgd, X, Y) without return types