class_docstr: Pipeline for generating image prior for Wuerstchen.
  
  This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the
  library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)
  
  Args:
      prior ([`Prior`]):
          The canonical unCLIP prior to approximate the image embedding from the text embedding.
      text_encoder ([`CLIPTextModelWithProjection`]):
          Frozen text-encoder.
      tokenizer (`CLIPTokenizer`):
          Tokenizer of class
          [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).
      scheduler ([`DDPMWuerstchenScheduler`]):
          A scheduler to be used in combination with `prior` to generate image embedding.
      latent_mean ('float', *optional*, defaults to 42.0):
          Mean value for latent diffusers.
      latent_std ('float', *optional*, defaults to 1.0):
          Standard value for latent diffusers.
      resolution_multiple ('float', *optional*, defaults to 42.67):
          Default resolution for multiple images generated.
class_docstr_tok: ["Pipeline","for","generating","image","prior","for","Wuerstchen",".","This","model","inherits","from","[","`","DiffusionPipeline","`","]",".","Check","the","superclass","documentation","for","the","generic","methods","the","library","implements","for","all","the","pipelines","(","such","as","downloading","or","saving",",","running","on","a","particular","device",",","etc",".",")","Args",":","prior","(","[","`","Prior","`","]",")",":","The","canonical","unCLIP","prior","to","approximate","the","image","embedding","from","the","text","embedding",".","text_encoder","(","[","`","CLIPTextModelWithProjection","`","]",")",":","Frozen","text-encoder",".","tokenizer","(","`","CLIPTokenizer","`",")",":","Tokenizer","of","class","[","CLIPTokenizer","]","(","https",":","\/\/huggingface.co\/docs\/transformers\/v4.21.0\/en\/model_doc\/clip","#","transformers.CLIPTokenizer",")",".","scheduler","(","[","`","DDPMWuerstchenScheduler","`","]",")",":","A","scheduler","to","be","used","in","combination","with","`","prior","`","to","generate","image","embedding",".","latent_mean","(","'float","'",",","*","optional","*",",","defaults","to","42.0",")",":","Mean","value","for","latent","diffusers",".","latent_std","(","'float","'",",","*","optional","*",",","defaults","to","1.0",")",":","Standard","value","for","latent","diffusers",".","resolution_multiple","(","'float","'",",","*","optional","*",",","defaults","to","42.67",")",":","Default","resolution","for","multiple","images","generated","."]
code: def check_inputs(
      self,
      prompt,
      negative_prompt,
      num_inference_steps,
      do_classifier_free_guidance,
      prompt_embeds=None,
      negative_prompt_embeds=None,
  ):
      if prompt is not None and prompt_embeds is not None:
          raise ValueError(
              f"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to"
              " only forward one of the two."
          )
      elif prompt is None and prompt_embeds is None:
          raise ValueError(
              "Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined."
          )
      elif prompt is not None and (
          not isinstance(prompt, str) and not isinstance(prompt, list)
      ):
          raise ValueError(
              f"`prompt` has to be of type `str` or `list` but is {type(prompt)}"
          )
  
      if (
          negative_prompt is not None
          and negative_prompt_embeds is not None
      ):
          raise ValueError(
              f"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:"
              f" {negative_prompt_embeds}. Please make sure to only forward one of the two."
          )
  
      if (
          prompt_embeds is not None
          and negative_prompt_embeds is not None
      ):
          if prompt_embeds.shape != negative_prompt_embeds.shape:
              raise ValueError(
                  "`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but"
                  f" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`"
                  f" {negative_prompt_embeds.shape}."
              )
  
      if not isinstance(num_inference_steps, int):
          raise TypeError(
              f"'num_inference_steps' must be of type 'int', but got {type(num_inference_steps)}\
                             In Case you want to provide explicit timesteps, please use the 'timesteps' argument."
          )
  
file_path: llmga/llmga/diffusers/src/diffusers/pipelines/wuerstchen/pipeline_wuerstchen_prior.py
imports: from dataclasses import dataclass
  from math import ceil
  from typing import Callable, List, Optional, Union
  import numpy
  import torch
  from transformers import CLIPTextModel, CLIPTokenizer
  from ...schedulers import DDPMWuerstchenScheduler
  from ...utils import BaseOutput, logging, replace_example_docstring
  from ...utils.torch_utils import randn_tensor
  from ..pipeline_utils import DiffusionPipeline
  from .modeling_wuerstchen_prior import WuerstchenPrior
label_desc: Use image node_id 4 for calling the WuerstchenPriorPipeline obj's underlying member method code with example usage: obj.check_inputs(prompt, negative_prompt, num_inference_steps, do_classifier_free_guidance, prompt_embeds, negative_prompt_embeds) without return types