Back to Annotated Deep Learning Paper Implementations

ක්ලිප් පෙළ කාවැද්දන්නා

docs/si/diffusion/stable_diffusion/model/clip_embedder.html

latest2.4 KB
Original Source

homediffusionstable_diffusionmodel

View code on Github

#

ක්ලිප් පෙළ කාවැද්දන්නා

ස්ථාවර විසරණය සඳහා කඩිනම් කාවැද්දීම් ලබා ගැනීමට මෙය භාවිතා කරයි. එය HuggingFace ට්රාන්ස්ෆෝමර් Clip ආකෘතිය භාවිතා කරයි.

14fromtypingimportList1516fromtorchimportnn17fromtransformersimportCLIPTokenizer,CLIPTextModel

#

ක්ලිප් පෙළ කාවැද්දන්නා

20classCLIPTextEmbedder(nn.Module):

#

  • version යනු ආදර්ශ අනුවාදයයි
  • device උපාංගය වේ
  • max_length ටෝකනීකෘත විමසුමේ උපරිම දිග වේ
25def\_\_init\_\_(self,version:str="openai/clip-vit-large-patch14",device="cuda:0",max\_length:int=77):

#

31super().\_\_init\_\_()

#

ටෝකනයිසර් පටවන්න

33self.tokenizer=CLIPTokenizer.from\_pretrained(version)

#

ක්ලිප් ට්රාන්ස්ෆෝමරය පටවන්න

35self.transformer=CLIPTextModel.from\_pretrained(version).eval()3637self.device=device38self.max\_length=max\_length

#

  • prompts කාවැද්දීමට විමසීම් ලැයිස්තුව
40defforward(self,prompts:List[str]):

#

විමසීම් ටෝකන්ට් කරන්න

45batch\_encoding=self.tokenizer(prompts,truncation=True,max\_length=self.max\_length,return\_length=True,46return\_overflowing\_tokens=False,padding="max\_length",return\_tensors="pt")

#

ටෝකන් හැඳුනුම්පත් ලබා ගන්න

48tokens=batch\_encoding["input\_ids"].to(self.device)

#

ක්ලිප් කාවැද්දීම් ලබා ගන්න

50returnself.transformer(input\_ids=tokens).last\_hidden\_state

Trending Research Paperslabml.ai