Conditional gan with pyorch failed

    G_sample = netG.forward(noise, label)
    D_real = netD.forward(mnist_img, label)
    D_fake = netD.forward(G_sample.detach(), label)

    D_loss_real = criterion(D_real, ones_label)
    D_loss_fake = criterion(D_fake, zeros_label)
    D_loss = D_loss_real + D_loss_fake

    netD.zero_grad()
    D_loss.backward()
    D_solver.step()
   

    netG.zero_grad()
    netD.zero_grad()
    G_sample = netG.forward(noise, label)
    output = netD.forward(G_sample, label)

    G_loss = criterion(output, ones_label)
    G_loss.backward()
    G_solver.step()

error info:

who can tell me why ? i have been trying to solve the problem for long. thanks very much !

Best not to expect someone to take your giant code and debug it for you.
Usually people help if it is small code snippet, 50 lines or less.