Add a new 'Reasoning effort' UI element

This commit is contained in:
oobabooga 2025-08-05 15:19:11 -07:00
parent 6bb8212731
commit 498778b8ac
6 changed files with 13 additions and 2 deletions

View file

@ -43,6 +43,7 @@ class GenerationOptions(BaseModel):
ban_eos_token: bool = False
add_bos_token: bool = True
enable_thinking: bool = True
reasoning_effort: str = "medium"
skip_special_tokens: bool = True
static_cache: bool = False
truncation_length: int = 0

View file

@ -306,7 +306,8 @@ def generate_chat_prompt(user_input, state, **kwargs):
builtin_tools=None,
tools=state['tools'] if 'tools' in state else None,
tools_in_user_message=False,
add_generation_prompt=False
add_generation_prompt=False,
reasoning_effort=state.get('reasoning_effort', 'medium')
)
chat_renderer = partial(

View file

@ -137,6 +137,7 @@ def transformers_samplers():
'ban_eos_token',
'add_bos_token',
'enable_thinking',
'reasoning_effort',
'skip_special_tokens',
'static_cache',
'seed',
@ -189,6 +190,7 @@ loaders_samplers = {
'ban_eos_token',
'add_bos_token',
'enable_thinking',
'reasoning_effort',
'skip_special_tokens',
'seed',
'sampler_priority',
@ -236,6 +238,7 @@ loaders_samplers = {
'ban_eos_token',
'add_bos_token',
'enable_thinking',
'reasoning_effort',
'skip_special_tokens',
'seed',
'sampler_priority',
@ -275,6 +278,7 @@ loaders_samplers = {
'ban_eos_token',
'add_bos_token',
'enable_thinking',
'reasoning_effort',
'skip_special_tokens',
'seed',
'custom_token_bans',
@ -308,6 +312,7 @@ loaders_samplers = {
'ban_eos_token',
'add_bos_token',
'enable_thinking',
'reasoning_effort',
'seed',
'sampler_priority',
'dry_sequence_breakers',

View file

@ -211,6 +211,7 @@ settings = {
'ban_eos_token': False,
'add_bos_token': True,
'enable_thinking': True,
'reasoning_effort': 'medium',
'skip_special_tokens': True,
'stream': True,
'static_cache': False,

View file

@ -215,6 +215,7 @@ def list_interface_input_elements():
'ban_eos_token',
'add_bos_token',
'enable_thinking',
'reasoning_effort',
'skip_special_tokens',
'stream',
'static_cache',
@ -482,6 +483,7 @@ def setup_auto_save():
'ban_eos_token',
'add_bos_token',
'enable_thinking',
'reasoning_effort',
'skip_special_tokens',
'stream',
'static_cache',

View file

@ -78,7 +78,8 @@ def create_ui():
with gr.Row():
shared.gradio['start_with'] = gr.Textbox(label='Start reply with', placeholder='Sure thing!', value=shared.settings['start_with'], elem_classes=['add_scrollbar'])
shared.gradio['enable_thinking'] = gr.Checkbox(value=shared.settings['enable_thinking'], label='Enable thinking', info='Used by Qwen3 to toggle <think> mode.')
shared.gradio['reasoning_effort'] = gr.Dropdown(value=shared.settings['reasoning_effort'], choices=['low', 'medium', 'high'], label='Reasoning effort', info='Used by GPT-OSS.')
shared.gradio['enable_thinking'] = gr.Checkbox(value=shared.settings['enable_thinking'], label='Enable thinking', info='Used by pre-2507 Qwen3.')
shared.gradio['enable_web_search'] = gr.Checkbox(value=shared.settings.get('enable_web_search', False), label='Activate web search', elem_id='web-search')
with gr.Row(visible=shared.settings.get('enable_web_search', False)) as shared.gradio['web_search_row']:
shared.gradio['web_search_pages'] = gr.Number(value=shared.settings.get('web_search_pages', 3), precision=0, label='Number of pages to download', minimum=1, maximum=10)