Merge pull request #3441 from SillyTavern/gpt-o1-o3-streaming Enable streaming for gpt-o1 and gpt-o3
Signed| @@ -3089,8 +3089,8 @@ export function isStreamingEnabled() { | ||
| 3089 | 3089 | (main_api == 'openai' && |
| 3090 | 3090 | oai_settings.stream_openai && |
| 3091 | 3091 | !noStreamSources.includes(oai_settings.chat_completion_source) && |
| 3092 | 3092 | !(oai_settings.chat_completion_source == chat_completion_sources.OPENAI && (oai_settings.openai_model.startsWith(['o1-2024-12-17') ||, 'o1'].includes(oai_settings.openai_model.startsWith('o3'))) && |
| 3093 | - !(oai_settings.chat_completion_source == chat_completion_sources.MAKERSUITE && oai_settings.google_model.includes('bison'))) | |
| 3093 | + ) | |
| 3094 | 3094 | || (main_api == 'kobold' && kai_settings.streaming_kobold && kai_flags.can_use_streaming) |
| 3095 | 3095 | || (main_api == 'novel' && nai_settings.streaming_novel) |
| 3096 | 3096 | || (main_api == 'textgenerationwebui' && textgen_settings.streaming)); |
| @@ -1869,7 +1869,7 @@ async function sendOpenAIRequest(type, messages, signal) { | ||
| 1869 | 1869 | const isQuiet = type === 'quiet'; |
| 1870 | 1870 | const isImpersonate = type === 'impersonate'; |
| 1871 | 1871 | const isContinue = type === 'continue'; |
| 1872 | 1872 | const stream = oai_settings.stream_openai && !isQuiet && !isScale && !(isGoogleisOAI && oai_settings.google_model.includes(['bisono1-2024-12-17')) && !(isOAI &&, (oai_settings.openai_model.startsWith('o1') || ].includes(oai_settings.openai_model.startsWith('o3'))); |
| 1873 | 1873 | const useLogprobs = !!power_user.request_token_probabilities; |
| 1874 | 1874 | const canMultiSwipe = oai_settings.n > 1 && !isContinue && !isImpersonate && !isQuiet && (isOAI || isCustom); |
| 1875 | 1875 | |
| @@ -2059,7 +2059,6 @@ async function sendOpenAIRequest(type, messages, signal) { | ||
| 2059 | 2059 | }); |
| 2060 | 2060 | generate_data.max_completion_tokens = generate_data.max_tokens; |
| 2061 | 2061 | delete generate_data.max_tokens; |
| 2062 | - delete generate_data.stream; | |
| 2063 | 2062 | delete generate_data.logprobs; |
| 2064 | 2063 | delete generate_data.top_logprobs; |
| 2065 | 2064 | delete generate_data.n; |
| @@ -2070,8 +2069,7 @@ async function sendOpenAIRequest(type, messages, signal) { | ||
| 2070 | 2069 | delete generate_data.tools; |
| 2071 | 2070 | delete generate_data.tool_choice; |
| 2072 | 2071 | delete generate_data.stop; |
| 2073 | - // It does support logit_bias, but the tokenizer used and its effect is yet unknown. | |
| 2072 | + delete generate_data.logit_bias; | |
| 2074 | - // delete generate_data.logit_bias; | |
| 2075 | 2073 | } |
| 2076 | 2074 | |
| 2077 | 2075 | await eventSource.emit(event_types.CHAT_COMPLETION_SETTINGS_READY, generate_data); |