rename proposal from chatRequestAccess to languageModels, move into new lm namespace (#205272)

* rename proposal from `chatRequestAccess` to `languageModels`, move into new `lm` namespace

https://github.com/microsoft/vscode/issues/199908

* fix itests
This commit is contained in:
Johannes Rieken 2024-02-15 12:02:08 +01:00 committed by GitHub
parent 633992ca1c
commit 4c06e3f867
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 24 additions and 17 deletions

View file

@ -8,7 +8,7 @@
"activeComment",
"authSession",
"chatAgents2",
"chatRequestAccess",
"languageModels",
"defaultChatAgent",
"contribViewsRemote",
"contribStatusBarItems",

View file

@ -1395,24 +1395,12 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
}
};
// namespace: llm
// namespace: chat
const chat: typeof vscode.chat = {
registerChatResponseProvider(id: string, provider: vscode.ChatResponseProvider, metadata: vscode.ChatResponseProviderMetadata) {
checkProposedApiEnabled(extension, 'chatProvider');
return extHostChatProvider.registerLanguageModel(extension, id, provider, metadata);
},
requestLanguageModelAccess(id, options) {
checkProposedApiEnabled(extension, 'chatRequestAccess');
return extHostChatProvider.requestLanguageModelAccess(extension, id, options);
},
get languageModels() {
checkProposedApiEnabled(extension, 'chatRequestAccess');
return extHostChatProvider.getLanguageModelIds();
},
onDidChangeLanguageModels: (listener, thisArgs?, disposables?) => {
checkProposedApiEnabled(extension, 'chatRequestAccess');
return extHostChatProvider.onDidChangeProviders(listener, thisArgs, disposables);
},
registerVariable(name: string, description: string, resolver: vscode.ChatVariableResolver) {
checkProposedApiEnabled(extension, 'chatAgents2');
return extHostChatVariables.registerVariableResolver(extension, name, description, resolver);
@ -1427,6 +1415,22 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
},
};
// namespace: lm
const lm: typeof vscode.lm = {
requestLanguageModelAccess(id, options) {
checkProposedApiEnabled(extension, 'languageModels');
return extHostChatProvider.requestLanguageModelAccess(extension, id, options);
},
get languageModels() {
checkProposedApiEnabled(extension, 'languageModels');
return extHostChatProvider.getLanguageModelIds();
},
onDidChangeLanguageModels: (listener, thisArgs?, disposables?) => {
checkProposedApiEnabled(extension, 'languageModels');
return extHostChatProvider.onDidChangeProviders(listener, thisArgs, disposables);
}
};
// namespace: speech
const speech: typeof vscode.speech = {
registerSpeechProvider(id: string, provider: vscode.SpeechProvider) {
@ -1449,6 +1453,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
interactive,
l10n,
languages,
lm,
notebooks,
scm,
speech,

View file

@ -14,7 +14,6 @@ export const allApiProposals = Object.freeze({
chatAgents2: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.chatAgents2.d.ts',
chatAgents2Additions: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts',
chatProvider: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.chatProvider.d.ts',
chatRequestAccess: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.chatRequestAccess.d.ts',
chatTab: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.chatTab.d.ts',
codeActionAI: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.codeActionAI.d.ts',
codeActionRanges: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.codeActionRanges.d.ts',
@ -66,6 +65,7 @@ export const allApiProposals = Object.freeze({
interactive: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.interactive.d.ts',
interactiveWindow: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.interactiveWindow.d.ts',
ipc: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.ipc.d.ts',
languageModels: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.languageModels.d.ts',
languageStatusText: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.languageStatusText.d.ts',
mappedEditsProvider: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.mappedEditsProvider.d.ts',
multiDocumentHighlightProvider: 'https://raw.githubusercontent.com/microsoft/vscode/main/src/vscode-dts/vscode.proposed.multiDocumentHighlightProvider.d.ts',

View file

@ -152,8 +152,10 @@ declare module 'vscode' {
readonly removed: readonly string[];
}
//@API DEFINE the namespace for this: lm (languageModels), copilot, ai, env,?
export namespace chat {
/**
* Namespace for language model related functionality.
*/
export namespace lm {
/**
* Request access to a language model.