|
1 | | -import { CancellationToken, ChatResponseFragment2, LanguageModelChatInformation, LanguageModelChatMessage, LanguageModelChatProvider2, LanguageModelChatRequestHandleOptions, LanguageModelTextPart, Progress, ProviderResult } from "vscode"; |
| 1 | +import { CancellationToken, LanguageModelChatInformation, LanguageModelChatMessage, LanguageModelChatProvider, LanguageModelResponsePart, LanguageModelTextPart, Progress, ProvideLanguageModelChatResponseOptions, ProviderResult } from "vscode"; |
2 | 2 |
|
3 | 3 | function getChatModelInfo(id: string, name: string): LanguageModelChatInformation { |
4 | 4 | return { |
5 | 5 | id, |
6 | 6 | name, |
7 | | - description: "A sample chat model for demonstration purposes.", |
| 7 | + tooltip: "A sample chat model for demonstration purposes.", |
8 | 8 | family: "sample-family", |
9 | 9 | maxInputTokens: 120000, |
10 | 10 | maxOutputTokens: 8192, |
11 | 11 | version: "1.0.0", |
12 | 12 | capabilities: { |
13 | 13 | toolCalling: true, |
14 | | - vision: true, |
| 14 | + imageInput: true, |
15 | 15 | } |
16 | 16 | }; |
17 | 17 | } |
18 | 18 |
|
19 | | -export class SampleChatModelProvider implements LanguageModelChatProvider2 { |
20 | | - prepareLanguageModelChat(_options: { silent: boolean; }, _token: CancellationToken): ProviderResult<LanguageModelChatInformation[]> { |
| 19 | +export class SampleChatModelProvider implements LanguageModelChatProvider { |
| 20 | + provideLanguageModelChatInformation(_options: { silent: boolean; }, _token: CancellationToken): ProviderResult<LanguageModelChatInformation[]> { |
21 | 21 | return [ |
22 | 22 | getChatModelInfo("sample-dog-model", "Dog Model"), |
23 | 23 | getChatModelInfo("sample-cat-model", "Cat Model"), |
24 | 24 | ]; |
25 | 25 | } |
26 | | - async provideLanguageModelChatResponse(model: LanguageModelChatInformation, _messages: Array<LanguageModelChatMessage>, _options: LanguageModelChatRequestHandleOptions, progress: Progress<ChatResponseFragment2>, _token: CancellationToken): Promise<void> { |
| 26 | + async provideLanguageModelChatResponse(model: LanguageModelChatInformation, _messages: Array<LanguageModelChatMessage>, _options: ProvideLanguageModelChatResponseOptions, progress: Progress<LanguageModelResponsePart>, _token: CancellationToken): Promise<void> { |
27 | 27 | if (model.id === "sample-dog-model") { |
28 | | - progress.report({ index: 0, part: new LanguageModelTextPart("Woof! This is a dog model response.") }); |
| 28 | + progress.report(new LanguageModelTextPart("Woof! This is a dog model response.")); |
29 | 29 | } else if (model.id === "sample-cat-model") { |
30 | | - progress.report({ index: 0, part: new LanguageModelTextPart("Meow! This is a cat model response.") }); |
| 30 | + progress.report(new LanguageModelTextPart("Meow! This is a cat model response.")); |
31 | 31 | } else { |
32 | | - progress.report({ index: 0, part: new LanguageModelTextPart("Unknown model.") }); |
| 32 | + progress.report(new LanguageModelTextPart("Unknown model.")); |
33 | 33 | } |
34 | 34 | } |
35 | 35 | async provideTokenCount(_model: LanguageModelChatInformation, _text: string | LanguageModelChatMessage, _token: CancellationToken): Promise<number> { |
|
0 commit comments