Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.ts
5255 views
1
/*---------------------------------------------------------------------------------------------
2
* Copyright (c) Microsoft Corporation. All rights reserved.
3
* Licensed under the MIT License. See License.txt in the project root for license information.
4
*--------------------------------------------------------------------------------------------*/
5
6
import { Event } from '../../../../base/common/event.js';
7
import { URI } from '../../../../base/common/uri.js';
8
import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js';
9
import { IRange } from '../../../../editor/common/core/range.js';
10
import { IStringDictionary } from '../../../../base/common/collections.js';
11
12
export const ILanguageModelsConfigurationService = createDecorator<ILanguageModelsConfigurationService>('ILanguageModelsConfigurationService');
13
14
export interface ConfigureLanguageModelsOptions {
15
group: ILanguageModelsProviderGroup;
16
snippet?: string;
17
}
18
19
export interface ILanguageModelsConfigurationService {
20
readonly _serviceBrand: undefined;
21
22
readonly configurationFile: URI;
23
24
readonly onDidChangeLanguageModelGroups: Event<readonly ILanguageModelsProviderGroup[]>;
25
26
getLanguageModelsProviderGroups(): readonly ILanguageModelsProviderGroup[];
27
28
addLanguageModelsProviderGroup(languageModelsProviderGroup: ILanguageModelsProviderGroup): Promise<ILanguageModelsProviderGroup>;
29
30
updateLanguageModelsProviderGroup(from: ILanguageModelsProviderGroup, to: ILanguageModelsProviderGroup): Promise<ILanguageModelsProviderGroup>;
31
32
removeLanguageModelsProviderGroup(languageModelGroup: ILanguageModelsProviderGroup): Promise<void>;
33
34
configureLanguageModels(options?: ConfigureLanguageModelsOptions): Promise<void>;
35
}
36
37
export interface ILanguageModelsProviderGroup extends IStringDictionary<unknown> {
38
readonly name: string;
39
readonly vendor: string;
40
readonly range?: IRange;
41
}
42
43