Repository navigation
fix: migrate retired Computer Vision endpoints to v3.2 - #2754
Conversation
## Summary Use compatible v3.2 endpoints for seven Computer Vision operations. ## Prompting Intent Repair retired endpoint failures without changing public APIs, schemas, or explicit URLs. ## Linked Sources - https://www.microsoft.com/releasecommunications/api/v2/azure/rss/computer-vision-api-retirements-13-9-2026 - https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/call-read-api ## Rationale v3.2 preserves existing contracts; v4.0 does not. Keep legacy RecognizeText, test it locally, and migrate the quote sample to ReadImage with visible errors. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e584b4c4-4ace-4ade-ba98-b4255f70a22b
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
|
Hey Rana Singh (@ranadeepsingh) 👋! We use semantic commit messages to streamline the release process. Examples of commit messages with semantic prefixes:
To test your commit locally, please follow our guild on building from source. |
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
There was a problem hiding this comment.
🟡 Changes recommended
Terminal Read failures can crash the updated notebook before its diagnostic columns are displayed.
1 open finding
What changed in this PR
Migrates supported Computer Vision operations to v3.2 while preserving APIs, schemas, and explicit URL overrides.
Changes:
- Updates seven default endpoint paths to v3.2.
- Replaces live tests with local HTTP fixtures.
- Adds migration guidance and updates the celebrity-quotes notebook to
ReadImage.
| File | Description |
|---|---|
ComputerVision.scala |
Updates endpoint defaults and documents legacy RecognizeText. |
ComputerVisionEndpointSuite.scala |
Tests v3.2 requests, schemas, persistence, and errors. |
ComputerVisionSuite.scala |
Removes the retired live RecognizeText suite. |
RecognizeTextSuite.scala |
Adds fixture-based legacy compatibility tests. |
test_ComputerVisionEndpoints.py |
Tests generated Python wrapper endpoint behavior. |
_ComputerVision.md |
Adds migration and retirement guidance. |
Quickstart - Analyze Celebrity Quotes.ipynb |
Migrates OCR flow to ReadImage and exposes error columns. |
🧠 Review effort: Balanced
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
## Summary Guard missing Read results and retain the operation status in the sample output. ## Prompting Intent Address the automated review finding without changing the public Read schema. ## Linked Sources - microsoft#2754 (comment) - https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/call-read-api ## Rationale A terminal failed operation can arrive over HTTP 200 with no analyzeResult. Retain ocrStatus separately from HTTP errors so the notebook completes and reports the failure. Local fixtures reproduce the old crash and verify the fix. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e584b4c4-4ace-4ade-ba98-b4255f70a22b
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
## Summary Keep full-quote and high-confidence person checks without assuming the old model omits page numbers or returns "person" as its first tag. ## Prompting Intent Finish the Computer Vision retirement repair and fix attributable CI failures without changing public APIs or schemas. ## Linked Sources - microsoft#2754 - https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/migration-options ## Rationale Check semantic content instead of unstable model ordering. All four changed assertions pass against local v3.2 fixtures; test compilation and style pass. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e584b4c4-4ace-4ade-ba98-b4255f70a22b
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
## Summary Add AnalyzeImageV4, typed GA results, wrappers, tests and migrated examples. ## Prompting Intent Ship real v4 analysis without breaking legacy Vision APIs or saved models. ## Linked Sources - microsoft#2754 - https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/call-analyze-image-40 - https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/vision/azure-ai-vision-imageanalysis/azure/ai/vision/imageanalysis/models/_models.py - https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/migration-options ## Rationale A separate stage preserves legacy v3.2 schemas and parameters. Plain retry parameters support safe persistence; numeric columns and linked-service cache handling are covered by request-level regressions. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e584b4c4-4ace-4ade-ba98-b4255f70a22b
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
## Summary Replace the broken objects.jpg test URL with the official kitchen sample. ## Prompting Intent Fix actual current-head CI failures without weakening live GA assertions. ## Linked Sources - microsoft#2754 - https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/images/windows-kitchen.jpg ## Rationale The old URL returns 404 HTML, causing URL analysis to reject the resource and byte analysis to reject its downloaded error page. The replacement returns HTTP 200 and valid JPEG bytes. Typed tags/objects checks remain unchanged. Live Read passed; the next full CI run must prove all three GA tests pass. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e584b4c4-4ace-4ade-ba98-b4255f70a22b
|
The first v4 run passed the live synchronous Read test and all 11 local-fixture v4 Scala tests. Its two live tags/objects tests exposed a bad sample URL: Commit f7302e4 changes only that URL to Microsoft's canonical Fresh Azure build 239831630 is running against this exact head's PR merge result. All three live GA tests and full CI must pass before this PR is ready. The earlier build also had an unrelated Azure CLI TLS certificate failure before the explainers tests executed; that failure is not a v4 result. |
|
Current-head validation is complete for f7302e4.
The target is current, the worktree is clean, and local/fork/PR heads match. Required human approval is the remaining gate. No merge performed. |
## Summary Restore the validated v3.2-only tree and remove the additive v4 implementation. ## Prompting Intent Keep this PR a small compatibility fix, preserving the earlier v4 work in history without resetting, amending or rewriting the published branch. ## Linked Sources - microsoft#2754 - microsoft@0ec2d87 - https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/migration-options ## Rationale Exact baseline tree parity retains legacy APIs, schemas, explicit URLs, RecognizeText fixtures and ReadImage failure handling. A forward restoration removes the v4 classes and samples while keeping them recoverable. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e584b4c4-4ace-4ade-ba98-b4255f70a22b
## Summary Merge the latest target without altering the restored Vision patch. ## Prompting Intent Validate against current master while preserving published commit history. ## Linked Sources - microsoft#2754 - microsoft#2751 ## Rationale The target advanced with an unrelated LightGBM buffer fix. A normal merge preserves its changes and avoids rewriting either the v4 work or its reversal. The net PR remains the seven-file v3.2 compatibility repair. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e584b4c4-4ace-4ade-ba98-b4255f70a22b
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
## Summary Require a successful Read status and non-null analyzeResult before flattening. Keep failed rows available for error handling. ## Prompting Intent Restore the compatible v3.2 repair, address review feedback, and rely on CI. ## Linked Sources - microsoft#2754 (comment) - https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/call-read-api ## Rationale Terminal Read failures can return HTTP 200 without analyzeResult. Document the required guard rather than changing the existing public helper API. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e584b4c4-4ace-4ade-ba98-b4255f70a22b
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
|
Current-head validation is complete for b1ba5d0. Azure build 240032657 passed on merge revision 3097886, including Vision/core unit tests and cognitive/core Python and R jobs. All checks are complete with no failures or missing required checks. Current-head automated review has zero open findings. The PR retains the v3.2-only compatibility fix, and the Read failure-handling documentation finding is addressed. Human review remains required; no merge was performed. |
|
Reviewed the current seven-file diff against master at head
The Python file is under the existing No Current-head Azure build 240032657 passed, including Vision/core and cognitive/core Python/R jobs. This scope check did not change code or trigger another review cycle. |
## Summary Simplify endpoint and ReadImage documentation, removing retirement history and migration comparisons. ## Prompting Intent Keep the PR documentation focused on current capabilities and examples. ## Linked Sources - microsoft#2754 - https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/call-read-api ## Rationale Keep quick examples focused on usage while preserving executable examples and Read failure-handling guidance. No source or test behavior changes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e584b4c4-4ace-4ade-ba98-b4255f70a22b
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #2754 +/- ##
==========================================
+ Coverage 87.81% 87.86% +0.04%
==========================================
Files 346 346
Lines 21405 21405
Branches 2260 2260
==========================================
+ Hits 18797 18807 +10
+ Misses 2608 2598 -10
🚀 New features to boost your workflow:
|
|
Current-head CI and review follow-up for
A same-head Copilot re-review was requested after CI, but no additional review arrived during the 20-minute wait. The existing automated review covers this commit; no code changed afterward. The final readiness snapshot has no failed, pending, or missing required checks and no target divergence. Review was kept lightweight as requested. Human approval is still required; no merge or auto-merge was performed. |
14b58a8
into
microsoft:master


Computer Vision transformers use v3.2 endpoints for image analysis, OCR, Read, thumbnails, tags, descriptions, and domain-specific recognition. This fixes requests failing with
ApiVersionRetiredwhile preserving public APIs, Spark schemas, parameters, explicit URL overrides, and saved-model behavior.Validation: Azure CI 240148689 passed for current head
b5183e866db1737db2b2ea9a4be71342bb7138a1, using PR merge revisionb26bff2a4892076b6028527247d66d9fb52b651c. All 65 Azure jobs finished successfully, and current-head GitHub checks have passed. One agent-allocation retry is noted below. Human review remains required.Changes
AnalyzeImagewrapper.RecognizeTextpublic API remains available for compatibility. Its hosted service is not presented as a supported example; local fixtures cover its serialized contract.ReadImage, reads multiple pages, guards missing results, and retains operation status and HTTP error columns.No dependency, public API, or Spark schema changes are included.
Validation
/azp run. Build240148689hasreason=pullRequestand usesrefs/pull/2754/merge. It completed successfully on October 12, 2026 at 03:46 UTC.ComputerVisionEndpointSuiteregressions and all sevenRecognizeTextSuitecompatibility tests.test_generated_wrapper_uses_v32_and_preserves_explicit_url_on_copy. Cognitive/core Python and R jobs, website samples, and Databricks CPU/GPU jobs succeeded.b1ba5d0d88414b3b9b665e8d2b818c084ccc6806, including Vision/core unit tests and cognitive/core Python and R jobs. Earlier local checks covered the 16 endpoint and compatibility regressions, Scala style, generated wrappers, packaging, and notebook success/error fixtures.b5183e866d. Its validation-status finding is corrected and resolved with the evidence above. All three review threads are resolved, and all review bodies were inspected, including collapsed findings. A follow-up Copilot re-review was requested after CI; no additional review arrived during the 20-minute wait. No code changed after the existing current-head review. Review remains lightweight, with CI providing execution evidence.Human review remains required. No merge or auto-merge is enabled.
References