code: 
  
  
  
  
  
  
  import random
  import unittest
  
  import numpy as np
  import torch
  from PIL import Image
  from torch import nn
  from transformers import (
      CLIPImageProcessor,
      CLIPTextConfig,
      CLIPTextModelWithProjection,
      CLIPTokenizer,
      CLIPVisionConfig,
      CLIPVisionModelWithProjection,
  )
  
  from diffusers import KandinskyVaaPriorEmbaEmbPipeline, PriorTransformer, UnCLIPScheduler
  from diffusers.utils import floats_tensor, torch_device
  from diffusers.utils.testing_utils import enable_full_determinism, skip_mps
  
  from ..test_pipelines_common import PipelineTesterMixin
  
  
  enable_full_determinism()
  
  
  
  class 							_A (    UpperCamelCase				,				unittest.TestCase							):
      """simple docstring"""
  
      lowerCamelCase  :       int   =   KandinskyVaaPriorEmbaEmbPipeline
      lowerCamelCase  :       Tuple   =   ['prompt', 'image']
      lowerCamelCase  :       Union[str, Any]   =   ['prompt', 'image']
      lowerCamelCase  :       List[Any]   =   [
          'num_images_per_prompt',
          'strength',
          'generator',
          'num_inference_steps',
          'latents',
          'negative_prompt',
          'guidance_scale',
          'output_type',
          'return_dict',
      ]
      lowerCamelCase  :       Optional[Any]   =   False
  
  
  
      @property
      def _a       (							self			:    Dict			)			->       Optional[Any]:
             return 32
  
  
  
      @property
      def _a       (							self			:    Optional[Any]			)			->       Dict:
             return 32
  
  
  
      @property
      def _a       (							self			:    List[str]			)			->       Tuple:
             return self.time_input_dim
  
  
  
      @property
      def _a       (							self			:    Dict			)			->       Optional[Any]:
             return self.time_input_dim * 4
  
  
  
      @property
      def _a       (							self			:    Optional[int]			)			->       Any:
             return 100
  
  
  
      @property
      def _a       (							self			:    int			)			->       Union[str, Any]:
             __UpperCAmelCase    							=CLIPTokenizer.from_pretrained("""hf-internal-testing/tiny-random-clip"""			)
             return tokenizer
  
  
  
      @property
      def _a       (							self			:    Optional[int]			)			->       Tuple:
             torch.manual_seed(0			)
             __UpperCAmelCase    							=CLIPTextConfig(
                 bos_token_id=0   ,    eos_token_id=2   ,    hidden_size=self.text_embedder_hidden_size   ,    projection_dim=self.text_embedder_hidden_size   ,    intermediate_size=37   ,    layer_norm_eps=1e-05   ,    num_attention_heads=4   ,    num_hidden_layers=5   ,    pad_token_id=1   ,    vocab_size=1000   ,    )
             return CLIPTextModelWithProjection(__SCREAMING_SNAKE_CASE			)
  
  
  
      @property
      def _a       (							self			:    Union[str, Any]			)			->       str:
             torch.manual_seed(0			)
  
             __UpperCAmelCase    							={
                 """num_attention_heads""": 2,
                 """attention_head_dim""": 12,
                 """embedding_dim""": self.text_embedder_hidden_size,
                 """num_layers""": 1,
             }
  
             __UpperCAmelCase    							=PriorTransformer(**__SCREAMING_SNAKE_CASE			)
             # clip_std and clip_mean is initialized to be 0 so PriorTransformer.post_process_latents will always return 0 - set clip_std to be 1 so it won't return 0
             __UpperCAmelCase    							=nn.Parameter(torch.ones(model.clip_std.shape			)			)
             return model
  
  
  
      @property
      def _a       (							self			:    Tuple			)			->       int:
             torch.manual_seed(0			)
             __UpperCAmelCase    							=CLIPVisionConfig(
                 hidden_size=self.text_embedder_hidden_size   ,    image_size=224   ,    projection_dim=self.text_embedder_hidden_size   ,    intermediate_size=37   ,    num_attention_heads=4   ,    num_channels=3   ,    num_hidden_layers=5   ,    patch_size=14   ,    )
  
             __UpperCAmelCase    							=CLIPVisionModelWithProjection(__SCREAMING_SNAKE_CASE			)
             return model
  
  
  
      @property
      def _a       (							self			:    str			)			->       str:
             __UpperCAmelCase    							=CLIPImageProcessor(
                 crop_size=224   ,    do_center_crop=__SCREAMING_SNAKE_CASE   ,    do_normalize=__SCREAMING_SNAKE_CASE   ,    do_resize=__SCREAMING_SNAKE_CASE   ,    image_mean=[0.48_145_466, 0.4_578_275, 0.40_821_073]   ,    image_std=[0.26_862_954, 0.26_130_258, 0.27_577_711]   ,    resample=3   ,    size=224   ,    )
  
             return image_processor
  
  
  
      def _a       (							self			:    str			)			->       str:
             __UpperCAmelCase    							=self.dummy_prior
             __UpperCAmelCase    							=self.dummy_image_encoder
             __UpperCAmelCase    							=self.dummy_text_encoder
             __UpperCAmelCase    							=self.dummy_tokenizer
             __UpperCAmelCase    							=self.dummy_image_processor
  
             __UpperCAmelCase    							=UnCLIPScheduler(
                 variance_type="""fixed_small_log"""   ,    prediction_type="""sample"""   ,    num_train_timesteps=1000   ,    clip_sample=__SCREAMING_SNAKE_CASE   ,    clip_sample_range=10.0   ,    )
  
             __UpperCAmelCase    							={
                 """prior""": prior,
                 """image_encoder""": image_encoder,
                 """text_encoder""": text_encoder,
                 """tokenizer""": tokenizer,
                 """scheduler""": scheduler,
                 """image_processor""": image_processor,
             }
  
             return components
  
  
  
      def _a       (							self			:    Optional[Any]   ,    __SCREAMING_SNAKE_CASE			:    Any   ,    __SCREAMING_SNAKE_CASE			:    Optional[int]=0			)			->       Union[str, Any]:
             if str(__SCREAMING_SNAKE_CASE			).startswith("""mps"""			):
                    __UpperCAmelCase    							=torch.manual_seed(__SCREAMING_SNAKE_CASE			)
             else:
                    __UpperCAmelCase    							=torch.Generator(device=__SCREAMING_SNAKE_CASE			).manual_seed(__SCREAMING_SNAKE_CASE			)
  
             __UpperCAmelCase    							=floats_tensor((1, 3, 64, 64)   ,    rng=random.Random(__SCREAMING_SNAKE_CASE			)			).to(__SCREAMING_SNAKE_CASE			)
             __UpperCAmelCase    							=image.cpu().permute(0   ,    2   ,    3   ,    1			)[0]
             __UpperCAmelCase    							=Image.fromarray(np.uinta(__SCREAMING_SNAKE_CASE			)			).convert("""RGB"""			).resize((256, 256)			)
  
             __UpperCAmelCase    							={
                 """prompt""": """horse""",
                 """image""": init_image,
                 """strength""": 0.5,
                 """generator""": generator,
                 """guidance_scale""": 4.0,
                 """num_inference_steps""": 2,
                 """output_type""": """np""",
             }
             return inputs
  
  
  
      def _a       (							self			:    Union[str, Any]			)			->       Tuple:
             __UpperCAmelCase    							="""cpu"""
  
             __UpperCAmelCase    							=self.get_dummy_components()
  
             __UpperCAmelCase    							=self.pipeline_class(**__SCREAMING_SNAKE_CASE			)
             __UpperCAmelCase    							=pipe.to(__SCREAMING_SNAKE_CASE			)
  
             pipe.set_progress_bar_config(disable=__SCREAMING_SNAKE_CASE			)
  
             __UpperCAmelCase    							=pipe(**self.get_dummy_inputs(__SCREAMING_SNAKE_CASE			)			)
             __UpperCAmelCase    							=output.image_embeds
  
             __UpperCAmelCase    							=pipe(
                 **self.get_dummy_inputs(__SCREAMING_SNAKE_CASE			)   ,    return_dict=__SCREAMING_SNAKE_CASE   ,    )[0]
  
             __UpperCAmelCase    							=image[0, -10:]
             __UpperCAmelCase    							=image_from_tuple[0, -10:]
  
             assert image.shape == (1, 32)
  
             __UpperCAmelCase    							=np.array(
                 [
                     0.1_071_284,
                     1.3_330_271,
                     0.61_260_223,
                     -0.6_691_065,
                     -0.3_846_852,
                     -1.0_303_661,
                     0.22_716_111,
                     0.03_348_901,
                     0.30_040_675,
                     -0.24_805_029,
                 ]			)
  
             assert np.abs(image_slice.flatten() - expected_slice			).max() < 1e-2
             assert np.abs(image_from_tuple_slice.flatten() - expected_slice			).max() < 1e-2
  
  
  
      @skip_mps
      def _a       (							self			:    Optional[int]			)			->       Optional[Any]:
             __UpperCAmelCase    							=torch_device == """cpu"""
             __UpperCAmelCase    							=True
             __UpperCAmelCase    							=False
  
             self._test_inference_batch_single_identical(
                 test_max_difference=__SCREAMING_SNAKE_CASE   ,    relax_max_difference=__SCREAMING_SNAKE_CASE   ,    test_mean_pixel_difference=__SCREAMING_SNAKE_CASE   ,    )
  
  
  
      @skip_mps
      def _a       (							self			:    str			)			->       List[str]:
             __UpperCAmelCase    							=torch_device == """cpu"""
             __UpperCAmelCase    							=False
  
             self._test_attention_slicing_forward_pass(
                 test_max_difference=__SCREAMING_SNAKE_CASE   ,    test_mean_pixel_difference=__SCREAMING_SNAKE_CASE   ,    )
  
  
  
  
  
style_context: 
  
  
  
  
  
  
  import math as m
  
  
  
  
  
  
  
  def 			lowercase__  (				A_:	Tuple     ,			A_:	str     ,			A_:	Union[str, Any]=0.0_0_1		)  ->							List[str]:
  
  
  
  
  
  
  
         """simple docstring"""
  
  
  
  
  
  
         return (f(a + h		) - f(a - h		)) / (2 * h)
  
  
  
  
  
  
  
  def 			lowercase__  (				A_:	str     ,			A_:	Union[str, Any]=0     ,			A_:	List[Any]=100     ,			A_:	Optional[Any]=0.0_0_0_1     ,			A_:	Tuple=1e-6     ,			A_:	Union[str, Any]=False		)  ->							Union[str, Any]:
  
  
  
  
  
  
  
         """simple docstring"""
  
  
  
  
  
  
         __UpperCAmelCase    							=xa  # set the initial guess
         __UpperCAmelCase    							=[a]
         __UpperCAmelCase    							=abs(f(A_		)		)
         __UpperCAmelCase    							=lambda A_		: calc_derivative(A_     ,			A_     ,			h=A_		)  # noqa: E731  Derivative of f(x)
         for _ in range(A_		):
                if fa(A_		) == 0:
                       raise ValueError("""No converging solution found"""		)
                __UpperCAmelCase    							=a - f(A_		) / fa(A_		)  # Calculate the next estimate
                if logsteps:
                       steps.append(A_		)
                if error < maxerror:
                       break
         else:
                raise ValueError("""Iteration limit reached, no converging solution found"""		)
         if logsteps:
                # If logstep is true, then log intermediate steps
                return a, error, steps
         return a, error
  
  
  if __name__ == "__main__":
     from matplotlib import pyplot as plt
  
     __A  							=  lambda x: m.tanh(x) ** 2 - m.exp(3 * x)  # noqa: E731
     __A							,    __A							,    __A  							=  newton_raphson(
         f, xa=10, maxiter=10_00, step=1E-6, logsteps=True
     )
     plt.plot([abs(f(x)) for x in steps])
     plt.xlabel("step")
     plt.ylabel("error")
     plt.show()
     print(F"""solution = {{{solution:f}}}, error = {{{error:f}}}""")
  
  
  
  
  