MCPcopy Create free account
hub / github.com/cubiq/ComfyUI_IPAdapter_plus / get_image_embeds

Method get_image_embeds

IPAdapterPlus.py:136–165  ·  view source on GitHub ↗
(self, clip_embed, clip_embed_zeroed, batch_size)

Source from the content-addressed store, hash-verified

134
135 @torch.inference_mode()
136 def get_image_embeds(self, clip_embed, clip_embed_zeroed, batch_size):
137 torch_device = model_management.get_torch_device()
138 intermediate_device = model_management.intermediate_device()
139
140 if batch_size == 0:
141 batch_size = clip_embed.shape[0]
142 intermediate_device = torch_device
143 elif batch_size > clip_embed.shape[0]:
144 batch_size = clip_embed.shape[0]
145
146 clip_embed = torch.split(clip_embed, batch_size, dim=0)
147 clip_embed_zeroed = torch.split(clip_embed_zeroed, batch_size, dim=0)
148
149 image_prompt_embeds = []
150 uncond_image_prompt_embeds = []
151
152 for ce, cez in zip(clip_embed, clip_embed_zeroed):
153 image_prompt_embeds.append(self.image_proj_model(ce.to(torch_device)).to(intermediate_device))
154 uncond_image_prompt_embeds.append(self.image_proj_model(cez.to(torch_device)).to(intermediate_device))
155
156 del clip_embed, clip_embed_zeroed
157
158 image_prompt_embeds = torch.cat(image_prompt_embeds, dim=0)
159 uncond_image_prompt_embeds = torch.cat(uncond_image_prompt_embeds, dim=0)
160
161 torch.cuda.empty_cache()
162
163 #image_prompt_embeds = self.image_proj_model(clip_embed)
164 #uncond_image_prompt_embeds = self.image_proj_model(clip_embed_zeroed)
165 return image_prompt_embeds, uncond_image_prompt_embeds
166
167 @torch.inference_mode()
168 def get_image_embeds_faceid_plus(self, face_embed, clip_embed, s_scale, shortcut, batch_size):

Callers 1

ipadapter_executeFunction · 0.80

Calls 1

toMethod · 0.80

Tested by

no test coverage detected