Coverage for /home/admin/Documents/AI/applications/lexigram-dev/lexigram/experimental/ai/lexigram-ai-observability/src/lexigram/ai/observability/constants.py: 91%

23 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-25 07:19 +0800

1"""Constants for AI Observability.""" 

2 

3from __future__ import annotations 

4 

5import importlib.metadata 

6 

7try: 

8 __version__: str = importlib.metadata.version("lexigram-ai-observability") 

9except ImportError: 

10 __version__ = "0.0.0" 

11 

12 

13# Environment variable prefix 

14ENV_PREFIX: str = "LEX_AI_OBSERVABILITY__" 

15ENV_NESTED_DELIMITER: str = "__" 

16 

17# Health check defaults 

18DEFAULT_CHECK_INTERVAL_SECONDS: int = 30 

19"""Default interval between health checks in seconds.""" 

20 

21DEFAULT_CHECK_TIMEOUT_SECONDS: float = 5.0 

22"""Default timeout for individual health checks.""" 

23 

24# Metric name prefixes 

25METRIC_PREFIX_LLM: str = "lexigram.ai.llm" 

26"""Metric name prefix for LLM operations.""" 

27 

28METRIC_PREFIX_VECTOR: str = "lexigram.ai.vector" 

29"""Metric name prefix for vector operations.""" 

30 

31METRIC_PREFIX_EMBEDDING: str = "lexigram.ai.embedding" 

32"""Metric name prefix for embedding operations.""" 

33 

34# Tracing span names 

35SPAN_LLM_CALL: str = "llm.call" 

36SPAN_VECTOR_QUERY: str = "vector.query" 

37SPAN_EMBEDDING_GENERATE: str = "embedding.generate" 

38SPAN_RAG_PIPELINE: str = "rag.pipeline" 

39 

40 

41__all__ = [ 

42 "DEFAULT_CHECK_INTERVAL_SECONDS", 

43 "DEFAULT_CHECK_TIMEOUT_SECONDS", 

44 "ENV_NESTED_DELIMITER", 

45 "ENV_PREFIX", 

46 "METRIC_PREFIX_EMBEDDING", 

47 "METRIC_PREFIX_LLM", 

48 "METRIC_PREFIX_VECTOR", 

49 "SPAN_EMBEDDING_GENERATE", 

50 "SPAN_LLM_CALL", 

51 "SPAN_RAG_PIPELINE", 

52 "SPAN_VECTOR_QUERY", 

53 "__version__", 

54]