gen_ai_hub.orchestration_v2.models.config module

Orchestration Service configuration models.

class gen_ai_hub.orchestration_v2.models.config.ModuleConfig(*, prompt_templating: PromptTemplatingModuleConfig, filtering: FilteringModuleConfig | None = None, masking: MaskingModuleConfig | None = None, grounding: GroundingModuleConfig | None = None, translation: TranslationModuleConfig | None = None)

Bases: ABCBaseModel

Configuration for the Orchestration Service’s content generation process.

Defines modules for a harmonized API that combines LLM-based content generation with additional processing functionalities.

The orchestration service allows for advanced content generation by processing inputs through a series of steps: template rendering, text generation via LLMs, and optional input/output transformations such as data masking or filtering.

Parameters:
  • prompt_templating – Template object for rendering input prompts and language model for text generation.

  • filtering – Module for filtering and validating input/output content.

  • masking – Module for anonymizing or pseudonymizing sensitive information.

  • grounding – Module for document grounding.

  • translation – Module for translating input and output content.

prompt_templating: PromptTemplatingModuleConfig
filtering: FilteringModuleConfig | None
masking: MaskingModuleConfig | None
grounding: GroundingModuleConfig | None
translation: TranslationModuleConfig | None
model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': False}

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

class gen_ai_hub.orchestration_v2.models.config.OrchestrationConfig(*, modules: ModuleConfig | Annotated[List[ModuleConfig], FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=1)])], stream: GlobalStreamOptions | None = None)

Bases: ABCBaseModel

Configuration for the Orchestration Service’s content generation process.

Parameters:
  • modules – Either a single ModuleConfig or a list of ModuleConfigs. When a list is provided,

  • succeeds. (the orchestration service will try each configuration in order until one)

  • stream – Optional streaming configuration.

modules: ModuleConfig | Annotated[List[ModuleConfig], FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=1)])]
stream: GlobalStreamOptions | None
model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': False}

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

class gen_ai_hub.orchestration_v2.models.config.CompletionRequestConfigurationReferenceByIdConfigRef(*, id: str)

Bases: ABCBaseModel

Represents a reference to an orchestration config identified by a unique ID.

Parameters:

id (str) – The unique identifier for the configuration.

id: str
model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': False}

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

class gen_ai_hub.orchestration_v2.models.config.CompletionRequestConfigurationReferenceByNameScenarioVersionConfigRef(*, scenario: str, name: str, version: str)

Bases: ABCBaseModel

Represents a reference to aan orchestration config identified by name, scenario, and version.

Parameters:
  • scenario (str) – Scenario name

  • name (str) – Name of config

  • version (str) – Version of config

scenario: str
name: str
version: str
model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': False}

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