diff --git a/webview-ui/src/components/settings/ApiOptions.tsx b/webview-ui/src/components/settings/ApiOptions.tsx index dcdf072a11..6e553797c3 100644 --- a/webview-ui/src/components/settings/ApiOptions.tsx +++ b/webview-ui/src/components/settings/ApiOptions.tsx @@ -3,6 +3,7 @@ import { convertHeadersToObject } from "./utils/headers" import { useDebounce } from "react-use" import { VSCodeLink } from "@vscode/webview-ui-toolkit/react" import { ExternalLinkIcon } from "@radix-ui/react-icons" +import { Checkbox } from "vscrui" import { type ProviderName, @@ -677,6 +678,20 @@ const ApiOptions = ({ } onChange={(value) => setApiConfigurationField("consecutiveMistakeLimit", value)} /> + {selectedProvider === "openai-native" && ( +
+ { + setApiConfigurationField("openAiNativeStreamingEnabled", !checked) + }}> + {t("settings:modelInfo.disableStreaming")} + +
+ {t("settings:modelInfo.disableStreamingDescription")} +
+
+ )} {selectedProvider === "openrouter" && openRouterModelProviders && Object.keys(openRouterModelProviders).length > 0 && ( diff --git a/webview-ui/src/components/settings/providers/OpenAI.tsx b/webview-ui/src/components/settings/providers/OpenAI.tsx index 5d565784cb..e2f7857fe0 100644 --- a/webview-ui/src/components/settings/providers/OpenAI.tsx +++ b/webview-ui/src/components/settings/providers/OpenAI.tsx @@ -7,7 +7,7 @@ import type { ProviderSettings } from "@roo-code/types" import { useAppTranslation } from "@src/i18n/TranslationContext" import { VSCodeButtonLink } from "@src/components/common/VSCodeButtonLink" -import { inputEventTransform, noTransform } from "../transforms" +import { inputEventTransform } from "../transforms" type OpenAIProps = { apiConfiguration: ProviderSettings @@ -72,14 +72,6 @@ export const OpenAI = ({ apiConfiguration, setApiConfigurationField }: OpenAIPro {t("settings:providers.getOpenAiApiKey")} )} - - {t("settings:modelInfo.enableStreaming")} - -
- {t("settings:modelInfo.enableStreamingDescription")} -
) } diff --git a/webview-ui/src/i18n/locales/ca/settings.json b/webview-ui/src/i18n/locales/ca/settings.json index bfc2a16135..65713ad379 100644 --- a/webview-ui/src/i18n/locales/ca/settings.json +++ b/webview-ui/src/i18n/locales/ca/settings.json @@ -737,8 +737,8 @@ "outputPrice": "Preu de sortida", "cacheReadsPrice": "Preu de lectures de caché", "cacheWritesPrice": "Preu d'escriptures de caché", - "enableStreaming": "Habilitar streaming", - "enableStreamingDescription": "Desactiva el streaming si trobes errors de verificació d'organització amb models avançats. Les sol·licituds sense streaming poden funcionar sense verificació.", + "disableStreaming": "Desactivar streaming", + "disableStreamingDescription": "Marca això si trobes errors de verificació d'organització amb models avançats com GPT-5. Les sol·licituds sense streaming poden funcionar sense verificació.", "enableR1Format": "Activar els paràmetres del model R1", "enableR1FormatTips": "S'ha d'activat quan s'utilitzen models R1 com el QWQ per evitar errors 400", "useAzure": "Utilitzar Azure", diff --git a/webview-ui/src/i18n/locales/de/settings.json b/webview-ui/src/i18n/locales/de/settings.json index 15d473a27a..355f03fdca 100644 --- a/webview-ui/src/i18n/locales/de/settings.json +++ b/webview-ui/src/i18n/locales/de/settings.json @@ -737,8 +737,8 @@ "outputPrice": "Ausgabepreis", "cacheReadsPrice": "Cache-Lesepreis", "cacheWritesPrice": "Cache-Schreibpreis", - "enableStreaming": "Streaming aktivieren", - "enableStreamingDescription": "Deaktiviere Streaming, wenn du bei erweiterten Modellen auf Organisationsverifizierungsfehler stößt. Nicht-Streaming-Anfragen funktionieren möglicherweise ohne Verifizierung.", + "disableStreaming": "Streaming deaktivieren", + "disableStreamingDescription": "Aktiviere dies, wenn du bei erweiterten Modellen wie GPT-5 auf Organisationsverifizierungsfehler stößt. Nicht-Streaming-Anfragen funktionieren möglicherweise ohne Verifizierung.", "enableR1Format": "R1-Modellparameter aktivieren", "enableR1FormatTips": "Muss bei Verwendung von R1-Modellen wie QWQ aktiviert werden, um 400er-Fehler zu vermeiden", "useAzure": "Azure verwenden", diff --git a/webview-ui/src/i18n/locales/en/settings.json b/webview-ui/src/i18n/locales/en/settings.json index 938c8d6612..e6a7c9263f 100644 --- a/webview-ui/src/i18n/locales/en/settings.json +++ b/webview-ui/src/i18n/locales/en/settings.json @@ -736,8 +736,8 @@ "outputPrice": "Output price", "cacheReadsPrice": "Cache reads price", "cacheWritesPrice": "Cache writes price", - "enableStreaming": "Enable streaming", - "enableStreamingDescription": "Disable streaming if you encounter organization verification errors with advanced models. Non-streaming requests may work without verification.", + "disableStreaming": "Disable streaming", + "disableStreamingDescription": "Check this if you encounter organization verification errors with advanced models like GPT-5. Non-streaming requests may work without verification.", "enableR1Format": "Enable R1 model parameters", "enableR1FormatTips": "Must be enabled when using R1 models such as QWQ to prevent 400 errors", "useAzure": "Use Azure", diff --git a/webview-ui/src/i18n/locales/es/settings.json b/webview-ui/src/i18n/locales/es/settings.json index c419b0189b..1ec5b306c8 100644 --- a/webview-ui/src/i18n/locales/es/settings.json +++ b/webview-ui/src/i18n/locales/es/settings.json @@ -737,8 +737,8 @@ "outputPrice": "Precio de salida", "cacheReadsPrice": "Precio de lecturas de caché", "cacheWritesPrice": "Precio de escrituras de caché", - "enableStreaming": "Habilitar streaming", - "enableStreamingDescription": "Desactiva el streaming si encuentras errores de verificación de organización con modelos avanzados. Las solicitudes sin streaming pueden funcionar sin verificación.", + "disableStreaming": "Desactivar streaming", + "disableStreamingDescription": "Marca esto si encuentras errores de verificación de organización con modelos avanzados como GPT-5. Las solicitudes sin streaming pueden funcionar sin verificación.", "enableR1Format": "Habilitar parámetros del modelo R1", "enableR1FormatTips": "Debe habilitarse al utilizar modelos R1 como QWQ, para evitar el error 400", "useAzure": "Usar Azure", diff --git a/webview-ui/src/i18n/locales/fr/settings.json b/webview-ui/src/i18n/locales/fr/settings.json index e81bc07b6a..b8ea615468 100644 --- a/webview-ui/src/i18n/locales/fr/settings.json +++ b/webview-ui/src/i18n/locales/fr/settings.json @@ -737,8 +737,8 @@ "outputPrice": "Prix de sortie", "cacheReadsPrice": "Prix des lectures de cache", "cacheWritesPrice": "Prix des écritures de cache", - "enableStreaming": "Activer le streaming", - "enableStreamingDescription": "Désactive le streaming si tu rencontres des erreurs de vérification d'organisation avec des modèles avancés. Les requêtes sans streaming peuvent fonctionner sans vérification.", + "disableStreaming": "Désactiver le streaming", + "disableStreamingDescription": "Coche ceci si tu rencontres des erreurs de vérification d'organisation avec des modèles avancés comme GPT-5. Les requêtes sans streaming peuvent fonctionner sans vérification.", "enableR1Format": "Activer les paramètres du modèle R1", "enableR1FormatTips": "Doit être activé lors de l'utilisation de modèles R1 tels que QWQ, pour éviter l'erreur 400", "useAzure": "Utiliser Azure", diff --git a/webview-ui/src/i18n/locales/hi/settings.json b/webview-ui/src/i18n/locales/hi/settings.json index 5037b15d6e..5ce6e63cc5 100644 --- a/webview-ui/src/i18n/locales/hi/settings.json +++ b/webview-ui/src/i18n/locales/hi/settings.json @@ -738,8 +738,8 @@ "outputPrice": "आउटपुट मूल्य", "cacheReadsPrice": "कैश रीड्स मूल्य", "cacheWritesPrice": "कैश राइट्स मूल्य", - "enableStreaming": "स्ट्रीमिंग सक्षम करें", - "enableStreamingDescription": "यदि आपको उन्नत मॉडल के साथ संगठन सत्यापन त्रुटियों का सामना करना पड़ता है तो स्ट्रीमिंग अक्षम करें। गैर-स्ट्रीमिंग अनुरोध सत्यापन के बिना काम कर सकते हैं।", + "disableStreaming": "स्ट्रीमिंग अक्षम करें", + "disableStreamingDescription": "यदि आपको GPT-5 जैसे उन्नत मॉडल के साथ संगठन सत्यापन त्रुटियों का सामना करना पड़ता है तो इसे चेक करें। गैर-स्ट्रीमिंग अनुरोध सत्यापन के बिना काम कर सकते हैं।", "enableR1Format": "R1 मॉडल पैरामीटर सक्षम करें", "enableR1FormatTips": "QWQ जैसी R1 मॉडलों का उपयोग करते समय इसे सक्षम करना आवश्यक है, ताकि 400 त्रुटि से बचा जा सके", "useAzure": "Azure का उपयोग करें", diff --git a/webview-ui/src/i18n/locales/id/settings.json b/webview-ui/src/i18n/locales/id/settings.json index 73b37a20c0..f594813883 100644 --- a/webview-ui/src/i18n/locales/id/settings.json +++ b/webview-ui/src/i18n/locales/id/settings.json @@ -767,8 +767,8 @@ "outputPrice": "Harga output", "cacheReadsPrice": "Harga cache reads", "cacheWritesPrice": "Harga cache writes", - "enableStreaming": "Aktifkan streaming", - "enableStreamingDescription": "Nonaktifkan streaming jika kamu mengalami kesalahan verifikasi organisasi dengan model lanjutan. Permintaan non-streaming mungkin berfungsi tanpa verifikasi.", + "disableStreaming": "Nonaktifkan streaming", + "disableStreamingDescription": "Centang ini jika kamu mengalami kesalahan verifikasi organisasi dengan model lanjutan seperti GPT-5. Permintaan non-streaming mungkin berfungsi tanpa verifikasi.", "enableR1Format": "Aktifkan parameter model R1", "enableR1FormatTips": "Harus diaktifkan saat menggunakan model R1 seperti QWQ untuk mencegah error 400", "useAzure": "Gunakan Azure", diff --git a/webview-ui/src/i18n/locales/it/settings.json b/webview-ui/src/i18n/locales/it/settings.json index a32810c736..01f98982f9 100644 --- a/webview-ui/src/i18n/locales/it/settings.json +++ b/webview-ui/src/i18n/locales/it/settings.json @@ -738,8 +738,8 @@ "outputPrice": "Prezzo output", "cacheReadsPrice": "Prezzo letture cache", "cacheWritesPrice": "Prezzo scritture cache", - "enableStreaming": "Abilita streaming", - "enableStreamingDescription": "Disabilita lo streaming se riscontri errori di verifica dell'organizzazione con modelli avanzati. Le richieste non in streaming potrebbero funzionare senza verifica.", + "disableStreaming": "Disabilita streaming", + "disableStreamingDescription": "Seleziona questo se riscontri errori di verifica dell'organizzazione con modelli avanzati come GPT-5. Le richieste non in streaming potrebbero funzionare senza verifica.", "enableR1Format": "Abilita i parametri del modello R1", "enableR1FormatTips": "Deve essere abilitato quando si utilizzano modelli R1 come QWQ, per evitare l'errore 400", "useAzure": "Usa Azure", diff --git a/webview-ui/src/i18n/locales/ja/settings.json b/webview-ui/src/i18n/locales/ja/settings.json index 9fd32aeed1..b631923078 100644 --- a/webview-ui/src/i18n/locales/ja/settings.json +++ b/webview-ui/src/i18n/locales/ja/settings.json @@ -738,8 +738,8 @@ "outputPrice": "出力価格", "cacheReadsPrice": "キャッシュ読み取り価格", "cacheWritesPrice": "キャッシュ書き込み価格", - "enableStreaming": "ストリーミングを有効化", - "enableStreamingDescription": "高度なモデルで組織の検証エラーが発生した場合は、ストリーミングを無効にしてください。非ストリーミングリクエストは検証なしで動作する可能性があります。", + "disableStreaming": "ストリーミングを無効化", + "disableStreamingDescription": "GPT-5のような高度なモデルで組織の検証エラーが発生した場合は、これをチェックしてください。非ストリーミングリクエストは検証なしで動作する可能性があります。", "enableR1Format": "R1モデルパラメータを有効にする", "enableR1FormatTips": "QWQなどのR1モデルを使用する際には、有効にする必要があります。400エラーを防ぐために", "useAzure": "Azureを使用", diff --git a/webview-ui/src/i18n/locales/ko/settings.json b/webview-ui/src/i18n/locales/ko/settings.json index 4d93ce352a..7d76903b0f 100644 --- a/webview-ui/src/i18n/locales/ko/settings.json +++ b/webview-ui/src/i18n/locales/ko/settings.json @@ -738,8 +738,8 @@ "outputPrice": "출력 가격", "cacheReadsPrice": "캐시 읽기 가격", "cacheWritesPrice": "캐시 쓰기 가격", - "enableStreaming": "스트리밍 활성화", - "enableStreamingDescription": "고급 모델에서 조직 확인 오류가 발생하면 스트리밍을 비활성화하세요. 비스트리밍 요청은 확인 없이 작동할 수 있습니다.", + "disableStreaming": "스트리밍 비활성화", + "disableStreamingDescription": "GPT-5와 같은 고급 모델에서 조직 확인 오류가 발생하면 이것을 체크하세요. 비스트리밍 요청은 확인 없이 작동할 수 있습니다.", "enableR1Format": "R1 모델 매개변수 활성화", "enableR1FormatTips": "QWQ와 같은 R1 모델을 사용할 때 활성화해야 하며, 400 오류를 방지합니다", "useAzure": "Azure 사용", diff --git a/webview-ui/src/i18n/locales/nl/settings.json b/webview-ui/src/i18n/locales/nl/settings.json index e88769fb92..7dddf7a1a3 100644 --- a/webview-ui/src/i18n/locales/nl/settings.json +++ b/webview-ui/src/i18n/locales/nl/settings.json @@ -738,8 +738,8 @@ "outputPrice": "Uitvoerprijs", "cacheReadsPrice": "Cache-leesprijs", "cacheWritesPrice": "Cache-schrijfprijs", - "enableStreaming": "Streaming inschakelen", - "enableStreamingDescription": "Schakel streaming uit als je organisatieverificatiefouten tegenkomt met geavanceerde modellen. Niet-streaming verzoeken kunnen zonder verificatie werken.", + "disableStreaming": "Streaming uitschakelen", + "disableStreamingDescription": "Vink dit aan als je organisatieverificatiefouten tegenkomt met geavanceerde modellen zoals GPT-5. Niet-streaming verzoeken kunnen zonder verificatie werken.", "enableR1Format": "R1-modelparameters inschakelen", "enableR1FormatTips": "Moet ingeschakeld zijn bij gebruik van R1-modellen zoals QWQ om 400-fouten te voorkomen", "useAzure": "Azure gebruiken", diff --git a/webview-ui/src/i18n/locales/pl/settings.json b/webview-ui/src/i18n/locales/pl/settings.json index 322eb98aa6..ce6420d293 100644 --- a/webview-ui/src/i18n/locales/pl/settings.json +++ b/webview-ui/src/i18n/locales/pl/settings.json @@ -738,8 +738,8 @@ "outputPrice": "Cena wyjścia", "cacheReadsPrice": "Cena odczytów bufora", "cacheWritesPrice": "Cena zapisów bufora", - "enableStreaming": "Włącz strumieniowanie", - "enableStreamingDescription": "Wyłącz strumieniowanie, jeśli napotkasz błędy weryfikacji organizacji z zaawansowanymi modelami. Żądania bez strumieniowania mogą działać bez weryfikacji.", + "disableStreaming": "Wyłącz strumieniowanie", + "disableStreamingDescription": "Zaznacz to, jeśli napotkasz błędy weryfikacji organizacji z zaawansowanymi modelami takimi jak GPT-5. Żądania bez strumieniowania mogą działać bez weryfikacji.", "enableR1Format": "Włącz parametry modelu R1", "enableR1FormatTips": "Należy włączyć podczas korzystania z modeli R1, takich jak QWQ, aby uniknąć błędu 400", "useAzure": "Użyj Azure", diff --git a/webview-ui/src/i18n/locales/pt-BR/settings.json b/webview-ui/src/i18n/locales/pt-BR/settings.json index 1096a65310..1508c138ee 100644 --- a/webview-ui/src/i18n/locales/pt-BR/settings.json +++ b/webview-ui/src/i18n/locales/pt-BR/settings.json @@ -738,8 +738,8 @@ "outputPrice": "Preço de saída", "cacheReadsPrice": "Preço de leituras de cache", "cacheWritesPrice": "Preço de escritas de cache", - "enableStreaming": "Ativar streaming", - "enableStreamingDescription": "Desative o streaming se você encontrar erros de verificação de organização com modelos avançados. Solicitações sem streaming podem funcionar sem verificação.", + "disableStreaming": "Desativar streaming", + "disableStreamingDescription": "Marque isso se você encontrar erros de verificação de organização com modelos avançados como GPT-5. Solicitações sem streaming podem funcionar sem verificação.", "enableR1Format": "Ativar parâmetros do modelo R1", "enableR1FormatTips": "Deve ser ativado ao usar modelos R1 como QWQ, para evitar erro 400", "useAzure": "Usar Azure", diff --git a/webview-ui/src/i18n/locales/ru/settings.json b/webview-ui/src/i18n/locales/ru/settings.json index 3e591135e0..4890acfb55 100644 --- a/webview-ui/src/i18n/locales/ru/settings.json +++ b/webview-ui/src/i18n/locales/ru/settings.json @@ -738,8 +738,8 @@ "outputPrice": "Цена за вывод", "cacheReadsPrice": "Цена чтения из кэша", "cacheWritesPrice": "Цена записи в кэш", - "enableStreaming": "Включить потоковую передачу", - "enableStreamingDescription": "Отключи потоковую передачу, если сталкиваешься с ошибками проверки организации при использовании продвинутых моделей. Запросы без потоковой передачи могут работать без проверки.", + "disableStreaming": "Отключить потоковую передачу", + "disableStreamingDescription": "Отметь это, если сталкиваешься с ошибками проверки организации при использовании продвинутых моделей, таких как GPT-5. Запросы без потоковой передачи могут работать без проверки.", "enableR1Format": "Включить параметры модели R1", "enableR1FormatTips": "Необходимо включить при использовании моделей R1 (например, QWQ), чтобы избежать ошибок 400", "useAzure": "Использовать Azure", diff --git a/webview-ui/src/i18n/locales/tr/settings.json b/webview-ui/src/i18n/locales/tr/settings.json index 940e29bde9..a555b28b0e 100644 --- a/webview-ui/src/i18n/locales/tr/settings.json +++ b/webview-ui/src/i18n/locales/tr/settings.json @@ -738,8 +738,8 @@ "outputPrice": "Çıkış fiyatı", "cacheReadsPrice": "Önbellek okuma fiyatı", "cacheWritesPrice": "Önbellek yazma fiyatı", - "enableStreaming": "Akışı etkinleştir", - "enableStreamingDescription": "Gelişmiş modellerle kuruluş doğrulama hatalarıyla karşılaşırsan akışı devre dışı bırak. Akış olmayan istekler doğrulama olmadan çalışabilir.", + "disableStreaming": "Akışı devre dışı bırak", + "disableStreamingDescription": "GPT-5 gibi gelişmiş modellerle kuruluş doğrulama hatalarıyla karşılaşırsan bunu işaretle. Akış olmayan istekler doğrulama olmadan çalışabilir.", "enableR1Format": "R1 model parametrelerini etkinleştir", "enableR1FormatTips": "QWQ gibi R1 modelleri kullanıldığında etkinleştirilmelidir, 400 hatası alınmaması için", "useAzure": "Azure kullan", diff --git a/webview-ui/src/i18n/locales/vi/settings.json b/webview-ui/src/i18n/locales/vi/settings.json index 754fc93c41..c24a5ace0a 100644 --- a/webview-ui/src/i18n/locales/vi/settings.json +++ b/webview-ui/src/i18n/locales/vi/settings.json @@ -738,8 +738,8 @@ "outputPrice": "Giá đầu ra", "cacheReadsPrice": "Giá đọc bộ nhớ đệm", "cacheWritesPrice": "Giá ghi bộ nhớ đệm", - "enableStreaming": "Bật streaming", - "enableStreamingDescription": "Tắt streaming nếu bạn gặp lỗi xác minh tổ chức với các mô hình nâng cao. Các yêu cầu không streaming có thể hoạt động mà không cần xác minh.", + "disableStreaming": "Tắt streaming", + "disableStreamingDescription": "Đánh dấu này nếu bạn gặp lỗi xác minh tổ chức với các mô hình nâng cao như GPT-5. Các yêu cầu không streaming có thể hoạt động mà không cần xác minh.", "enableR1Format": "Kích hoạt tham số mô hình R1", "enableR1FormatTips": "Cần kích hoạt khi sử dụng các mô hình R1 như QWQ, để tránh lỗi 400", "useAzure": "Sử dụng Azure", diff --git a/webview-ui/src/i18n/locales/zh-CN/settings.json b/webview-ui/src/i18n/locales/zh-CN/settings.json index 7dcfe4b814..74a1e164fc 100644 --- a/webview-ui/src/i18n/locales/zh-CN/settings.json +++ b/webview-ui/src/i18n/locales/zh-CN/settings.json @@ -738,8 +738,8 @@ "outputPrice": "输出价格", "cacheReadsPrice": "缓存读取价格", "cacheWritesPrice": "缓存写入价格", - "enableStreaming": "启用流式传输", - "enableStreamingDescription": "如果在使用高级模型时遇到组织验证错误,请禁用流式传输。非流式请求可能无需验证即可工作。", + "disableStreaming": "禁用流式传输", + "disableStreamingDescription": "如果在使用 GPT-5 等高级模型时遇到组织验证错误,请勾选此项。非流式请求可能无需验证即可工作。", "enableR1Format": "启用 R1 模型参数", "enableR1FormatTips": "使用 QWQ 等 R1 系列模型时必须启用,避免出现 400 错误", "useAzure": "使用 Azure 服务", diff --git a/webview-ui/src/i18n/locales/zh-TW/settings.json b/webview-ui/src/i18n/locales/zh-TW/settings.json index a95cc76291..4e009b2cee 100644 --- a/webview-ui/src/i18n/locales/zh-TW/settings.json +++ b/webview-ui/src/i18n/locales/zh-TW/settings.json @@ -738,8 +738,8 @@ "outputPrice": "輸出價格", "cacheReadsPrice": "快取讀取價格", "cacheWritesPrice": "快取寫入價格", - "enableStreaming": "啟用串流輸出", - "enableStreamingDescription": "如果在使用進階模型時遇到組織驗證錯誤,請停用串流輸出。非串流請求可能無需驗證即可運作。", + "disableStreaming": "停用串流輸出", + "disableStreamingDescription": "如果在使用 GPT-5 等進階模型時遇到組織驗證錯誤,請勾選此項。非串流請求可能無需驗證即可運作。", "enableR1Format": "啟用 R1 模型參數", "enableR1FormatTips": "使用 QWQ 等 R1 模型時必須啟用,以避免發生 400 錯誤", "useAzure": "使用 Azure",