diff --git a/src/novelai_python/credential/UserAuth.py b/src/novelai_python/credential/UserAuth.py index bc0ac08..f4e1a78 100755 --- a/src/novelai_python/credential/UserAuth.py +++ b/src/novelai_python/credential/UserAuth.py @@ -19,7 +19,7 @@ class LoginCredential(CredentialBase): """ username: str = Field(None, description="username") password: SecretStr = Field(None, description="password") - _session_headers: dict = {} + _session_headers: dict = Field(default_factory=dict) _update_at: Optional[int] = None _x_correlation_id: str = shortuuid.uuid()[0:6] diff --git a/src/novelai_python/sdk/ai/generate/__init__.py b/src/novelai_python/sdk/ai/generate/__init__.py index e01b172..b497f46 100644 --- a/src/novelai_python/sdk/ai/generate/__init__.py +++ b/src/novelai_python/sdk/ai/generate/__init__.py @@ -306,6 +306,7 @@ def build(cls, ) -> "LLM": """ Generate + :param phrase_rep_pen: Phrase_rep_pen :param prompt: prompt, exp "Hello, World!" :param model: TextLLMModelTypeAlias :param advanced_setting: AdvanceLLMSetting, default None means auto-select diff --git a/src/novelai_python/sdk/ai/generate/_schema.py b/src/novelai_python/sdk/ai/generate/_schema.py index c8e460a..c5ffdae 100644 --- a/src/novelai_python/sdk/ai/generate/_schema.py +++ b/src/novelai_python/sdk/ai/generate/_schema.py @@ -92,7 +92,7 @@ class AdvanceLLMSetting(BaseModel): prefix: Optional[str] = "" logit_bias_exp: Optional[List[LogitBiasGroup]] = None num_logprobs: Optional[int] = None - order: List[int] = [] + order: List[int] = Field(default_factory=list) bracket_ban: Optional[bool] = True model_config = ConfigDict(extra="allow") @@ -116,7 +116,7 @@ class LLMGenerationParams(BaseModel): eos_token_id: int = None bad_words_ids: List[List[int]] = None - logit_bias_groups: Optional[List[LogitBiasGroup]] = [] + logit_bias_groups: Optional[List[LogitBiasGroup]] = Field(default_factory=list) repetition_penalty_frequency: Optional[Union[float, int]] = Field(default=None, allow_inf_nan=False) repetition_penalty_presence: Optional[Union[float, int]] = Field(default=None, allow_inf_nan=False) @@ -133,19 +133,21 @@ class LLMGenerationParams(BaseModel): math1_quad_entropy_scale: Optional[Union[float, int]] = Field(default=None, allow_inf_nan=False) min_p: Optional[Union[float, int]] = Field(default=None, allow_inf_nan=False) - order: Union[List[int], List[KeyOrderEntry]] = [ - KeyOrderEntry(id=Key.Cfg, enabled=False), - KeyOrderEntry(id=Key.Temperature, enabled=True), - KeyOrderEntry(id=Key.TopK, enabled=True), - KeyOrderEntry(id=Key.TopP, enabled=True), - KeyOrderEntry(id=Key.TFS, enabled=True), - KeyOrderEntry(id=Key.TopA, enabled=False), - KeyOrderEntry(id=Key.TypicalP, enabled=False), - KeyOrderEntry(id=Key.TopG, enabled=False), - KeyOrderEntry(id=Key.Mirostat, enabled=False), - KeyOrderEntry(id=Key.Math1, enabled=False), - KeyOrderEntry(id=Key.MinP, enabled=False), - ] + order: Union[List[int], List[KeyOrderEntry]] = Field( + default=[ + KeyOrderEntry(id=Key.Cfg, enabled=False), + KeyOrderEntry(id=Key.Temperature, enabled=True), + KeyOrderEntry(id=Key.TopK, enabled=True), + KeyOrderEntry(id=Key.TopP, enabled=True), + KeyOrderEntry(id=Key.TFS, enabled=True), + KeyOrderEntry(id=Key.TopA, enabled=False), + KeyOrderEntry(id=Key.TypicalP, enabled=False), + KeyOrderEntry(id=Key.TopG, enabled=False), + KeyOrderEntry(id=Key.Mirostat, enabled=False), + KeyOrderEntry(id=Key.Math1, enabled=False), + KeyOrderEntry(id=Key.MinP, enabled=False), + ] + ) def get_base_map(self): parameters = self.model_dump(mode="json", exclude_none=True) diff --git a/src/novelai_python/sdk/ai/generate_image/schema.py b/src/novelai_python/sdk/ai/generate_image/schema.py index db8a7d6..e302343 100644 --- a/src/novelai_python/sdk/ai/generate_image/schema.py +++ b/src/novelai_python/sdk/ai/generate_image/schema.py @@ -77,7 +77,7 @@ class CharCaption(BaseModel): class Caption(BaseModel): base_caption: str = Field("", description="Main Prompt") """Main Prompt""" - char_captions: List[CharCaption] = Field([], description="Character Captions") + char_captions: List[CharCaption] = Field(default_factory=list, description="Character Captions") """Character Captions""" diff --git a/src/novelai_python/tokenizer/clip_simple_tokenizer.py b/src/novelai_python/tokenizer/clip_simple_tokenizer.py index 41197d2..0942ff5 100644 --- a/src/novelai_python/tokenizer/clip_simple_tokenizer.py +++ b/src/novelai_python/tokenizer/clip_simple_tokenizer.py @@ -105,11 +105,12 @@ def bpe(self, token): new_word = [] i = 0 while i < len(word): + # noinspection PyBroadException try: j = word.index(first, i) new_word.extend(word[i:j]) i = j - except: + except Exception: new_word.extend(word[i:]) break @@ -151,4 +152,4 @@ def get_vocab(self): if __name__ == '__main__': tokenizer = SimpleTokenizer() - print(len(tokenizer.get_vocab())) \ No newline at end of file + print(len(tokenizer.get_vocab()))