Skip to content

azure-search-documents ContentUnderstandingSkill is missing model_name and model_deployment #48555

Description

@pamelafox
  • Package Name: azure-search-documents
  • Package Version: 12.1.0b1
  • Operating System: macOS 26.6.1 (arm64)
  • Python Version: 3.13.13

Describe the bug

The ContentUnderstandingSkill model does not expose the model_name and model_deployment properties that correspond to the Azure AI Search 2026-05-01-preview REST properties modelName and modelDeployment.

These properties enable AI-generated descriptions for document-embedded images, charts, and diagrams. The package defaults to 2026-05-01-preview, and the same release includes the preview semantic chunking additions, but the Python model cannot represent the image-description configuration.

Service documentation: https://learn.microsoft.com/azure/search/cognitive-search-skill-content-understanding#skill-parameters

To Reproduce

  1. Install azure-search-documents==12.1.0b1.
  2. Run:
from azure.search.documents.indexes.models import ContentUnderstandingSkill

ContentUnderstandingSkill(
    name="content-understanding",
    description="Extract content and describe figures",
    context="/document",
    inputs=[],
    outputs=[],
    model_name="gpt-5.4",
    model_deployment="gpt-5.4",
)

The constructor fails with:

TypeError: ContentUnderstandingSkill.__init__() got an unexpected keyword argument 'model_name'

model_deployment is likewise absent from the generated model.

Expected behavior

ContentUnderstandingSkill should expose:

model_name: str | None
model_deployment: str | None

and serialize them as:

{
  "modelName": "gpt-5.4",
  "modelDeployment": "gpt-5.4"
}

The service requires both properties to be supplied together.

Screenshots

N/A

Additional context

The current workaround is to create or update the skillset with a raw 2026-05-01-preview REST payload through an authenticated SDK client send_request call. That works but loses the validation, discoverability, and type safety provided by the generated model.

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageWorkflow: This is a new issue that needs to be triaged to the appropriate team.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions