Skip to content

Commit fe92ff1

Browse files
authored
nes: model picker: support in JointCompletionsProvider (#2433)
* nes: model picker: fix: correct init and model picking order nes: fetched models should check if they're already known as well nes: fix: ensure to update undesired models before updating preferred model this's important because there's code that reacts to preferred model change and needs to know latest undesired models nes: minimize failure possibility nes: fix: make sure to init undesiredModelsManager earlier than observables use them nes: don't memorize if exp-configured model is picked nes: joint: support model picker * nes: model picker: support in JointCompletionsProvider * nes: enable model picker for the team
1 parent f045f49 commit fe92ff1

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

src/extension/inlineEdits/vscode-node/jointInlineCompletionProvider.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import { join } from 'path';
77
import * as vscode from 'vscode';
8+
import { InlineCompletionModelInfo } from 'vscode';
89
import { IAuthenticationService, IExperimentationService } from '../../../lib/node/chatLibMain';
910
import { ConfigKey, IConfigurationService } from '../../../platform/configuration/common/configurationService';
1011
import { IEnvService } from '../../../platform/env/common/envService';
@@ -244,6 +245,14 @@ class JointCompletionsProvider extends Disposable implements vscode.InlineComple
244245

245246
public onDidChange?: vscode.Event<void> | undefined;
246247

248+
//#region Model picker
249+
public readonly onDidChangeModelInfo = this._inlineEditProvider?.onDidChangeModelInfo;
250+
public readonly setCurrentModelId = this._inlineEditProvider?.setCurrentModelId?.bind(this._inlineEditProvider);
251+
public get modelInfo(): InlineCompletionModelInfo | undefined {
252+
return this._inlineEditProvider?.modelInfo;
253+
}
254+
//#endregion
255+
247256
constructor(
248257
private readonly _completionsProvider: CopilotInlineCompletionItemProvider | undefined,
249258
private readonly _inlineEditProvider: InlineCompletionProviderImpl | undefined,

src/platform/configuration/common/configurationService.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -698,7 +698,7 @@ export namespace ConfigKey {
698698
*/
699699
export const DebugReportFeedback = defineTeamInternalSetting<boolean>('chat.advanced.debug.reportFeedback', ConfigType.Simple, { defaultValue: false, teamDefaultValue: true });
700700
export const InlineEditsIgnoreCompletionsDisablement = defineTeamInternalSetting<boolean>('chat.advanced.inlineEdits.ignoreCompletionsDisablement', ConfigType.Simple, false, vBoolean());
701-
export const InlineEditsModelPickerEnabled = defineTeamInternalSetting<boolean>('chat.advanced.inlineEdits.modelPicker.enabled', ConfigType.ExperimentBased, false, vBoolean());
701+
export const InlineEditsModelPickerEnabled = defineTeamInternalSetting<boolean>('chat.advanced.inlineEdits.modelPicker.enabled', ConfigType.ExperimentBased, { defaultValue: false, teamDefaultValue: true }, vBoolean());
702702
export const InlineEditsUseSlashModels = defineTeamInternalSetting<boolean>('chat.advanced.inlineEdits.useSlashModels', ConfigType.ExperimentBased, false);
703703
export const InlineEditsLogContextRecorderEnabled = defineTeamInternalSetting<boolean>('chat.advanced.inlineEdits.logContextRecorder.enabled', ConfigType.Simple, false);
704704
export const InlineEditsHideInternalInterface = defineTeamInternalSetting<boolean>('chat.advanced.inlineEdits.hideInternalInterface', ConfigType.Simple, false, vBoolean());

0 commit comments

Comments
 (0)