-
Notifications
You must be signed in to change notification settings - Fork 2.6k
feat: add manual thinking budget control for supported providers/models #3892
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add manual thinking budget control for supported providers/models #3892
Conversation
|
-.- Rework of reasoning was just merged, guess i need to adjust this for the rework |
|
@Ruakij sorry about that! |
908960b to
bcb4275
Compare
|
@Ruakij is attempting to deploy a commit to the Roo Code Team on Vercel. A member of the Team first needs to authorize it. |
|
I moved this back into queue as it looked like @Ruakij made adjustments requested. |
| "useCustomBaseUrl": "Use custom base URL", | ||
| "useReasoning": "Enable reasoning", | ||
| "setReasoningEffort": "Set reasoning effort", | ||
| "implicitReasoning": "Provider will choose reasoning effort. Depending on the model this might automatic choose reasoning effort depending on the request.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There appears to be a typographical error in the sentence. Consider revising:
"Provider will choose reasoning effort. Depending on the model this might automatic choose reasoning effort depending on the request."
Suggested correction:
"Provider will choose reasoning effort. Depending on the model, this might automatically choose the reasoning effort based on the request."
| "implicitReasoning": "Provider will choose reasoning effort. Depending on the model this might automatic choose reasoning effort depending on the request.", | |
| "implicitReasoning": "Provider will choose reasoning effort. Depending on the model, this might automatically choose the reasoning effort based on the request.", |
| "getGlamaApiKey": "Glama APIキーを取得", | ||
| "useCustomBaseUrl": "カスタムベースURLを使用", | ||
| "useReasoning": "推論を有効化", | ||
| "setReasoningEffort": "推論の強度を設定", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Typographical note: The term “推論の強度” in the setReasoningEffort entry is inconsistent with the subsequent keys, which use “推論努力”. Consider using consistent terminology for clarity.
| "setReasoningEffort": "推論の強度を設定", | |
| "setReasoningEffort": "推論努力を設定", |
This comment was generated because it violated a code review rule: irule_C0ez7Rji6ANcGkkX.
| "getGlamaApiKey": "Lấy khóa API Glama", | ||
| "useCustomBaseUrl": "Sử dụng URL cơ sở tùy chỉnh", | ||
| "useReasoning": "Bật lý luận", | ||
| "setReasoningEffort": "Đặt nỗ lực lý luận", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Typo: The term "lý luận" is used in the value for setReasoningEffort, but the following keys use "suy luận". It might be more consistent to change "Đặt nỗ lực lý luận" to "Đặt nỗ lực suy luận".
| "setReasoningEffort": "Đặt nỗ lực lý luận", | |
| "setReasoningEffort": "Đặt nỗ lực suy luận", |
This comment was generated because it violated a code review rule: irule_C0ez7Rji6ANcGkkX.
|
I had switched the existing Set reasoning button to instead set thinking budget to unset when unchecked. So this needs some more work, dont think i can finish this at the moment. |
Ok will close this and allow someone else to take up the issue. |
Related GitHub Issue
Closes: #3008
Description
This PR introduces manual control for the "thinking token limit" if supported. Not setting it will use default handling by provider/model e.g. Gemini will then adjust the budget according to the request as their docs.
Support for this feature is determined by checking if
modelInfohasmodelMaxThinkingTokens. (from a quick glance, this seems to correlate with the only providers for which we support it currently:geminiandvertex)Key changes:
manualThinkingBudgetEnabledsetting (defaults tofalse), which sets max thinking token limit to undefined whenfalse, resulting it it not being added to the request.modelMaxThinkingTokensalready set (setsmanualThinkingBudgetEnabledtotrue).Test Procedure
modelMaxThinkingTokensshould have manual control enabled.Type of Change
srcor test files.Pre-Submission Checklist
npm run lint).console.log) has been removed.npm test).mainbranch.npm run changesetif this PR includes user-facing changes or dependency updates.Screenshots / Videos
Unchecked:



Checked:
Disabled on OpenRouter:
Documentation Updates
Additional Notes
Get in Touch
Discord:
ruakijImportant
Introduces manual control for thinking token limits with UI updates, profile migration, and tests, affecting several files and settings.
manualThinkingBudgetEnabledsetting to control thinking token limits, defaulting tofalse.modelMaxThinkingTokensto enable manual control.gemini.tsandvertex.tsto usesetReasoningEffortfor thinking token configuration.ProviderSettingsManager.tsto include migration logic for manual thinking budget.model-params.tsandreasoning.tsto useshouldSetReasoningBudget.ApiOptions.test.tsxandThinkingBudget.tsx.enableReasoningEfforttosetReasoningEffortacross multiple files.settings.jsonfiles for new settings.This description was created by
for bcb4275. You can customize this summary. It will automatically update as commits are pushed.