1
+ export interface LanguageModel extends EventTarget {
2
+ create ( options ?: LanguageModelCreateOptions ) : Promise < LanguageModel > ;
3
+ availability ( options ?: LanguageModelCreateCoreOptions ) : Promise < Availability > ;
4
+ prompt ( input : LanguageModelPrompt , options ?: LanguageModelPromptOptions ) : Promise < string > ;
5
+ promptStreaming ( input : LanguageModelPrompt , options ?: LanguageModelPromptOptions ) : ReadableStream ;
6
+ measureInputUsage ( input : LanguageModelPrompt , options ?: LanguageModelPromptOptions ) : Promise < number > ;
7
+ destroy ( ) : undefined ;
8
+ }
9
+ export enum Availability { "unavailable" , "downloadable" , "downloading" , "available" } ;
10
+ export interface LanguageModelParams {
11
+ readonly defaultTopK : number ;
12
+ readonly maxTopK : number ;
13
+ readonly defaultTemperature : number ;
14
+ readonly maxTemperature : number ;
15
+ }
16
+ export interface LanguageModelCreateCoreOptions {
17
+ topK ?: number ;
18
+ temperature ?: number ;
19
+ expectedInputs ?: Array < LanguageModelExpectedInput > ;
20
+ }
21
+ export interface LanguageModelCreateOptions extends LanguageModelCreateCoreOptions {
22
+ signal ?: AbortSignal ;
23
+ monitor ?: AICreateMonitorCallback ;
24
+ systemPrompt ?: string ;
25
+ initialPrompts ?: LanguageModelInitialPrompts ;
26
+ }
27
+ export interface LanguageModelPromptOptions {
28
+ responseJSONSchema ?: any ;
29
+ signal ?: AbortSignal ;
30
+ }
31
+ export interface LanguageModelExpectedInput {
32
+ type : LanguageModelMessageType ;
33
+ languages ?: Array < string > ;
34
+ }
35
+ export type LanguageModelPrompt = Array < LanguageModelMessage > | Array < LanguageModelMessageShorthand > | string ;
36
+ export type LanguageModelInitialPrompts = Array < LanguageModelMessage > | Array < LanguageModelMessageShorthand > ;
37
+ export interface LanguageModelMessage {
38
+ role : LanguageModelMessageRole ;
39
+ content : Array < LanguageModelMessageContent > ;
40
+ }
41
+ export interface LanguageModelMessageShorthand {
42
+ role : LanguageModelMessageRole ;
43
+ content : string ;
44
+ }
45
+ export interface LanguageModelMessageContent {
46
+ type : LanguageModelMessageType ;
47
+ content : LanguageModelMessageContentValue ;
48
+ }
49
+ export interface LanguageModelPromptDict {
50
+ role ?: LanguageModelMessageRole ;
51
+ type ?: LanguageModelMessageType ;
52
+ content : LanguageModelMessageContent ;
53
+ }
54
+ export type LanguageModelMessageRole = "system" | "user" | "assistant" ;
55
+ export type LanguageModelMessageType = "text" | "image" | "audio" ;
56
+ export type LanguageModelMessageContentValue = ImageBitmapSource | AudioBuffer | BufferSource | string ;
0 commit comments