Skip to content

Commit 70c7889

Browse files
🤖 Merge PR DefinitelyTyped#74234 [dom-chromium-ai] disallow prefix in initialPrompts by @christianliebel
1 parent 122cf12 commit 70c7889

File tree

2 files changed

+16
-3
lines changed

2 files changed

+16
-3
lines changed

‎types/dom-chromium-ai/dom-chromium-ai-tests.ts‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@ async function topLevel() {
22
// Language Model
33

44
await LanguageModel.create({
5-
// @ts-expect-error - System prompt must be first element of the initialPrompt array.
5+
// @ts-expect-error - System prompt must be first element of the initialPrompts array.
66
initialPrompts: [{ role: "user", content: "foo" }, { role: "system", content: "foo" }],
77
});
88

9+
await LanguageModel.create({
10+
// @ts-expect-error - Prefixes are not allowed in initialPrompts.
11+
initialPrompts: [{ role: "assistant", content: "foo", prefix: true }],
12+
});
13+
914
const languageModel = await LanguageModel.create({
1015
topK: 1,
1116
temperature: 0,

‎types/dom-chromium-ai/index.d.ts‎

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,11 +146,17 @@ interface LanguageModelToolFunction {
146146
(...args: any[]): Promise<string>;
147147
}
148148

149-
type LanguageModelPrompt = LanguageModelMessage[] | string;
149+
type LanguageModelPrompt = (LanguageModelMessage | LanguageModelAssistantMessage)[] | string;
150150

151151
interface LanguageModelMessage {
152152
role: LanguageModelMessageRole;
153153
content: LanguageModelMessageContent[] | string;
154+
}
155+
156+
// Not in IDL, split up here for allowing assistant messages with prefix in prompt() and promptStreaming() only
157+
interface LanguageModelAssistantMessage {
158+
role: LanguageModelAssistantMessageRole;
159+
content: LanguageModelMessageContent[] | string;
154160
prefix?: boolean;
155161
}
156162

@@ -165,7 +171,9 @@ interface LanguageModelMessageContent {
165171
value: LanguageModelMessageValue;
166172
}
167173

168-
type LanguageModelMessageRole = "user" | "assistant";
174+
type LanguageModelMessageRole = "user" | LanguageModelAssistantMessageRole;
175+
// Not in IDL, split up here for allowing assistant messages with prefix in prompt() and promptStreaming() only
176+
type LanguageModelAssistantMessageRole = "assistant";
169177
// Not in IDL, split up here for enforcing the system message as the first element
170178
type LanguageModelSystemMessageRole = "system";
171179

0 commit comments

Comments
 (0)