Gemini
feat: add detailed logging
01d5a5d
from enum import Enum
from typing import List
class ProcessStep(Enum):
"""Training process steps"""
LIST_DOCUMENTS = "list_documents"
GENERATE_DOCUMENT_EMBEDDINGS = "generate_document_embeddings"
CHUNK_DOCUMENT = "process_chunks"
CHUNK_EMBEDDING = "chunk_embedding"
EXTRACT_DIMENSIONAL_TOPICS = "extract_dimensional_topics"
GENERATE_BIOGRAPHY = "generate_biography"
MODEL_DOWNLOAD = "model_download"
MAP_ENTITY_NETWORK = "map_your_entity_network"
DECODE_PREFERENCE_PATTERNS = "decode_preference_patterns"
REINFORCE_IDENTITY = "reinforce_identity"
AUGMENT_CONTENT_RETENTION = "augment_content_retention"
TRAIN = "train"
MERGE_WEIGHTS = "merge_weights"
CONVERT_MODEL = "convert_model"
@classmethod
def get_ordered_steps(cls) -> List["ProcessStep"]:
"""Get ordered steps"""
return [
cls.MODEL_DOWNLOAD,
cls.LIST_DOCUMENTS,
cls.GENERATE_DOCUMENT_EMBEDDINGS,
cls.CHUNK_DOCUMENT,
cls.CHUNK_EMBEDDING,
cls.EXTRACT_DIMENSIONAL_TOPICS,
cls.GENERATE_BIOGRAPHY,
cls.MAP_ENTITY_NETWORK,
cls.DECODE_PREFERENCE_PATTERNS,
cls.REINFORCE_IDENTITY,
cls.AUGMENT_CONTENT_RETENTION,
cls.TRAIN,
cls.MERGE_WEIGHTS,
cls.CONVERT_MODEL,
]
def get_method_name(self) -> str:
"""Get the corresponding method name for this step"""
return self.value