base.py 656 B

1234567891011121314151617181920212223242526272829303132
  1. import logging
  2. from abc import abstractmethod
  3. from datetime import datetime
  4. from enum import Enum
  5. from typing import Any, Optional, Tuple, Union
  6. from uuid import UUID
  7. from pydantic import BaseModel
  8. from core.base import Message
  9. from ..providers.base import Provider, ProviderConfig
  10. logger = logging.getLogger()
  11. class RunInfoLog(BaseModel):
  12. run_id: UUID
  13. run_type: str
  14. timestamp: datetime
  15. user_id: UUID
  16. class RunType(str, Enum):
  17. """Enumeration of the different types of runs."""
  18. RETRIEVAL = "RETRIEVAL"
  19. MANAGEMENT = "MANAGEMENT"
  20. INGESTION = "INGESTION"
  21. AUTH = "AUTH"
  22. UNSPECIFIED = "UNSPECIFIED"
  23. KG = "KG"