You've already forked ComfyUI-WanVideoWrapper
mirror of
https://github.com/kijai/ComfyUI-WanVideoWrapper.git
synced 2026-01-26 23:41:35 +03:00
commit 73dd1a06d33953912f5dd684f168028b14e42a36 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Mon Oct 13 19:47:38 2025 +0300 cleanup commit 39bc2cecf493e2eb176b55e8841d933f0da1ec39 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Mon Oct 13 19:24:20 2025 +0300 Allow scheduling ovi cfg commit 2c153c5f324dbd59670ad9c51a7995459504a3cd Merge: dba766732eb6b4Author: kijai <40791699+kijai@users.noreply.github.com> Date: Mon Oct 13 17:48:20 2025 +0300 Merge branch 'main' into ovi commit dba76674c71af7bf94c82834a0b0e40d94043c99 Merge: 0f11a435a0456eAuthor: kijai <40791699+kijai@users.noreply.github.com> Date: Sun Oct 12 22:45:43 2025 +0300 Merge branch 'main' into ovi commit 0f11a439622799ad8070f8a2b8cc8e6a041b761d Merge: 0999f50e2d8c9bAuthor: kijai <40791699+kijai@users.noreply.github.com> Date: Sat Oct 11 07:48:06 2025 +0300 Merge branch 'main' into ovi commit 0999f50cfe025290cd7ce88a8dd1acff0b38d9bd Merge: d45df1ff1d1c83Author: kijai <40791699+kijai@users.noreply.github.com> Date: Fri Oct 10 22:16:09 2025 +0300 Merge branch 'main' into ovi commit d45df1fb5b7c629b15eabc197357d62bdc232aaf Author: kijai <40791699+kijai@users.noreply.github.com> Date: Thu Oct 9 20:21:37 2025 +0300 Remove dependency for librosa commit d8e7533fdf7eab1d2489c3e025a908c02d997444 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Thu Oct 9 19:57:28 2025 +0300 Remove omegaconf dependency commit f4e27ff018e98cb5b09655dceda399baea36b240 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Thu Oct 9 19:31:06 2025 +0300 Fix VACE commit 35d3df39294831e5e7568b6f7e16d2ecf2d790a0 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Thu Oct 9 00:26:40 2025 +0300 small update commit 96f8ea1d26869ab7e49e12a07f19d5d5a2023253 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 22:32:57 2025 +0300 Create wanvideo_2_2_5B_ovi_testing.json commit a2511be73b9da7019fd21aeb0b521af941c09150 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 22:32:54 2025 +0300 Update nodes_sampler.py commit d3688b8db71452ea1f7c9a2bc0216441d524e56c Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 21:43:02 2025 +0300 Allow EasyCache to work with ovi commit 586d9148a0306ef5d30e9a971a9c3be4cd3ecc97 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 19:09:06 2025 +0300 Update model.py commit 61eedd2839decdb7d4c2ddd5f1310fdaf49d36ad Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 19:09:02 2025 +0300 I2V fix commit a97fcb1b9ae9fb7bbfdf668c24816e014a1b58d1 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 17:57:28 2025 +0300 Add nodes to set audio latent size commit d41e42a697f3d561dabbc22566f633b5f1bbd952 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 16:42:04 2025 +0300 Support loading mmaudio vae from .safetensors commit 1b0e28ec41e3c97fe1f2f057fef9b9bbcb87bca7 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 16:19:53 2025 +0300 Update nodes_sampler.py commit fbd18f45fe85ede8edcb5aebaea7ceb5b6eab5a2 Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 10:16:44 2025 +0300 Fixes for other workflows commit b06993b637198f7fad92208f3b3dc9a7d7f57c7f Author: kijai <40791699+kijai@users.noreply.github.com> Date: Wed Oct 8 09:46:27 2025 +0300 initial commit T2V works
83 lines
2.4 KiB
Python
83 lines
2.4 KiB
Python
# Copyright 2024-2025 The Alibaba Wan Team Authors. All rights reserved.
|
|
import html
|
|
import string
|
|
|
|
import ftfy
|
|
import regex as re
|
|
from transformers import AutoTokenizer
|
|
|
|
__all__ = ['HuggingfaceTokenizer']
|
|
|
|
|
|
def basic_clean(text):
|
|
text = ftfy.fix_text(text)
|
|
text = html.unescape(html.unescape(text))
|
|
return text.strip()
|
|
|
|
|
|
def whitespace_clean(text):
|
|
text = re.sub(r'\s+', ' ', text)
|
|
text = text.strip()
|
|
return text
|
|
|
|
|
|
# def canonicalize(text, keep_punctuation_exact_string=None):
|
|
# text = text.replace('_', ' ')
|
|
# if keep_punctuation_exact_string:
|
|
# text = keep_punctuation_exact_string.join(
|
|
# part.translate(str.maketrans('', '', string.punctuation))
|
|
# for part in text.split(keep_punctuation_exact_string))
|
|
# else:
|
|
# text = text.translate(str.maketrans('', '', string.punctuation))
|
|
# text = text.lower()
|
|
# text = re.sub(r'\s+', ' ', text)
|
|
# return text.strip()
|
|
|
|
|
|
class HuggingfaceTokenizer:
|
|
|
|
def __init__(self, name, seq_len=None, clean=None, **kwargs):
|
|
assert clean in (None, 'whitespace', 'lower', 'canonicalize')
|
|
self.name = name
|
|
self.seq_len = seq_len
|
|
self.clean = clean
|
|
|
|
# init tokenizer
|
|
self.tokenizer = AutoTokenizer.from_pretrained(name, **kwargs)
|
|
self.vocab_size = self.tokenizer.vocab_size
|
|
|
|
def __call__(self, sequence, **kwargs):
|
|
return_mask = kwargs.pop('return_mask', False)
|
|
|
|
# arguments
|
|
_kwargs = {'return_tensors': 'pt'}
|
|
if self.seq_len is not None:
|
|
_kwargs.update({
|
|
'padding': 'max_length',
|
|
'truncation': True,
|
|
'max_length': self.seq_len
|
|
})
|
|
_kwargs.update(**kwargs)
|
|
|
|
# tokenization
|
|
if isinstance(sequence, str):
|
|
sequence = [sequence]
|
|
if self.clean:
|
|
sequence = [self._clean(u) for u in sequence]
|
|
ids = self.tokenizer(sequence, **_kwargs)
|
|
|
|
# output
|
|
if return_mask:
|
|
return ids.input_ids, ids.attention_mask
|
|
else:
|
|
return ids.input_ids
|
|
|
|
def _clean(self, text):
|
|
if self.clean == 'whitespace':
|
|
text = whitespace_clean(basic_clean(text))
|
|
elif self.clean == 'lower':
|
|
text = whitespace_clean(basic_clean(text)).lower()
|
|
elif self.clean == 'canonicalize':
|
|
text = canonicalize(basic_clean(text))
|
|
return text
|