Class: Prompt<HasId, HasVersion>
Type parameters
Name | Type |
---|---|
HasId | extends boolean = true |
HasVersion | extends boolean = true |
Accessors
id
• get
id(): HasId
extends true
? string
: undefined
| string
Returns
HasId
extends true
? string
: undefined
| string
name
• get
name(): string
Returns
string
options
• get
options(): Object
Returns
Object
Name | Type |
---|---|
model? | string |
params? | objectOutputType <{ frequency_penalty : ZodOptional <ZodNumber > ; function_call : ZodOptional <ZodUnion <[ZodLiteral <"auto" >, ZodLiteral <"none" >, ZodObject <{ name : ZodString }, "strip" , ZodTypeAny , { name : string }, { name : string }>]>> ; max_tokens : ZodOptional <ZodNumber > ; n : ZodOptional <ZodNumber > ; presence_penalty : ZodOptional <ZodNumber > ; response_format : ZodOptional <ZodNullable <ZodUnion <[ZodObject <{ type : ZodLiteral <"json_object" > }, "strip" , ZodTypeAny , { type : "json_object" }, { type : "json_object" }>, ZodObject <{ json_schema : ZodObject <{ description : ZodOptional <ZodString > ; name : ZodString ; schema : ZodOptional <ZodRecord <ZodString , ZodUnknown >> ; strict : ZodOptional <ZodNullable <ZodBoolean >> }, "strip" , ZodTypeAny , { description? : string ; name : string ; schema? : Record <string , unknown > ; strict? : null | boolean }, { description? : string ; name : string ; schema? : Record <string , unknown > ; strict? : null | boolean }> ; type : ZodLiteral <"json_schema" > }, "strip" , ZodTypeAny , { json_schema : { description? : string ; name : string ; schema? : Record <string , unknown > ; strict? : null | boolean } ; type : "json_schema" }, { json_schema : { description? : string ; name : string ; schema? : Record <string , unknown > ; strict? : null | boolean } ; type : "json_schema" }>, ZodObject <{ type : ZodLiteral <"text" > }, "strip" , ZodTypeAny , { type : "text" }, { type : "text" }>]>>> ; stop : ZodOptional <ZodArray <ZodString , "many" >> ; temperature : ZodOptional <ZodNumber > ; tool_choice : ZodOptional <ZodUnion <[ZodLiteral <"auto" >, ZodLiteral <"none" >, ZodLiteral <"required" >, ZodObject <{ function : ZodObject <{ name : ZodString }, "strip" , ZodTypeAny , { name : string }, { name : string }> ; type : ZodLiteral <"function" > }, "strip" , ZodTypeAny , { function : { name : string } ; type : "function" }, { function : { name : string } ; type : "function" }>]>> ; top_p : ZodOptional <ZodNumber > ; use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" > | objectOutputType <{ max_tokens : ZodNumber ; max_tokens_to_sample : ZodOptional <ZodNumber > ; stop_sequences : ZodOptional <ZodArray <ZodString , "many" >> ; temperature : ZodNumber ; top_k : ZodOptional <ZodNumber > ; top_p : ZodOptional <ZodNumber > ; use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" > | objectOutputType <{ maxOutputTokens : ZodOptional <ZodNumber > ; temperature : ZodOptional <ZodNumber > ; topK : ZodOptional <ZodNumber > ; topP : ZodOptional <ZodNumber > ; use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" > | objectOutputType <{ temperature : ZodOptional <ZodNumber > ; topK : ZodOptional <ZodNumber > ; use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" > | objectOutputType <{ use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" > |
position? | string |
projectId
• get
projectId(): undefined
| string
Returns
undefined
| string
prompt
• get
prompt(): undefined
| null
| { content
: string
; type
: "completion"
} | { messages
: ({ content
: string
; name?
: string
; role
: "system"
} | { content
: {} ; name?
: string
; role
: "user"
} | { content
: string
; role
: "tool"
; tool_call_id
: string
} | { content
: string
; name
: string
; role
: "function"
} | { content?
: null
| string
; function_call?
: { arguments
: string
; name
: string
} ; name?
: string
; role
: "assistant"
; tool_calls?
: { function
: { arguments
: string
; name
: string
} ; id
: string
; type
: "function"
}[] } | { content?
: null
| string
; role
: "model"
})[] ; tools?
: string
; type
: "chat"
}
Returns
undefined
| null
| { content
: string
; type
: "completion"
} | { messages
: ({ content
: string
; name?
: string
; role
: "system"
} | { content
: {} ; name?
: string
; role
: "user"
} | { content
: string
; role
: "tool"
; tool_call_id
: string
} | { content
: string
; name
: string
; role
: "function"
} | { content?
: null
| string
; function_call?
: { arguments
: string
; name
: string
} ; name?
: string
; role
: "assistant"
; tool_calls?
: { function
: { arguments
: string
; name
: string
} ; id
: string
; type
: "function"
}[] } | { content?
: null
| string
; role
: "model"
})[] ; tools?
: string
; type
: "chat"
}
slug
• get
slug(): string
Returns
string
version
• get
version(): HasId
extends true
? string
: undefined
| string
Returns
HasId
extends true
? string
: undefined
| string
Constructors
constructor
• new Prompt<HasId
, HasVersion
>(metadata
, defaults
, noTrace
): Prompt
<HasId
, HasVersion
>
Type parameters
Name | Type |
---|---|
HasId | extends boolean = true |
HasVersion | extends boolean = true |
Parameters
Name | Type |
---|---|
metadata | PromptRowWithId <HasId , HasVersion > | { _xact_id : string ; completion? : unknown ; created : string ; id : string ; object_data? : unknown ; project_id : string ; prompt_data? : unknown ; prompt_session_data? : unknown ; prompt_session_id : string ; tags? : null | string [] } |
defaults | Partial <Omit <undefined | objectOutputType <{ frequency_penalty : ZodOptional <ZodNumber > ; function_call : ZodOptional <ZodUnion <[ZodLiteral <"auto" >, ZodLiteral <"none" >, ZodObject <{ name : ZodString }, "strip" , ZodTypeAny , { name : string }, { name : string }>]>> ; max_tokens : ZodOptional <ZodNumber > ; n : ZodOptional <ZodNumber > ; presence_penalty : ZodOptional <ZodNumber > ; response_format : ZodOptional <ZodNullable <ZodUnion <[ZodObject <{ type : ZodLiteral <"json_object" > }, "strip" , ZodTypeAny , { type : "json_object" }, { type : "json_object" }>, ZodObject <{ json_schema : ZodObject <{ description : ZodOptional <ZodString > ; name : ZodString ; schema : ZodOptional <ZodRecord <ZodString , ZodUnknown >> ; strict : ZodOptional <ZodNullable <ZodBoolean >> }, "strip" , ZodTypeAny , { description? : string ; name : string ; schema? : Record <string , unknown > ; strict? : null | boolean }, { description? : string ; name : string ; schema? : Record <string , unknown > ; strict? : null | boolean }> ; type : ZodLiteral <"json_schema" > }, "strip" , ZodTypeAny , { json_schema : { description? : string ; name : string ; schema? : Record <string , unknown > ; strict? : null | boolean } ; type : "json_schema" }, { json_schema : { description? : string ; name : string ; schema? : Record <string , unknown > ; strict? : null | boolean } ; type : "json_schema" }>, ZodObject <{ type : ZodLiteral <"text" > }, "strip" , ZodTypeAny , { type : "text" }, { type : "text" }>]>>> ; stop : ZodOptional <ZodArray <ZodString , "many" >> ; temperature : ZodOptional <ZodNumber > ; tool_choice : ZodOptional <ZodUnion <[ZodLiteral <"auto" >, ZodLiteral <"none" >, ZodLiteral <"required" >, ZodObject <{ function : ZodObject <{ name : ZodString }, "strip" , ZodTypeAny , { name : string }, { name : string }> ; type : ZodLiteral <"function" > }, "strip" , ZodTypeAny , { function : { name : string } ; type : "function" }, { function : { name : string } ; type : "function" }>]>> ; top_p : ZodOptional <ZodNumber > ; use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" > | objectOutputType <{ max_tokens : ZodNumber ; max_tokens_to_sample : ZodOptional <ZodNumber > ; stop_sequences : ZodOptional <ZodArray <ZodString , "many" >> ; temperature : ZodNumber ; top_k : ZodOptional <ZodNumber > ; top_p : ZodOptional <ZodNumber > ; use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" > | objectOutputType <{ maxOutputTokens : ZodOptional <ZodNumber > ; temperature : ZodOptional <ZodNumber > ; topK : ZodOptional <ZodNumber > ; topP : ZodOptional <ZodNumber > ; use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" > | objectOutputType <{ temperature : ZodOptional <ZodNumber > ; topK : ZodOptional <ZodNumber > ; use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" > | objectOutputType <{ use_cache : ZodOptional <ZodBoolean > }, ZodTypeAny , "passthrough" >, "use_cache" > & { model : string } & { frequency_penalty? : number ; function_call? : "auto" | "none" | { name : string } ; maxOutputTokens? : number ; max_tokens : number ; max_tokens_to_sample? : number ; n? : number ; presence_penalty? : number ; response_format? : null | { type : "json_object" } | { json_schema : { description? : string ; name : string ; schema? : Record <string , unknown > ; strict? : null | boolean } ; type : "json_schema" } | { type : "text" } ; stop? : string [] ; stop_sequences? : string [] ; temperature? : number ; tool_choice? : "auto" | "none" | "required" | { function : { name : string } ; type : "function" } ; topK? : number ; topP? : number ; top_k? : number ; top_p? : number ; use_cache? : boolean } & ChatPrompt & CompletionPrompt > |
noTrace | boolean |
Returns
Prompt
<HasId
, HasVersion
>
Methods
build
▸ build<Flavor
>(buildArgs
, options?
): CompiledPrompt
<Flavor
>
Build the prompt with the given formatting options. The args you pass in will
be forwarded to the mustache template that defines the prompt and rendered with
the mustache-js
library.
Type parameters
Name | Type |
---|---|
Flavor | extends "completion" | "chat" = "chat" |
Parameters
Name | Type | Description |
---|---|---|
buildArgs | unknown | Args to forward along to the prompt template. |
options | Object | - |
options.flavor? | Flavor | - |
options.messages? | ({ content : string ; name? : string ; role : "system" } | { content : {} ; name? : string ; role : "user" } | { content? : null | string ; function_call? : { arguments : string ; name : string } ; name? : string ; role : "assistant" ; tool_calls? : { function : { arguments : string ; name : string } ; id : string ; type : "function" }[] } | { content : string ; role : "tool" ; tool_call_id : string } | { content : string ; name : string ; role : "function" } | { content? : null | string ; role : "model" })[] | - |
Returns
CompiledPrompt
<Flavor
>