MCPcopy
hub / github.com/vladmandic/sdnext / scheduled_encode

Method scheduled_encode

modules/prompt_parser_diffusers.py:182–193  ·  view source on GitHub ↗
(self, pipe, batchidx)

Source from the content-addressed store, hash-verified

180 debug(f"Prompt schedule: positive={self.positive_schedule} negative={self.negative_schedule} scheduled={scheduled}")
181
182 def scheduled_encode(self, pipe, batchidx):
183 prompt_dict = {} # index cache
184 for i in range(max(len(self.positive_schedule), len(self.negative_schedule))):
185 positive_prompt = self.positive_schedule[i % len(self.positive_schedule)]
186 negative_prompt = self.negative_schedule[i % len(self.negative_schedule)]
187 # skip repeated scheduled subprompts
188 idx = prompt_dict.get(positive_prompt+negative_prompt)
189 if idx is not None:
190 self.extend_embeds(batchidx, idx)
191 continue
192 self.encode(pipe, positive_prompt, negative_prompt, batchidx)
193 prompt_dict[positive_prompt+negative_prompt] = i
194
195 def extend_embeds(self, batchidx, idx): # Extends scheduled prompt via index
196 if len(self.prompt_embeds[batchidx]) > 0:

Callers 1

__init__Method · 0.95

Calls 3

extend_embedsMethod · 0.95
encodeMethod · 0.95
getMethod · 0.45

Tested by

no test coverage detected