data_type.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. from enum import Enum
  2. class DirectDataType(Enum):
  3. """
  4. DirectDataType enum contains data types that contain raw data directly.
  5. """
  6. TEXT = "text"
  7. class IndirectDataType(Enum):
  8. """
  9. IndirectDataType enum contains data types that contain references to data stored elsewhere.
  10. """
  11. YOUTUBE_VIDEO = "youtube_video"
  12. PDF_FILE = "pdf_file"
  13. WEB_PAGE = "web_page"
  14. SITEMAP = "sitemap"
  15. DOCX = "docx"
  16. DOCS_SITE = "docs_site"
  17. NOTION = "notion"
  18. CSV = "csv"
  19. MDX = "mdx"
  20. IMAGES = "images"
  21. class SpecialDataType(Enum):
  22. """
  23. SpecialDataType enum contains data types that are neither direct nor indirect, or simply require special attention.
  24. """
  25. QNA_PAIR = "qna_pair"
  26. class DataType(Enum):
  27. TEXT = DirectDataType.TEXT.value
  28. YOUTUBE_VIDEO = IndirectDataType.YOUTUBE_VIDEO.value
  29. PDF_FILE = IndirectDataType.PDF_FILE.value
  30. WEB_PAGE = IndirectDataType.WEB_PAGE.value
  31. SITEMAP = IndirectDataType.SITEMAP.value
  32. DOCX = IndirectDataType.DOCX.value
  33. DOCS_SITE = IndirectDataType.DOCS_SITE.value
  34. NOTION = IndirectDataType.NOTION.value
  35. CSV = IndirectDataType.CSV.value
  36. MDX = IndirectDataType.MDX.value
  37. QNA_PAIR = SpecialDataType.QNA_PAIR.value
  38. IMAGES = IndirectDataType.IMAGES.value