196 lines
7.4 KiB
Python
196 lines
7.4 KiB
Python
from enum import Enum
|
|
|
|
|
|
class GenerationOwnerType(str, Enum):
|
|
CHAT_GENERATION_TASK = "chat_generation_task"
|
|
GENERATION_RECORD = "generation_record"
|
|
|
|
|
|
class GenerationMode(str, Enum):
|
|
CHATAPI_ASYNC = "chatapi_async"
|
|
CHATAPI_MAIN = "chatapi_main"
|
|
CHATAPI_CHILD = "chatapi_child"
|
|
HOT_OPENING_REPLICATE = "hot_opening_replicate"
|
|
SHOT_REPLICATE = "shot_replicate"
|
|
GENERATION_RECORD = "generation_record"
|
|
|
|
|
|
class GenerationType(str, Enum):
|
|
IMAGE = "image"
|
|
VIDEO = "video"
|
|
|
|
|
|
class ChatGenerationTaskStatus(str, Enum):
|
|
PENDING = "pending"
|
|
GENERATING = "generating"
|
|
COMPLETED = "completed"
|
|
FAILED = "failed"
|
|
|
|
|
|
class ChatGenerationDisplayStatus(str, Enum):
|
|
PENDING = "pending"
|
|
GENERATING = "generating"
|
|
COMPLETED = "completed"
|
|
FAILED = "failed"
|
|
DOWNLOAD_FAILED = "download_failed"
|
|
DELETED = "deleted"
|
|
|
|
|
|
class ChatGenerationPipelineStage(str, Enum):
|
|
QUEUED = "queued"
|
|
PREPARING = "preparing"
|
|
CREATING_PROVIDER_TASK = "creating_provider_task"
|
|
PROVIDER_RESULT_STAGED = "provider_result_staged"
|
|
WAITING_REMOTE = "waiting_remote"
|
|
POLLING = "polling"
|
|
RESULT_READY = "result_ready"
|
|
DOWNLOAD_QUEUED = "download_queued"
|
|
DOWNLOADING = "downloading"
|
|
RETRY_WAITING = "retry_waiting"
|
|
RECOVERY_INCONSISTENT = "recovery_inconsistent"
|
|
UPSCALE_QUEUED = "upscale_queued"
|
|
UPSCALE_PROCESSING = "upscale_processing"
|
|
UPSCALE_POLLING = "upscale_polling"
|
|
UPSCALE_DOWNLOADING = "upscale_downloading"
|
|
UPSCALE_FINALIZING = "upscale_finalizing"
|
|
UPSCALE_RETRY_WAITING = "upscale_retry_waiting"
|
|
UPSCALE_FAILED = "upscale_failed"
|
|
DONE = "done"
|
|
FAILED = "failed"
|
|
TIMEOUT = "timeout"
|
|
DOWNLOAD_FAILED = "download_failed"
|
|
|
|
|
|
class ChatGenerationTaskEventType(str, Enum):
|
|
TASK_CREATED = "TASK_CREATED"
|
|
IDEMPOTENCY_HIT = "IDEMPOTENCY_HIT"
|
|
BATCH_CREATE_START = "BATCH_CREATE_START"
|
|
BATCH_MAIN_CREATED = "BATCH_MAIN_CREATED"
|
|
BATCH_CHILDREN_CREATED = "BATCH_CHILDREN_CREATED"
|
|
BATCH_BILLING_SUCCESS = "BATCH_BILLING_SUCCESS"
|
|
BATCH_COMMIT_SUCCESS = "BATCH_COMMIT_SUCCESS"
|
|
CHILD_ENQUEUE_START = "CHILD_ENQUEUE_START"
|
|
CHILD_ENQUEUE_SUCCESS = "CHILD_ENQUEUE_SUCCESS"
|
|
CHILD_ENQUEUE_FAILED = "CHILD_ENQUEUE_FAILED"
|
|
IMAGE_MAIN_CLAIM_ACQUIRED = "IMAGE_MAIN_CLAIM_ACQUIRED"
|
|
IMAGE_MAIN_CLAIM_REJECTED = "IMAGE_MAIN_CLAIM_REJECTED"
|
|
IMAGE_MAIN_CLAIM_EXPIRED = "IMAGE_MAIN_CLAIM_EXPIRED"
|
|
IMAGE_BATCH_PROVIDER_START = "IMAGE_BATCH_PROVIDER_START"
|
|
IMAGE_BATCH_PROVIDER_SUCCESS = "IMAGE_BATCH_PROVIDER_SUCCESS"
|
|
IMAGE_BATCH_PROVIDER_FAILED = "IMAGE_BATCH_PROVIDER_FAILED"
|
|
IMAGE_BATCH_SPLIT_START = "IMAGE_BATCH_SPLIT_START"
|
|
IMAGE_BATCH_SPLIT_SUCCESS = "IMAGE_BATCH_SPLIT_SUCCESS"
|
|
IMAGE_BATCH_SPLIT_FAILED = "IMAGE_BATCH_SPLIT_FAILED"
|
|
MAIN_STATUS_AGGREGATED = "MAIN_STATUS_AGGREGATED"
|
|
CHILD_RESOURCE_DELETE_START = "CHILD_RESOURCE_DELETE_START"
|
|
CHILD_RESOURCE_DELETE_SUCCESS = "CHILD_RESOURCE_DELETE_SUCCESS"
|
|
BATCH_GROUP_DELETE_SUCCESS = "BATCH_GROUP_DELETE_SUCCESS"
|
|
BATCH_RECOVERY_RECONCILED = "BATCH_RECOVERY_RECONCILED"
|
|
|
|
PROMPT_CONCAT_START = "PROMPT_CONCAT_START"
|
|
PROMPT_CONCAT_SUCCESS = "PROMPT_CONCAT_SUCCESS"
|
|
|
|
PROVIDER_CREATE_START = "PROVIDER_CREATE_START"
|
|
PROVIDER_CREATE_SUCCESS = "PROVIDER_CREATE_SUCCESS"
|
|
PROVIDER_CREATE_FAILED = "PROVIDER_CREATE_FAILED"
|
|
|
|
POLL_START = "POLL_START"
|
|
POLL_PENDING = "POLL_PENDING"
|
|
POLL_SCHEDULED = "POLL_SCHEDULED"
|
|
POLL_SKIP_NOT_DUE = "POLL_SKIP_NOT_DUE"
|
|
POLL_DISPATCH_DUE = "POLL_DISPATCH_DUE"
|
|
POLL_DISPATCH_SKIP = "POLL_DISPATCH_SKIP"
|
|
POLL_SUCCESS = "POLL_SUCCESS"
|
|
POLL_FAILED = "POLL_FAILED"
|
|
POLL_SUCCESS_AFTER_TIMEOUT_RECOVERY = "POLL_SUCCESS_AFTER_TIMEOUT_RECOVERY"
|
|
FINAL_POLL_BEFORE_TIMEOUT = "FINAL_POLL_BEFORE_TIMEOUT"
|
|
FINAL_POLL_BEFORE_TIMEOUT_ERROR = "FINAL_POLL_BEFORE_TIMEOUT_ERROR"
|
|
FINAL_POLL_BEFORE_TIMEOUT_PENDING = "FINAL_POLL_BEFORE_TIMEOUT_PENDING"
|
|
GENERATION_RECOVERY_ENQUEUE = "GENERATION_RECOVERY_ENQUEUE"
|
|
GENERATION_RECOVERY_TIMEOUT = "GENERATION_RECOVERY_TIMEOUT"
|
|
GENERATION_RECOVERY_INCONSISTENT = "GENERATION_RECOVERY_INCONSISTENT"
|
|
|
|
DOWNLOAD_ENQUEUE = "DOWNLOAD_ENQUEUE"
|
|
DOWNLOAD_ENQUEUE_FAILED = "DOWNLOAD_ENQUEUE_FAILED"
|
|
DOWNLOAD_START = "DOWNLOAD_START"
|
|
DOWNLOAD_SUCCESS = "DOWNLOAD_SUCCESS"
|
|
DOWNLOAD_RETRY_WAITING = "DOWNLOAD_RETRY_WAITING"
|
|
DOWNLOAD_RETRY_ENQUEUE = "DOWNLOAD_RETRY_ENQUEUE"
|
|
DOWNLOAD_RETRY_ENQUEUE_FAILED = "DOWNLOAD_RETRY_ENQUEUE_FAILED"
|
|
DOWNLOAD_RETRY_NOT_DUE = "DOWNLOAD_RETRY_NOT_DUE"
|
|
DOWNLOAD_STUCK_RECOVER = "DOWNLOAD_STUCK_RECOVER"
|
|
DOWNLOAD_RECOVERY_ENQUEUE = "DOWNLOAD_RECOVERY_ENQUEUE"
|
|
DOWNLOAD_RECOVERY_ENQUEUE_FAILED = "DOWNLOAD_RECOVERY_ENQUEUE_FAILED"
|
|
DOWNLOAD_FAILED = "DOWNLOAD_FAILED"
|
|
DOWNLOAD_FAILED_NON_RETRYABLE = "DOWNLOAD_FAILED_NON_RETRYABLE"
|
|
|
|
UPSCALE_SNAPSHOT_MATCHED = "UPSCALE_SNAPSHOT_MATCHED"
|
|
UPSCALE_SNAPSHOT_BYPASSED = "UPSCALE_SNAPSHOT_BYPASSED"
|
|
UPSCALE_SOURCE_READY = "UPSCALE_SOURCE_READY"
|
|
UPSCALE_ENQUEUE = "UPSCALE_ENQUEUE"
|
|
UPSCALE_START = "UPSCALE_START"
|
|
UPSCALE_REMOTE_SUBMIT = "UPSCALE_REMOTE_SUBMIT"
|
|
UPSCALE_REMOTE_POLL = "UPSCALE_REMOTE_POLL"
|
|
UPSCALE_REMOTE_RESULT_READY = "UPSCALE_REMOTE_RESULT_READY"
|
|
UPSCALE_RETRY_WAITING = "UPSCALE_RETRY_WAITING"
|
|
UPSCALE_SUCCESS = "UPSCALE_SUCCESS"
|
|
UPSCALE_FAILED = "UPSCALE_FAILED"
|
|
UPSCALE_RECOVERY_ENQUEUE = "UPSCALE_RECOVERY_ENQUEUE"
|
|
|
|
DOWNLOAD_SKIP_TASK_MISSING = "DOWNLOAD_SKIP_TASK_MISSING"
|
|
DOWNLOAD_SKIP_INVALID_MODE = "DOWNLOAD_SKIP_INVALID_MODE"
|
|
DOWNLOAD_SKIP_NOT_GENERATING = "DOWNLOAD_SKIP_NOT_GENERATING"
|
|
DOWNLOAD_SKIP_ALREADY_COMPLETED = "DOWNLOAD_SKIP_ALREADY_COMPLETED"
|
|
DOWNLOAD_SKIP_NO_REMOTE_RESULT_URL = "DOWNLOAD_SKIP_NO_REMOTE_RESULT_URL"
|
|
DOWNLOAD_SKIP_STAGE_NOT_ALLOWED = "DOWNLOAD_SKIP_STAGE_NOT_ALLOWED"
|
|
DOWNLOAD_SKIP_DOWNLOADING_LEASE_ALIVE = "DOWNLOAD_SKIP_DOWNLOADING_LEASE_ALIVE"
|
|
DOWNLOAD_SKIP_RETRY_NOT_DUE = "DOWNLOAD_SKIP_RETRY_NOT_DUE"
|
|
DOWNLOAD_SKIP_FINAL_STATE = "DOWNLOAD_SKIP_FINAL_STATE"
|
|
DOWNLOAD_SKIP_DISABLED = "DOWNLOAD_SKIP_DISABLED"
|
|
STALE_ATTEMPT_MESSAGE_SKIPPED = "STALE_ATTEMPT_MESSAGE_SKIPPED"
|
|
GENERATION_RECORD_ENQUEUE_SUCCESS = "GENERATION_RECORD_ENQUEUE_SUCCESS"
|
|
GENERATION_RECORD_ENQUEUE_FAILED = "GENERATION_RECORD_ENQUEUE_FAILED"
|
|
|
|
TASK_TIMEOUT = "TASK_TIMEOUT"
|
|
TASK_FAILED = "TASK_FAILED"
|
|
|
|
|
|
CHAT_TOP_LEVEL_MODES = {
|
|
GenerationMode.CHATAPI_ASYNC.value,
|
|
GenerationMode.CHATAPI_MAIN.value,
|
|
}
|
|
|
|
CHAT_RESOURCE_MODES = {
|
|
GenerationMode.CHATAPI_ASYNC.value,
|
|
GenerationMode.CHATAPI_CHILD.value,
|
|
}
|
|
|
|
CHAT_EXECUTABLE_MODES = {
|
|
GenerationMode.CHATAPI_ASYNC.value,
|
|
GenerationMode.CHATAPI_CHILD.value,
|
|
}
|
|
|
|
ALLOWED_GENERATION_MODES = {
|
|
*CHAT_EXECUTABLE_MODES,
|
|
GenerationMode.HOT_OPENING_REPLICATE.value,
|
|
GenerationMode.SHOT_REPLICATE.value,
|
|
}
|
|
|
|
FINAL_CHAT_GENERATION_STAGES = {
|
|
ChatGenerationPipelineStage.DONE.value,
|
|
ChatGenerationPipelineStage.FAILED.value,
|
|
ChatGenerationPipelineStage.TIMEOUT.value,
|
|
ChatGenerationPipelineStage.DOWNLOAD_FAILED.value,
|
|
ChatGenerationPipelineStage.UPSCALE_FAILED.value,
|
|
}
|
|
|
|
DOWNLOAD_RECOVERABLE_STAGES = {
|
|
ChatGenerationPipelineStage.RESULT_READY.value,
|
|
ChatGenerationPipelineStage.DOWNLOAD_QUEUED.value,
|
|
ChatGenerationPipelineStage.DOWNLOADING.value,
|
|
ChatGenerationPipelineStage.RETRY_WAITING.value,
|
|
}
|
|
|
|
PROVIDER_SUCCESS_STATUSES = {"succeeded", "success", "completed", "done"}
|
|
PROVIDER_FAILED_STATUSES = {"failed", "error", "canceled", "cancelled"}
|