(self, prompt, clip_skip=1, device="cuda", positive=True)
| 61 | |
| 62 | |
| 63 | def encode_prompt(self, prompt, clip_skip=1, device="cuda", positive=True): |
| 64 | prompt = self.process_prompt(prompt, positive=positive) |
| 65 | for keyword in self.keyword_dict: |
| 66 | if keyword in prompt: |
| 67 | print(f"Textual inversion {keyword} is enabled.") |
| 68 | prompt = prompt.replace(keyword, self.keyword_dict[keyword]) |
| 69 | input_ids = tokenize_long_prompt(self.tokenizer, prompt).to(device) |
| 70 | prompt_emb = self.text_encoder(input_ids, clip_skip=clip_skip) |
| 71 | prompt_emb = prompt_emb.reshape((1, prompt_emb.shape[0]*prompt_emb.shape[1], -1)) |
| 72 | |
| 73 | return prompt_emb |
no test coverage detected