From b5a3ad6a4c7a960df3e8ebffb1e8a6c0a14f9124 Mon Sep 17 00:00:00 2001 From: Pavel Tisnovsky Date: Mon, 19 Oct 2026 13:34:52 +0200 Subject: [PATCH] LCORE-4827: Use new model --- docs/devel_doc/openapi.json | 38 +++++++++---------- docs/models/successful_responses.json | 2 +- src/models/api/requests/responses_openai.py | 2 +- .../api/responses/error/content_too_large.py | 2 +- src/models/api/responses/error/not_found.py | 2 +- .../api/responses/successful/catalog.py | 2 +- .../api/responses/successful/conversations.py | 4 +- src/models/common/conversation.py | 2 +- src/models/compaction.py | 2 +- src/models/config.py | 2 +- .../question_validity/_capability.py | 2 +- 11 files changed, 30 insertions(+), 30 deletions(-) diff --git a/docs/devel_doc/openapi.json b/docs/devel_doc/openapi.json index ac167792c..e08a4b73c 100644 --- a/docs/devel_doc/openapi.json +++ b/docs/devel_doc/openapi.json @@ -1439,7 +1439,7 @@ { "config": { "invalid_question_response": "I can only answer questions about the product.", - "model_id": "openai/gpt-4o-mini", + "model_id": "openai/gpt-5.6-luna", "model_prompt": "Is this question valid?" }, "name": "question-validity", @@ -6110,7 +6110,7 @@ "model": { "value": { "detail": { - "cause": "Model with ID gpt-4o-mini does not exist", + "cause": "Model with ID gpt-5.6-luna does not exist", "response": "Model not found" } } @@ -6130,7 +6130,7 @@ "context window exceeded": { "value": { "detail": { - "cause": "The input exceeds the context window size of model 'gpt-4o-mini'.", + "cause": "The input exceeds the context window size of model 'gpt-5.6-luna'.", "response": "Context window exceeded" } } @@ -6487,7 +6487,7 @@ "model": { "value": { "detail": { - "cause": "Model with ID gpt-4o-mini does not exist", + "cause": "Model with ID gpt-5.6-luna does not exist", "response": "Model not found" } } @@ -6507,7 +6507,7 @@ "context window exceeded": { "value": { "detail": { - "cause": "The input exceeds the context window size of model 'gpt-4o-mini'.", + "cause": "The input exceeds the context window size of model 'gpt-5.6-luna'.", "response": "Context window exceeded" } } @@ -8536,7 +8536,7 @@ "type": "assistant" } ], - "model": "gpt-4o-mini", + "model": "gpt-5.6-luna", "provider": "openai", "started_at": "2024-01-01T00:01:00Z", "tool_calls": [], @@ -9464,7 +9464,7 @@ "type": "assistant" } ], - "model": "gpt-4o-mini", + "model": "gpt-5.6-luna", "provider": "openai", "started_at": "2024-01-01T00:01:00Z", "tool_calls": [], @@ -10362,7 +10362,7 @@ "model": { "value": { "detail": { - "cause": "Model with ID gpt-4o-mini does not exist", + "cause": "Model with ID gpt-5.6-luna does not exist", "response": "Model not found" } } @@ -10410,7 +10410,7 @@ "context window exceeded": { "value": { "detail": { - "cause": "The input exceeds the context window size of model 'gpt-4o-mini'.", + "cause": "The input exceeds the context window size of model 'gpt-5.6-luna'.", "response": "Context window exceeded" } } @@ -10732,7 +10732,7 @@ "model": { "value": { "detail": { - "cause": "Model with ID gpt-4o-mini does not exist", + "cause": "Model with ID gpt-5.6-luna does not exist", "response": "Model not found" } } @@ -10752,7 +10752,7 @@ "context window exceeded": { "value": { "detail": { - "cause": "The input exceeds the context window size of model 'gpt-4o-mini'.", + "cause": "The input exceeds the context window size of model 'gpt-5.6-luna'.", "response": "Context window exceeded" } } @@ -14103,7 +14103,7 @@ "type": "assistant" } ], - "model": "gpt-4o-mini", + "model": "gpt-5.6-luna", "provider": "openai", "started_at": "2024-01-01T00:01:00Z", "tool_calls": [], @@ -14134,7 +14134,7 @@ "type": "assistant" } ], - "model": "gpt-4o-mini", + "model": "gpt-5.6-luna", "provider": "openai", "started_at": "2024-01-01T00:01:00Z", "tool_calls": [], @@ -14184,7 +14184,7 @@ "title": "Model", "description": "Model identifier used for this turn", "examples": [ - "gpt-4o-mini" + "gpt-5.6-luna" ] }, "started_at": { @@ -15266,7 +15266,7 @@ }, "type": "object", "title": "Per-model context window sizes (tokens)", - "description": "Map of fully-qualified model identifier (e.g., \"openai/gpt-4o-mini\") to context window size in tokens. Used by the conversation compaction trigger to decide when older turns must be summarized before the input exceeds the window. Models absent from this map have no registered window \u2014 callers fall back to their own default or skip the token-based trigger." + "description": "Map of fully-qualified model identifier (e.g., \"openai/gpt-5.6-luna\") to context window size in tokens. Used by the conversation compaction trigger to decide when older turns must be summarized before the input exceeds the window. Models absent from this map have no registered window \u2014 callers fall back to their own default or skip the token-based trigger." }, "providers": { "items": { @@ -16316,7 +16316,7 @@ }, { "detail": { - "cause": "Model with ID gpt-4o-mini does not exist", + "cause": "Model with ID gpt-5.6-luna does not exist", "response": "Model not found" }, "label": "model" @@ -18976,7 +18976,7 @@ "examples": [ { "detail": { - "cause": "The input exceeds the context window size of model 'gpt-4o-mini'.", + "cause": "The input exceeds the context window size of model 'gpt-5.6-luna'.", "response": "Context window exceeded" }, "label": "context window exceeded" @@ -20917,7 +20917,7 @@ "generate_topic_summary": true, "input": "Hello World!", "instructions": "You are a helpful assistant", - "model": "openai/gpt-4o-mini", + "model": "openai/gpt-5.6-luna", "store": true, "stream": false } @@ -22478,7 +22478,7 @@ { "config": { "invalid_question_response": "I can only answer questions about the product.", - "model_id": "openai/gpt-4o-mini", + "model_id": "openai/gpt-5.6-luna", "model_prompt": "Is this question valid?" }, "name": "question-validity", diff --git a/docs/models/successful_responses.json b/docs/models/successful_responses.json index e30a5a7f4..6dfbbc952 100644 --- a/docs/models/successful_responses.json +++ b/docs/models/successful_responses.json @@ -6021,7 +6021,7 @@ "available_quotas", "output_text" ], - "sse_example": "event: response.created\ndata: {\"type\":\"response.created\",\"sequence_number\":0,\"response\":{\"id\":\"resp_abc\",\"object\":\"response\",\"created_at\":1704067200,\"status\":\"in_progress\",\"model\":\"openai/gpt-5.6-luna\",\"output\":[],\"store\":true,\"text\":{\"format\":{\"type\":\"text\"}},\"conversation\":\"0d21ba731f21f798dc9680125d5d6f49\",\"available_quotas\":{},\"output_text\":\"\"}}\n\nevent: response.output_item.added\ndata: {\"type\":\"response.output_item.added\",\"sequence_number\":1,\"response_id\":\"resp_abc\",\"output_index\":0,\"item\":{\"id\":\"msg_abc\",\"type\":\"message\",\"status\":\"in_progress\",\"role\":\"assistant\",\"content\":[]}}\n\n...\n\nevent: response.completed\ndata: {\"type\":\"response.completed\",\"sequence_number\":30,\"response\":{\"id\":\"resp_abc\",\"object\":\"response\",\"created_at\":1704067200,\"status\":\"completed\",\"model\":\"openai/gpt-5.6-luna\",\"output\":[{\"id\":\"msg_abc\",\"type\":\"message\",\"status\":\"completed\",\"role\":\"assistant\",\"content\":[{\"type\":\"output_text\",\"text\":\"Hello! How can I help?\",\"annotations\":[]}]}],\"store\":true,\"text\":{\"format\":{\"type\":\"text\"}},\"usage\":{\"input_tokens\":10,\"output_tokens\":6,\"total_tokens\":16,\"input_tokens_details\":{\"cached_tokens\":0},\"output_tokens_details\":{\"reasoning_tokens\":0}},\"conversation\":\"0d21ba731f21f798dc9680125d5d6f49\",\"available_quotas\":{\"daily\":1000,\"monthly\":50000},\"output_text\":\"Hello! How can I help?\"}}\n\ndata: [DONE]\n\n", + "sse_example": "event: response.created\ndata: {\"type\":\"response.created\",\"sequence_number\":0,\"response\":{\"id\":\"resp_abc\",\"object\":\"response\",\"created_at\":1704067200,\"status\":\"in_progress\",\"model\":\"openai/gpt-4o-mini\",\"output\":[],\"store\":true,\"text\":{\"format\":{\"type\":\"text\"}},\"conversation\":\"0d21ba731f21f798dc9680125d5d6f49\",\"available_quotas\":{},\"output_text\":\"\"}}\n\nevent: response.output_item.added\ndata: {\"type\":\"response.output_item.added\",\"sequence_number\":1,\"response_id\":\"resp_abc\",\"output_index\":0,\"item\":{\"id\":\"msg_abc\",\"type\":\"message\",\"status\":\"in_progress\",\"role\":\"assistant\",\"content\":[]}}\n\n...\n\nevent: response.completed\ndata: {\"type\":\"response.completed\",\"sequence_number\":30,\"response\":{\"id\":\"resp_abc\",\"object\":\"response\",\"created_at\":1704067200,\"status\":\"completed\",\"model\":\"openai/gpt-4o-mini\",\"output\":[{\"id\":\"msg_abc\",\"type\":\"message\",\"status\":\"completed\",\"role\":\"assistant\",\"content\":[{\"type\":\"output_text\",\"text\":\"Hello! How can I help?\",\"annotations\":[]}]}],\"store\":true,\"text\":{\"format\":{\"type\":\"text\"}},\"usage\":{\"input_tokens\":10,\"output_tokens\":6,\"total_tokens\":16,\"input_tokens_details\":{\"cached_tokens\":0},\"output_tokens_details\":{\"reasoning_tokens\":0}},\"conversation\":\"0d21ba731f21f798dc9680125d5d6f49\",\"available_quotas\":{\"daily\":1000,\"monthly\":50000},\"output_text\":\"Hello! How can I help?\"}}\n\ndata: [DONE]\n\n", "title": "ResponsesResponse", "type": "object" }, diff --git a/src/models/api/requests/responses_openai.py b/src/models/api/requests/responses_openai.py index 24c41cf34..3020aeb6e 100644 --- a/src/models/api/requests/responses_openai.py +++ b/src/models/api/requests/responses_openai.py @@ -94,7 +94,7 @@ class ResponsesRequest(BaseModel): "examples": [ { "input": "Hello World!", - "model": "openai/gpt-4o-mini", + "model": "openai/gpt-5.6-luna", "instructions": "You are a helpful assistant", "store": True, "stream": False, diff --git a/src/models/api/responses/error/content_too_large.py b/src/models/api/responses/error/content_too_large.py index 689900547..272016d8f 100644 --- a/src/models/api/responses/error/content_too_large.py +++ b/src/models/api/responses/error/content_too_large.py @@ -24,7 +24,7 @@ class PromptTooLongResponse(AbstractErrorResponse): "response": "Context window exceeded", "cause": ( "The input exceeds the context window size " - "of model 'gpt-4o-mini'." + "of model 'gpt-5.6-luna'." ), }, }, diff --git a/src/models/api/responses/error/not_found.py b/src/models/api/responses/error/not_found.py index 6b01a4e42..1469e6baf 100644 --- a/src/models/api/responses/error/not_found.py +++ b/src/models/api/responses/error/not_found.py @@ -36,7 +36,7 @@ class NotFoundResponse(AbstractErrorResponse): "label": "model", "detail": { "response": "Model not found", - "cause": "Model with ID gpt-4o-mini does not exist", + "cause": "Model with ID gpt-5.6-luna does not exist", }, }, { diff --git a/src/models/api/responses/successful/catalog.py b/src/models/api/responses/successful/catalog.py index f6594ba47..c7459436f 100644 --- a/src/models/api/responses/successful/catalog.py +++ b/src/models/api/responses/successful/catalog.py @@ -127,7 +127,7 @@ class ShieldsResponse(AbstractSuccessfulResponse): "provider_id": "question_validity", "type": "shield", "config": { - "model_id": "openai/gpt-4o-mini", + "model_id": "openai/gpt-5.6-luna", "model_prompt": "Is this question valid?", "invalid_question_response": ( "I can only answer questions about the product." diff --git a/src/models/api/responses/successful/conversations.py b/src/models/api/responses/successful/conversations.py index b9d1bcab4..1bddff9d8 100644 --- a/src/models/api/responses/successful/conversations.py +++ b/src/models/api/responses/successful/conversations.py @@ -45,7 +45,7 @@ class ConversationResponse(AbstractSuccessfulResponse): "tool_calls": [], "tool_results": [], "provider": "openai", - "model": "gpt-4o-mini", + "model": "gpt-5.6-luna", "started_at": "2024-01-01T00:01:00Z", "completed_at": "2024-01-01T00:01:05Z", } @@ -67,7 +67,7 @@ class ConversationResponse(AbstractSuccessfulResponse): "tool_calls": [], "tool_results": [], "provider": "openai", - "model": "gpt-4o-mini", + "model": "gpt-5.6-luna", "started_at": "2024-01-01T00:01:00Z", "completed_at": "2024-01-01T00:01:05Z", } diff --git a/src/models/common/conversation.py b/src/models/common/conversation.py index 78ca8a25a..e2fff597d 100644 --- a/src/models/common/conversation.py +++ b/src/models/common/conversation.py @@ -156,7 +156,7 @@ class ConversationTurn(BaseModel): model: str = Field( ..., description="Model identifier used for this turn", - examples=["gpt-4o-mini"], + examples=["gpt-5.6-luna"], ) started_at: str = Field( ..., diff --git a/src/models/compaction.py b/src/models/compaction.py index 9821e240e..3336a52a9 100644 --- a/src/models/compaction.py +++ b/src/models/compaction.py @@ -37,7 +37,7 @@ class ConversationSummary(BaseModel): produced. Kept as a string (not datetime) to match the cache schema convention used elsewhere in the codebase. model_used: Fully-qualified model identifier used for the - summarization LLM call (e.g., ``"openai/gpt-4o-mini"``). + summarization LLM call (e.g., ``"openai/gpt-5.6-luna"``). Preserved for audit and for diagnostics when summary quality varies between models. diff --git a/src/models/config.py b/src/models/config.py index 044f85408..7fae4a9c8 100644 --- a/src/models/config.py +++ b/src/models/config.py @@ -2053,7 +2053,7 @@ class InferenceConfiguration(ConfigurationBase): default_factory=dict, title="Per-model context window sizes (tokens)", description="Map of fully-qualified model identifier (e.g., " - '"openai/gpt-4o-mini") to context window size in tokens. Used by ' + '"openai/gpt-5.6-luna") to context window size in tokens. Used by ' "the conversation compaction trigger to decide when older turns " "must be summarized before the input exceeds the window. Models " "absent from this map have no registered window — callers fall " diff --git a/src/pydantic_ai_lightspeed/capabilities/question_validity/_capability.py b/src/pydantic_ai_lightspeed/capabilities/question_validity/_capability.py index 190d5f18d..55e6e7253 100644 --- a/src/pydantic_ai_lightspeed/capabilities/question_validity/_capability.py +++ b/src/pydantic_ai_lightspeed/capabilities/question_validity/_capability.py @@ -63,7 +63,7 @@ class QuestionValidity(AbstractSafetyCapability): from pydantic_ai import Agent from pydantic_ai.models.openai import OpenAIResponsesModel - model = OpenAIResponsesModel("gpt-4o-mini") + model = OpenAIResponsesModel("gpt-5.6-luna") agent = Agent("openai:gpt-4.1", capabilities=[QuestionValidity(model)]) ```