Skip to content

feat(gooddata-sdk): [AUTO] Deprecate LLM Endpoint API and add resolveLlmProviders endpoint#1535

Open
yenkins-admin wants to merge 1 commit intomasterfrom
auto/openapi-sync-C005-20260413
Open

feat(gooddata-sdk): [AUTO] Deprecate LLM Endpoint API and add resolveLlmProviders endpoint#1535
yenkins-admin wants to merge 1 commit intomasterfrom
auto/openapi-sync-C005-20260413

Conversation

@yenkins-admin
Copy link
Copy Markdown
Contributor

Summary

Implemented the resolveLlmProviders endpoint in the Python SDK wrapper. Created three new model classes (CatalogResolvedLlmModel, CatalogResolvedLlmProvider, CatalogResolvedLlms) in a new file catalog/workspace/entity_model/resolved_llm.py. Added resolve_llm_providers(workspace_id) service method to CatalogWorkspaceContentService. Exported all new classes from gooddata_sdk/__init__.py. Added an integration test in test_catalog_workspace_content.py referencing a VCR cassette to be recorded. The deprecated LLM endpoint APIs don't require SDK changes as they were already only exposed via the auto-generated API client layer, not the SDK wrapper.

Impact: deprecation | Services: gooddata-afm-client, gooddata-metadata-client

Files changed

  • packages/gooddata-sdk/src/gooddata_sdk/catalog/workspace/entity_model/resolved_llm.py
  • packages/gooddata-sdk/src/gooddata_sdk/catalog/workspace/content_service.py
  • packages/gooddata-sdk/src/gooddata_sdk/__init__.py
  • packages/gooddata-sdk/tests/catalog/test_catalog_workspace_content.py

Source commits (gdc-nas)

  • a19eb19 Merge pull request #21393 from hkad98/jkd/llm-endpoint-deprecation
OpenAPI diff
     "/api/v1/actions/ai/llmEndpoint/test": { "post": {
+        "deprecated": true,
+        "description": "Will be soon removed and replaced by testLlmProvider."
     "/api/v1/actions/ai/llmEndpoint/{llmEndpointId}/test": { "post": {
+        "deprecated": true,
+        "description": "Will be soon removed and replaced by testLlmProviderById."
     "/api/v1/actions/workspaces/{workspaceId}/ai/resolveLlmEndpoints": { "get": {
+        "deprecated": true,
+        "description": "Will be soon removed and replaced by LlmProvider-based resolution."
+    "/api/v1/actions/workspaces/{workspaceId}/ai/resolveLlmProviders": {
+      "get": { "operationId": "resolveLlmProviders", "summary": "Get Active LLM configuration for this workspace" }
+    },
       "JsonApiLlmEndpointIn": {
+        "deprecated": true, "description": "Will be soon removed and replaced by LlmProvider."
       "JsonApiLlmEndpointOut": { "deprecated": true },
       "JsonApiLlmEndpointPatch": { "deprecated": true },
+      "ResolvedLlm": { "description": "The resolved LLM configuration, or null if none is configured." },
+      "ResolvedLlmProvider": { "allOf": [{ "$ref": "ResolvedLlm" }, { "properties": { "id": {...}, "models": {...}, "title": {...} } }] },
+      "ResolvedLlms": { "properties": { "data": { "oneOf": [{ "$ref": "ResolvedLlmEndpoint" }, { "$ref": "ResolvedLlmProvider" }] } } }

Workflow run


Generated by SDK OpenAPI Sync workflow

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant