Path: blob/main/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.ts
5255 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import { Event } from '../../../../base/common/event.js';6import { URI } from '../../../../base/common/uri.js';7import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js';8import { IRange } from '../../../../editor/common/core/range.js';9import { IStringDictionary } from '../../../../base/common/collections.js';1011export const ILanguageModelsConfigurationService = createDecorator<ILanguageModelsConfigurationService>('ILanguageModelsConfigurationService');1213export interface ConfigureLanguageModelsOptions {14group: ILanguageModelsProviderGroup;15snippet?: string;16}1718export interface ILanguageModelsConfigurationService {19readonly _serviceBrand: undefined;2021readonly configurationFile: URI;2223readonly onDidChangeLanguageModelGroups: Event<readonly ILanguageModelsProviderGroup[]>;2425getLanguageModelsProviderGroups(): readonly ILanguageModelsProviderGroup[];2627addLanguageModelsProviderGroup(languageModelsProviderGroup: ILanguageModelsProviderGroup): Promise<ILanguageModelsProviderGroup>;2829updateLanguageModelsProviderGroup(from: ILanguageModelsProviderGroup, to: ILanguageModelsProviderGroup): Promise<ILanguageModelsProviderGroup>;3031removeLanguageModelsProviderGroup(languageModelGroup: ILanguageModelsProviderGroup): Promise<void>;3233configureLanguageModels(options?: ConfigureLanguageModelsOptions): Promise<void>;34}3536export interface ILanguageModelsProviderGroup extends IStringDictionary<unknown> {37readonly name: string;38readonly vendor: string;39readonly range?: IRange;40}414243