Stable Diffusion Prompt Parser for TypeScript
npm install typescript-stable-diffusion-prompt-parser- prompts | prompts | ...
- a tag with default attention (kind: 'tag')
- (prompts ...) (kind: 'pw')
- (prompts ...:1.1) (kind: 'ew')
- [prompts ...] (kind: 'nw')
- (kind: 'lore')
- (kind: 'hypernet')
- tokenizePrompt: convert from string to [string, number][].
- TokenReader: a class accepts [string, number][], offering:
- position():number|undefined
- look():string|undefined
- lookMany:string[]
- next():void
- parsePrompt: convert from string|[string, number][]|TokenReader to Prompt[], multiple prompts are separated by the | character
- printPrompt: convert Prompt to string
- evaluatePrompt: convert from Prompt to EvaluatedPrompt
Details of Prompt and EvaluatedPrompt please take a look at .d.ts files.
``typescript
import {evaluatePrompt, parsePrompt} from 'typescript-stable-diffusion-prompt-parser';
const input = 'girl, highres, ((blue eyes))';
const evaluated = evaluatePrompt(parsePrompt(input)[0], 1.1 / this is the default value, could be omitted /);
`
expects
`typescript``
{
tags:[{
tag:'girl',
weight:1,
}, {
tag:'highres',
weight:1,
}, {
tag:'blue eyes',
weight:1.21,
}],
loras:[],
hypernets:[],
}