feat(captain): pass reasoning effort to v2 agents

This commit is contained in:
aakashb95
2026-07-10 23:21:01 +05:30
parent 93d4e1ca0e
commit 9bfc54ea0c
2 changed files with 19 additions and 2 deletions
+9 -1
View File
@@ -10,7 +10,8 @@ module Concerns::Agentable
tools: agent_tools,
model: agent_model,
temperature: temperature.presence&.to_f || DEFAULT_TEMPERATURE,
response_schema: agent_response_schema
response_schema: agent_response_schema,
params: agent_params
)
end
@@ -52,6 +53,13 @@ module Concerns::Agentable
installation_model.presence || route[:model]
end
def agent_params
route = Llm::FeatureRouter.resolve(feature: 'assistant', account: account)
return {} if route[:reasoning_effort].blank?
{ reasoning_effort: route[:reasoning_effort] }
end
def installation_model
InstallationConfig.find_by(name: 'CAPTAIN_OPEN_AI_MODEL')&.value
end
@@ -50,7 +50,8 @@ RSpec.describe Concerns::Agentable do
tools: [],
model: Llm::Models.default_model_for('assistant'),
temperature: 0.8,
response_schema: Captain::ResponseSchema
response_schema: Captain::ResponseSchema,
params: { reasoning_effort: Llm::Models.reasoning_effort_for('assistant') }
)
dummy_instance.agent
@@ -194,6 +195,14 @@ RSpec.describe Concerns::Agentable do
end
end
describe '#agent_params' do
it 'returns reasoning effort for the assistant feature' do
expect(dummy_instance.send(:agent_params)).to eq(
reasoning_effort: Llm::Models.reasoning_effort_for('assistant')
)
end
end
describe '#agent_response_schema' do
it 'returns Captain::ResponseSchema' do
expect(dummy_instance.send(:agent_response_schema)).to eq(Captain::ResponseSchema)