123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- import warnings
- from typing import Optional
- import msgspec
- from aphrodite.adapter_commons.request import AdapterRequest
- class LoRARequest(
- msgspec.Struct,
- omit_defaults=True,
- array_like=True):
- """
- Request for a LoRA adapter.
- Note that this class should be be used internally. For online
- serving, it is recommended to not allow users to use this class but
- instead provide another layer of abstraction to prevent users from
- accessing unauthorized LoRA adapters.
- lora_int_id must be globally unique for a given adapter.
- This is currently not enforced in Aphrodite.
- """
- __metaclass__ = AdapterRequest
- lora_name: str
- lora_int_id: int
- lora_path: str = ""
- lora_local_path: Optional[str] = msgspec.field(default=None)
- long_lora_max_len: Optional[int] = None
- base_model_name: Optional[str] = msgspec.field(default=None)
- __hash__ = AdapterRequest.__hash__
- def __post_init__(self):
- if 'lora_local_path' in self.__struct_fields__:
- warnings.warn(
- "The 'lora_local_path' attribute is deprecated "
- "and will be removed in a future version. "
- "Please use 'lora_path' instead.",
- DeprecationWarning,
- stacklevel=2)
- if not self.lora_path:
- self.lora_path = self.lora_local_path or ""
- # Ensure lora_path is not empty
- assert self.lora_path, "lora_path cannot be empty"
- @property
- def adapter_id(self):
- return self.lora_int_id
- @property
- def name(self):
- return self.lora_name
- @property
- def path(self):
- return self.lora_path
- @property
- def local_path(self):
- warnings.warn(
- "The 'local_path' attribute is deprecated "
- "and will be removed in a future version. "
- "Please use 'path' instead.",
- DeprecationWarning,
- stacklevel=2)
- return self.lora_path
- @local_path.setter
- def local_path(self, value):
- warnings.warn(
- "The 'local_path' attribute is deprecated "
- "and will be removed in a future version. "
- "Please use 'path' instead.",
- DeprecationWarning,
- stacklevel=2)
- self.lora_path = value
|