Path: blob/main/extensions/copilot/src/platform/endpoint/test/node/capiEndpoint.ts
13405 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 { RequestMetadata, RequestType } from '@vscode/copilot-api';6import { IInstantiationService } from '../../../../util/vs/platform/instantiation/common/instantiation';7import { IAuthenticationService } from '../../../authentication/common/authentication';8import { IChatMLFetcher } from '../../../chat/common/chatMLFetcher';9import { IConfigurationService } from '../../../configuration/common/configurationService';10import { ILogService } from '../../../log/common/logService';11import { IFetcherService } from '../../../networking/common/fetcherService';12import { IChatWebSocketManager } from '../../../networking/node/chatWebSocketManager';13import { IExperimentationService } from '../../../telemetry/common/nullExperimentationService';14import { ITelemetryService } from '../../../telemetry/common/telemetry';15import { ITokenizerProvider } from '../../../tokenizer/node/tokenizer';16import { ICAPIClientService } from '../../common/capiClient';17import { IDomainService } from '../../common/domainService';18import { IChatModelInformation } from '../../common/endpointProvider';19import { ChatEndpoint } from '../../node/chatEndpoint';2021export class CAPITestEndpoint extends ChatEndpoint {2223constructor(24modelMetadata: IChatModelInformation,25private readonly _isModelLablModel: boolean,26@IDomainService domainService: IDomainService,27@ICAPIClientService capiClientService: ICAPIClientService,28@IFetcherService fetcherService: IFetcherService,29@ITelemetryService telemetryService: ITelemetryService,30@IAuthenticationService authService: IAuthenticationService,31@IChatMLFetcher chatMLFetcher: IChatMLFetcher,32@ITokenizerProvider tokenizerProvider: ITokenizerProvider,33@IInstantiationService instantiationService: IInstantiationService,34@IConfigurationService configurationService: IConfigurationService,35@IExperimentationService experimentationService: IExperimentationService,36@IChatWebSocketManager chatWebSocketService: IChatWebSocketManager,37@ILogService logService: ILogService38) {39super(modelMetadata,40domainService,41chatMLFetcher,42tokenizerProvider,43instantiationService,44configurationService,45experimentationService,46chatWebSocketService,47logService48);49}5051override get urlOrRequestMetadata(): RequestMetadata | string {52if (this._isModelLablModel) {53return { type: RequestType.ChatCompletions, isModelLab: true };54} else {55return super.urlOrRequestMetadata;56}57}58}596061