63 lines
2.5 KiB
Python
63 lines
2.5 KiB
Python
from __future__ import annotations
|
|
|
|
from enum import StrEnum
|
|
|
|
|
|
class LlmBillingConfigKey(StrEnum):
|
|
ENABLED = "llm_billing_enabled"
|
|
HOLD_DEFAULT = "llm_hold_credits_default"
|
|
HOLD_GENERATION_RECORD_PROMPT = "llm_hold_credits_generation_record_prompt"
|
|
HOLD_MODULE_IMAGE_PROMPT = "llm_hold_credits_module_image_prompt"
|
|
HOLD_MODULE_VIDEO_PROMPT = "llm_hold_credits_module_video_prompt"
|
|
HOLD_SHOT_VIDEO_ANALYSIS = "llm_hold_credits_shot_video_analysis"
|
|
LEGACY_OPTIMIZE_HOLD = "optimize_hold_credits"
|
|
|
|
|
|
class LlmBillingLedgerState(StrEnum):
|
|
BILLING_BYPASSED = "billing_bypassed"
|
|
MISSING = "missing"
|
|
ACTIVE = "active"
|
|
RELEASED = "released"
|
|
CHARGED = "charged"
|
|
INVALID = "invalid"
|
|
|
|
|
|
class LlmBillingEvent(StrEnum):
|
|
HOLD_START = "LLM_HOLD_START"
|
|
HOLD_SUCCESS = "LLM_HOLD_SUCCESS"
|
|
HOLD_BYPASSED = "LLM_HOLD_BYPASSED"
|
|
HOLD_INSUFFICIENT = "LLM_HOLD_INSUFFICIENT"
|
|
HOLD_CONFIG_INVALID = "LLM_HOLD_CONFIG_INVALID"
|
|
HOLD_MISSING = "LLM_HOLD_MISSING"
|
|
HOLD_RELEASE_START = "LLM_HOLD_RELEASE_START"
|
|
HOLD_RELEASE_SUCCESS = "LLM_HOLD_RELEASE_SUCCESS"
|
|
HOLD_RELEASE_SKIPPED = "LLM_HOLD_RELEASE_SKIPPED"
|
|
FAILURE_RELEASE_START = "LLM_FAILURE_RELEASE_START"
|
|
FAILURE_RELEASE_SUCCESS = "LLM_FAILURE_RELEASE_SUCCESS"
|
|
FAILURE_RELEASE_SKIPPED = "LLM_FAILURE_RELEASE_SKIPPED"
|
|
EXECUTION_VALIDATE_START = "LLM_EXECUTION_VALIDATE_START"
|
|
EXECUTION_VALIDATE_SUCCESS = "LLM_EXECUTION_VALIDATE_SUCCESS"
|
|
EXECUTION_BLOCKED = "LLM_EXECUTION_BLOCKED"
|
|
PROVIDER_START = "LLM_PROVIDER_START"
|
|
PROVIDER_SUCCESS = "LLM_PROVIDER_SUCCESS"
|
|
PROVIDER_FAILURE = "LLM_PROVIDER_FAILURE"
|
|
SETTLE_START = "LLM_SETTLE_START"
|
|
SETTLE_SUCCESS = "LLM_SETTLE_SUCCESS"
|
|
CHARGE_SUCCESS = "LLM_CHARGE_SUCCESS"
|
|
CHARGE_NEGATIVE_BALANCE = "LLM_CHARGE_NEGATIVE_BALANCE"
|
|
SETTLE_FAILED = "LLM_SETTLE_FAILED"
|
|
CELERY_DISPATCH_START = "LLM_CELERY_DISPATCH_START"
|
|
CELERY_DISPATCH_SUCCESS = "LLM_CELERY_DISPATCH_SUCCESS"
|
|
CELERY_DISPATCH_FAILURE = "LLM_CELERY_DISPATCH_FAILURE"
|
|
CELERY_DISPATCH_COMPENSATED = "LLM_CELERY_DISPATCH_COMPENSATED"
|
|
RETRY_PREVIOUS_ATTEMPT_VALIDATE_START = "LLM_RETRY_PREVIOUS_ATTEMPT_VALIDATE_START"
|
|
RETRY_PREVIOUS_ATTEMPT_VALIDATE_SUCCESS = "LLM_RETRY_PREVIOUS_ATTEMPT_VALIDATE_SUCCESS"
|
|
RETRY_PREVIOUS_ATTEMPT_BLOCKED = "LLM_RETRY_PREVIOUS_ATTEMPT_BLOCKED"
|
|
USAGE_INVALID = "LLM_USAGE_INVALID"
|
|
TOKEN_USAGE_CREATED = "LLM_TOKEN_USAGE_CREATED"
|
|
TOKEN_USAGE_REUSED = "LLM_TOKEN_USAGE_REUSED"
|
|
|
|
|
|
class LlmBillingDomain(StrEnum):
|
|
LLM_BILLING = "llm_billing"
|