aiq.data_models.config#

Attributes#

Classes#

TelemetryConfig

GeneralConfig

AIQConfig

Subclass of a Pydantic BaseModel that is hashable. Use in objects that need to be hashed for caching purposes.

Functions#

_process_validation_error(err, handler, info)

Module Contents#

logger#
_process_validation_error(
err: pydantic.ValidationError,
handler: pydantic.ValidatorFunctionWrapHandler,
info: pydantic.ValidationInfo,
)#
class TelemetryConfig(/, **data: Any)#

Bases: pydantic.BaseModel

logging: dict[str, aiq.data_models.logging.LoggingBaseConfig]#
tracing: dict[str, aiq.data_models.telemetry_exporter.TelemetryExporterBaseConfig]#
classmethod validate_components(
value: Any,
handler: pydantic.ValidatorFunctionWrapHandler,
info: pydantic.ValidationInfo,
)#
classmethod rebuild_annotations()#
class GeneralConfig(/, **data: Any)#

Bases: pydantic.BaseModel

model_config#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

use_uvloop: bool = True#

Whether to use uvloop for the event loop. This can provide a significant speedup in some cases. Disable to provide better error messages when debugging.

telemetry: TelemetryConfig#
front_end: aiq.data_models.front_end.FrontEndBaseConfig#
classmethod validate_components(
value: Any,
handler: pydantic.ValidatorFunctionWrapHandler,
info: pydantic.ValidationInfo,
)#
classmethod rebuild_annotations()#
class AIQConfig(/, **data: Any)#

Bases: aiq.data_models.common.HashableBaseModel

Subclass of a Pydantic BaseModel that is hashable. Use in objects that need to be hashed for caching purposes.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

model_config#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

general: GeneralConfig#
functions: dict[str, aiq.data_models.function.FunctionBaseConfig]#
llms: dict[str, aiq.data_models.llm.LLMBaseConfig]#
embedders: dict[str, aiq.data_models.embedder.EmbedderBaseConfig]#
memory: dict[str, aiq.data_models.memory.MemoryBaseConfig]#
retrievers: dict[str, aiq.data_models.retriever.RetrieverBaseConfig]#
workflow: aiq.data_models.function.FunctionBaseConfig#
eval: aiq.data_models.evaluate.EvalConfig#
print_summary(stream: TextIO = sys.stdout)#

Print a summary of the configuration

classmethod validate_components(
value: Any,
handler: pydantic.ValidatorFunctionWrapHandler,
info: pydantic.ValidationInfo,
)#
classmethod rebuild_annotations()#