gen_ai_hub.document_grounding.models.pipeline module

Pydantic models for Pipeline API.

This module defines data models for the Pipeline API, which manages document vectorization pipelines from various data sources (Microsoft SharePoint, AWS S3, SFTP).

Model categories:
  • Pipeline configuration models (create/get requests and responses)

  • Pipeline execution models (tracking pipeline runs)

  • Document models (tracking document processing status)

  • Search and metadata models (filtering pipelines by metadata)

  • Trigger models (manual pipeline execution)

All models use Pydantic for validation and serialization.

class gen_ai_hub.document_grounding.models.pipeline.MetaData(*, destination: str)

Bases: BaseModel

destination: str
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.SharePointSite(*, name: str, includePaths: List[str] | None = None)

Bases: BaseModel

name: str
includePaths: List[str] | None
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.SharePointConfig(*, site: SharePointSite)

Bases: BaseModel

site: SharePointSite
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.MSSharePointConfiguration(*, destination: str, sharePoint: SharePointConfig)

Bases: BaseModel

destination: str
sharePoint: SharePointConfig
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.CommonConfiguration(*, destination: str)

Bases: BaseModel

destination: str
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.MSSharePointPipelineCreateRequest(*, type: Literal['MSSharePoint'] = 'MSSharePoint', configuration: MSSharePointConfiguration, metadata: MetaData | None = None)

Bases: BaseModel

type: Literal['MSSharePoint']
configuration: MSSharePointConfiguration
metadata: MetaData | None
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.S3PipelineCreateRequest(*, type: Literal['S3'] = 'S3', configuration: CommonConfiguration, metadata: MetaData | None = None)

Bases: BaseModel

type: Literal['S3']
configuration: CommonConfiguration
metadata: MetaData | None
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.SFTPPipelineCreateRequest(*, type: Literal['SFTP'] = 'SFTP', configuration: CommonConfiguration, metadata: MetaData | None = None)

Bases: BaseModel

type: Literal['SFTP']
configuration: CommonConfiguration
metadata: MetaData | None
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.PipelineIdResponse(*, pipelineId: str)

Bases: BaseModel

pipelineId: str
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.BasePipelineResponse(*, id: str, type: str, metadata: MetaData | None = None)

Bases: BaseModel

id: str
type: str
metadata: MetaData | None
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.MSSharePointConfigurationGetResponse(*, destination: str, sharePoint: SharePointConfig)

Bases: BaseModel

destination: str
sharePoint: SharePointConfig
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.MSSharePointPipelineGetResponse(*, id: str, type: Literal['MSSharePoint'] = 'MSSharePoint', metadata: MetaData | None = None, configuration: MSSharePointConfigurationGetResponse)

Bases: BasePipelineResponse

type: Literal['MSSharePoint']
configuration: MSSharePointConfigurationGetResponse
model_config: ClassVar[ConfigDict] = {}

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

id: str
metadata: MetaData | None
class gen_ai_hub.document_grounding.models.pipeline.S3PipelineGetResponse(*, id: str, type: Literal['S3'] = 'S3', metadata: MetaData | None = None, configuration: CommonConfiguration)

Bases: BasePipelineResponse

type: Literal['S3']
configuration: CommonConfiguration
model_config: ClassVar[ConfigDict] = {}

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

id: str
metadata: MetaData | None
class gen_ai_hub.document_grounding.models.pipeline.SFTPPipelineGetResponse(*, id: str, type: Literal['SFTP'] = 'SFTP', metadata: MetaData | None = None, configuration: CommonConfiguration)

Bases: BasePipelineResponse

type: Literal['SFTP']
configuration: CommonConfiguration
model_config: ClassVar[ConfigDict] = {}

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

id: str
metadata: MetaData | None
class gen_ai_hub.document_grounding.models.pipeline.GetPipelinesResponse(*, count: int | None, resources: List[Annotated[MSSharePointPipelineGetResponse | S3PipelineGetResponse | SFTPPipelineGetResponse, FieldInfo(annotation=NoneType, required=True, discriminator='type')]])

Bases: BaseModel

count: int | None
resources: List[Annotated[MSSharePointPipelineGetResponse | S3PipelineGetResponse | SFTPPipelineGetResponse, FieldInfo(annotation=NoneType, required=True, discriminator='type')]]
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.GetPipelineStatusResponse(*, lastStarted: str | None, status: str | None)

Bases: BaseModel

lastStarted: str | None
status: str | None
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.DataRepositoryMetadataItem(*, key: str, value: List[str])

Bases: BaseModel

key: str
value: List[str]
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.SearchPipelineRequest(*, dataRepositoryMetadata: List[DataRepositoryMetadataItem])

Bases: BaseModel

dataRepositoryMetadata: List[DataRepositoryMetadataItem]
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.SearchPipelineData(*, pipelineId: str)

Bases: BaseModel

pipelineId: str
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.SearchPipelinesResponse(*, count: int | None, resources: List[SearchPipelineData])

Bases: BaseModel

count: int | None
resources: List[SearchPipelineData]
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.PipelineExecutionStatus(*values)

Bases: str, Enum

NEW = 'NEW'
UNKNOWN = 'UNKNOWN'
INPROGRESS = 'INPROGRESS'
FINISHED = 'FINISHED'
FINISHED_WITH_ERRORS = 'FINISHEDWITHERRORS'
TIMEOUT = 'TIMEOUT'
class gen_ai_hub.document_grounding.models.pipeline.PipelineExecution(*, id: str, status: PipelineExecutionStatus | None = None, createdAt: datetime | None = None, modifiedAt: datetime | None = None)

Bases: BaseModel

id: str
status: PipelineExecutionStatus | None
createdAt: datetime | None
modifiedAt: datetime | None
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.GetPipelineExecutionsResponse(*, count: int | None, resources: List[PipelineExecution])

Bases: BaseModel

count: int | None
resources: List[PipelineExecution]
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.DocumentStatus(*values)

Bases: str, Enum

TO_BE_PROCESSED = 'TO_BE_PROCESSED'
INDEXED = 'INDEXED'
REINDEXED = 'REINDEXED'
DEINDEXED = 'DEINDEXED'
FAILED = 'FAILED'
FAILED_TO_BE_RETRIED = 'FAILED_TO_BE_RETRIED'
TO_BE_SCHEDULED = 'TO_BE_SCHEDULED'
class gen_ai_hub.document_grounding.models.pipeline.Document(*, id: str, status: DocumentStatus | None = None, viewLocation: str | None = None, downloadLocation: str | None = None, absoluteUrl: str | None = None, title: str | None = None, metadataId: str | None = None, createdTimestamp: datetime | None = None, lastUpdatedTimestamp: datetime | None = None)

Bases: BaseModel

id: str
status: DocumentStatus | None
viewLocation: str | None
downloadLocation: str | None
absoluteUrl: str | None
title: str | None
metadataId: str | None
createdTimestamp: datetime | None
lastUpdatedTimestamp: datetime | None
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.DocumentsStatusResponse(*, count: int | None, resources: List[Document])

Bases: BaseModel

count: int | None
resources: List[Document]
model_config: ClassVar[ConfigDict] = {}

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

class gen_ai_hub.document_grounding.models.pipeline.ManualPipelineTrigger(*, pipelineId: str, metadataOnly: bool | None = None)

Bases: BaseModel

pipelineId: str
metadataOnly: bool | None
model_config: ClassVar[ConfigDict] = {}

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