feat: change default value for legacy put_inner_thoughts_in_kwargs (#6395)
* feat: change default value for legacy put_inner_thoughts_in_kwargs * update default in validation layer
This commit is contained in:
@@ -28873,7 +28873,7 @@
|
||||
],
|
||||
"title": "Put Inner Thoughts In Kwargs",
|
||||
"description": "Puts 'inner_thoughts' as a kwarg in the function call if this is set to True. This helps with function calling performance and also the generation of inner thoughts.",
|
||||
"default": true
|
||||
"default": false
|
||||
},
|
||||
"handle": {
|
||||
"anyOf": [
|
||||
|
||||
@@ -55,7 +55,7 @@ class LLMConfig(BaseModel):
|
||||
model_wrapper: Optional[str] = Field(None, description="The wrapper for the model.")
|
||||
context_window: int = Field(..., description="The context window size for the model.")
|
||||
put_inner_thoughts_in_kwargs: Optional[bool] = Field(
|
||||
True,
|
||||
False,
|
||||
description="Puts 'inner_thoughts' as a kwarg in the function call if this is set to True. This helps with function calling performance and also the generation of inner thoughts.",
|
||||
)
|
||||
handle: Optional[str] = Field(None, description="The handle for this config, in the format provider/model-name.")
|
||||
@@ -163,11 +163,11 @@ class LLMConfig(BaseModel):
|
||||
if model is None:
|
||||
return values
|
||||
|
||||
# Define models where we want put_inner_thoughts_in_kwargs to be False
|
||||
avoid_put_inner_thoughts_in_kwargs = ["gpt-4"]
|
||||
|
||||
# Default put_inner_thoughts_in_kwargs to False for all models
|
||||
# Reasoning models (o1, o3, o4, claude-sonnet-4, etc.) will have this set to False below
|
||||
# Non-reasoner models should also default to False to avoid unwanted reasoning token generation
|
||||
if values.get("put_inner_thoughts_in_kwargs") is None:
|
||||
values["put_inner_thoughts_in_kwargs"] = False if model in avoid_put_inner_thoughts_in_kwargs else True
|
||||
values["put_inner_thoughts_in_kwargs"] = False
|
||||
|
||||
# For the o1/o3 series from OpenAI, set to False by default
|
||||
# We can set this flag to `true` if desired, which will enable "double-think"
|
||||
|
||||
@@ -2391,11 +2391,9 @@ def test_inner_thoughts_false_non_reasoner_models(
|
||||
pytest.skip(f"Skipping test for reasoning model {model_handle}")
|
||||
|
||||
# Note: This test is for models without reasoning, so model_settings should already have reasoning disabled
|
||||
# We don't need to modify anything
|
||||
|
||||
last_message_page = client.agents.messages.list(agent_id=agent_state.id, limit=1)
|
||||
last_message = last_message_page.items[0] if last_message_page.items else None
|
||||
model_settings["put_inner_thoughts_in_kwargs"] = False
|
||||
agent_state = client.agents.update(agent_id=agent_state.id, model=model_handle, model_settings=model_settings)
|
||||
response = client.agents.messages.create(
|
||||
agent_id=agent_state.id,
|
||||
|
||||
Reference in New Issue
Block a user