diff --git a/client-sdks/stainless/openapi.yml b/client-sdks/stainless/openapi.yml index da61a6385f..b328836c96 100644 --- a/client-sdks/stainless/openapi.yml +++ b/client-sdks/stainless/openapi.yml @@ -4151,6 +4151,16 @@ components: type: array - type: 'null' nullable: true + reasoning_content: + anyOf: + - type: string + - type: 'null' + nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIAssistantMessageParam type: object OpenAIChatCompletionContentPartImageParam: @@ -4218,6 +4228,11 @@ components: title: OpenAIChatCompletionToolCallFunction - type: 'null' title: OpenAIChatCompletionToolCallFunction + extra_content: + anyOf: + - additionalProperties: true + type: object + - type: 'null' type: object title: OpenAIChatCompletionToolCall description: Tool call specification for OpenAI-compatible chat completion responses. @@ -4880,6 +4895,11 @@ components: - type: string - type: 'null' nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIChoiceDelta type: object OpenAIChunkChoice: @@ -11747,6 +11767,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. @@ -11776,6 +11804,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. diff --git a/docs/static/deprecated-llama-stack-spec.yaml b/docs/static/deprecated-llama-stack-spec.yaml index d07b216b01..804e44d8c4 100644 --- a/docs/static/deprecated-llama-stack-spec.yaml +++ b/docs/static/deprecated-llama-stack-spec.yaml @@ -994,6 +994,16 @@ components: type: array - type: 'null' nullable: true + reasoning_content: + anyOf: + - type: string + - type: 'null' + nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIAssistantMessageParam type: object OpenAIChatCompletionContentPartImageParam: @@ -1061,6 +1071,11 @@ components: title: OpenAIChatCompletionToolCallFunction - type: 'null' title: OpenAIChatCompletionToolCallFunction + extra_content: + anyOf: + - additionalProperties: true + type: object + - type: 'null' type: object title: OpenAIChatCompletionToolCall description: Tool call specification for OpenAI-compatible chat completion responses. @@ -1723,6 +1738,11 @@ components: - type: string - type: 'null' nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIChoiceDelta type: object OpenAIChunkChoice: @@ -8590,6 +8610,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. @@ -8619,6 +8647,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. diff --git a/docs/static/experimental-llama-stack-spec.yaml b/docs/static/experimental-llama-stack-spec.yaml index 4d5a436939..b6fff643b2 100644 --- a/docs/static/experimental-llama-stack-spec.yaml +++ b/docs/static/experimental-llama-stack-spec.yaml @@ -859,6 +859,16 @@ components: type: array - type: 'null' nullable: true + reasoning_content: + anyOf: + - type: string + - type: 'null' + nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIAssistantMessageParam type: object OpenAIChatCompletionContentPartImageParam: @@ -926,6 +936,11 @@ components: title: OpenAIChatCompletionToolCallFunction - type: 'null' title: OpenAIChatCompletionToolCallFunction + extra_content: + anyOf: + - additionalProperties: true + type: object + - type: 'null' type: object title: OpenAIChatCompletionToolCall description: Tool call specification for OpenAI-compatible chat completion responses. @@ -1588,6 +1603,11 @@ components: - type: string - type: 'null' nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIChoiceDelta type: object OpenAIChunkChoice: @@ -7582,6 +7602,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. @@ -7611,6 +7639,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. diff --git a/docs/static/llama-stack-spec.yaml b/docs/static/llama-stack-spec.yaml index 0d91aeaaa4..7e3a5c8383 100644 --- a/docs/static/llama-stack-spec.yaml +++ b/docs/static/llama-stack-spec.yaml @@ -3172,6 +3172,16 @@ components: type: array - type: 'null' nullable: true + reasoning_content: + anyOf: + - type: string + - type: 'null' + nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIAssistantMessageParam type: object OpenAIChatCompletionContentPartImageParam: @@ -3239,6 +3249,11 @@ components: title: OpenAIChatCompletionToolCallFunction - type: 'null' title: OpenAIChatCompletionToolCallFunction + extra_content: + anyOf: + - additionalProperties: true + type: object + - type: 'null' type: object title: OpenAIChatCompletionToolCall description: Tool call specification for OpenAI-compatible chat completion responses. @@ -3901,6 +3916,11 @@ components: - type: string - type: 'null' nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIChoiceDelta type: object OpenAIChunkChoice: @@ -10417,6 +10437,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. @@ -10446,6 +10474,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. diff --git a/docs/static/stainless-llama-stack-spec.yaml b/docs/static/stainless-llama-stack-spec.yaml index da61a6385f..b328836c96 100644 --- a/docs/static/stainless-llama-stack-spec.yaml +++ b/docs/static/stainless-llama-stack-spec.yaml @@ -4151,6 +4151,16 @@ components: type: array - type: 'null' nullable: true + reasoning_content: + anyOf: + - type: string + - type: 'null' + nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIAssistantMessageParam type: object OpenAIChatCompletionContentPartImageParam: @@ -4218,6 +4228,11 @@ components: title: OpenAIChatCompletionToolCallFunction - type: 'null' title: OpenAIChatCompletionToolCallFunction + extra_content: + anyOf: + - additionalProperties: true + type: object + - type: 'null' type: object title: OpenAIChatCompletionToolCall description: Tool call specification for OpenAI-compatible chat completion responses. @@ -4880,6 +4895,11 @@ components: - type: string - type: 'null' nullable: true + reasoning: + anyOf: + - type: string + - type: 'null' + nullable: true title: OpenAIChoiceDelta type: object OpenAIChunkChoice: @@ -11747,6 +11767,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. @@ -11776,6 +11804,14 @@ components: $ref: '#/components/schemas/OpenAIChatCompletionToolCall' type: array - type: 'null' + reasoning_content: + anyOf: + - type: string + - type: 'null' + reasoning: + anyOf: + - type: string + - type: 'null' type: object title: OpenAIAssistantMessageParam description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request. diff --git a/src/llama_stack_api/inference.py b/src/llama_stack_api/inference.py index 4a169486a5..4613fb226b 100644 --- a/src/llama_stack_api/inference.py +++ b/src/llama_stack_api/inference.py @@ -438,6 +438,7 @@ class OpenAIChatCompletionToolCall(BaseModel): id: str | None = None type: Literal["function"] = "function" function: OpenAIChatCompletionToolCallFunction | None = None + extra_content: dict[str, Any] | None = None @json_schema_type @@ -448,12 +449,16 @@ class OpenAIAssistantMessageParam(BaseModel): :param content: The content of the model's response :param name: (Optional) The name of the assistant message participant. :param tool_calls: List of tool calls. Each tool call is an OpenAIChatCompletionToolCall object. + :param reasoning_content: (Optional) The reasoning content from the model (for vLLM ≤ v0.8.4) + :param reasoning: (Optional) The reasoning content from the model (for vLLM ≥ v0.9.x) """ role: Literal["assistant"] = "assistant" content: OpenAIChatCompletionTextOnlyMessageContent | None = None name: str | None = None tool_calls: list[OpenAIChatCompletionToolCall] | None = None + reasoning_content: str | None = None + reasoning: str | None = None @json_schema_type @@ -605,7 +610,8 @@ class OpenAIChoiceDelta(BaseModel): :param refusal: (Optional) The refusal of the delta :param role: (Optional) The role of the delta :param tool_calls: (Optional) The tool calls of the delta - :param reasoning_content: (Optional) The reasoning content from the model (non-standard, for o1/o3 models) + :param reasoning_content: (Optional) The reasoning content from the model (for vLLM ≤ v0.8.4) + :param reasoning: (Optional) The reasoning content from the model (for vLLM ≥ v0.9.x) """ content: str | None = None @@ -613,6 +619,7 @@ class OpenAIChoiceDelta(BaseModel): role: str | None = None tool_calls: list[OpenAIChatCompletionToolCall] | None = None reasoning_content: str | None = None + reasoning: str | None = None @json_schema_type