Преглед изворни кода

Add 'Include stream options' checkbox for OpenAI-compatible providers

Matt Rubens пре 1 година
родитељ
комит
2cfd76c305
3 измењених фајлова са 20 додато и 1 уклоњено
  1. 1 1
      src/api/providers/openai.ts
  2. 1 0
      src/shared/api.ts
  3. 18 0
      webview-ui/src/components/settings/ApiOptions.tsx

+ 1 - 1
src/api/providers/openai.ts

@@ -45,7 +45,7 @@ export class OpenAiHandler implements ApiHandler {
 			stream: true,
 		}
 
-		if (this.options.includeStreamOptions) {
+		if (this.options.includeStreamOptions ?? true) {
 			requestOptions.stream_options = { include_usage: true }
 		}
 

+ 1 - 0
src/shared/api.ts

@@ -35,6 +35,7 @@ export interface ApiHandlerOptions {
 	azureApiVersion?: string
 	openRouterUseMiddleOutTransform?: boolean
 	includeStreamOptions?: boolean
+	setAzureApiVersion?: boolean
 }
 
 export type ApiConfiguration = ApiHandlerOptions & {

+ 18 - 0
webview-ui/src/components/settings/ApiOptions.tsx

@@ -445,6 +445,24 @@ const ApiOptions = ({ showModelOptions, apiErrorMessage, modelIdErrorMessage }:
 						placeholder={"Enter Model ID..."}>
 						<span style={{ fontWeight: 500 }}>Model ID</span>
 					</VSCodeTextField>
+					<div style={{ display: 'flex', alignItems: 'center' }}>
+						<VSCodeCheckbox
+							checked={apiConfiguration?.includeStreamOptions ?? true}
+							onChange={(e: any) => {
+								const isChecked = e.target.checked
+								setApiConfiguration({
+									...apiConfiguration,
+									includeStreamOptions: isChecked
+								})
+							}}>
+							Include stream options
+						</VSCodeCheckbox>
+						<span
+							className="codicon codicon-info"
+							title="Stream options are for { include_usage: true }. Some providers may not support this option."
+							style={{ marginLeft: '5px', cursor: 'help' }}
+						></span>
+					</div>
 					<VSCodeCheckbox
 						checked={azureApiVersionSelected}
 						onChange={(e: any) => {