enums.py 625 B

12345678910111213141516171819202122232425
  1. from enum import Enum
  2. class SystemVariable(str, Enum):
  3. """
  4. System Variables.
  5. """
  6. QUERY = 'query'
  7. FILES = 'files'
  8. CONVERSATION_ID = 'conversation_id'
  9. USER_ID = 'user_id'
  10. DIALOGUE_COUNT = 'dialogue_count'
  11. @classmethod
  12. def value_of(cls, value: str):
  13. """
  14. Get value of given system variable.
  15. :param value: system variable value
  16. :return: system variable
  17. """
  18. for system_variable in cls:
  19. if system_variable.value == value:
  20. return system_variable
  21. raise ValueError(f'invalid system variable value {value}')