Pro Tips - KoboldAI/KoboldAI-Client GitHub Wiki

Introduction

A collection of pro tips that can help to create a more coherent, well-written stories and adventures.

Prompt Tips

Name Description
Prompt sets the scene Create a reasonably long prompt to set the pace of the story, style of narrative and topic lexicon as an example to push the AI so it follows your desired format and wording.
Illustrative example
Alice was beginning to get very tired of sitting by her sister on the bank, and of having nothing to do: once or twice she had peeped into the book her sister was reading, but it had no pictures or conversations in it, “and what is the use of a book,” thought Alice “without pictures or conversations?”


So she was considering in her own mind (as well as she could, for the hot day made her feel very sleepy and stupid), whether the pleasure of making a daisy-chain would be worth the trouble of getting up and picking the daisies, when suddenly a White Rabbit with pink eyes ran close by her.

There was nothing so very remarkable in that; nor did Alice think it so very much out of the way to hear the Rabbit say to itself, “Oh dear! Oh dear! I shall be late!” (when she thought it over afterwards, it occurred to her that she ought to have wondered at this, but at the time it all seemed quite natural); but when the Rabbit actually took a watch out of its waistcoat-pocket, and looked at it, and then hurried on, Alice started to her feet, for it flashed across her mind that she had never before seen a rabbit with either a waistcoat-pocket, or a watch to take out of it, and burning with curiosity, she ran across the field after it, and fortunately was just in time to see it pop down a large rabbit-hole under the hedge.

Pseudocode

Introduction

There are two different pseudocode techniques that have been found as best practice for storing dense information in memory such as relational status between characters, how the world operates, and any other information desired to be consistent/persistent. These are two formats, one dubbed W++ which works best with language models that have an understanding of following explicit instructions and basic code, and SBF or Square Bracket Format which works best with language models more focused only on natural language.

The only notable differences between W++ and SBF aside from which models they influence are their basic formatting, and W++ appears to have far more explicit control beyond storing information but can also serve as a means to push instructions.

You can edit both W++ and SBF pseudocode formats using this WI Format Editor.

W++

Language models influenced by W++ are EleutherAI's GPT-J and GPT-Neo series. Meta's Opt series has also been speculated to be responsive to W++ pseudocode while observed under research conditions.

Entry example
(While using GPT-J) Despite explcitly stating my character Edward was 37, married to Charlotte, and had two children - Benny and Clara, sometimes the AI would become confused and assume I was a child and Edward was another person. This was easily fixed entirely by placing the following W++ in memory:

[I am("Edward")
{
Husband of("Charlotte")
Father of("Clara" + "Benny")
Gender("Male")
Age("37")
}]
Entry form
[Type("Name"){Attribute("Val 1" + "Val 2")}]

SBF

Language models influenced by SBF are Meta's XGLM and Fairseq-dense series models.

Entry example
Let's say I'm using a Fairseq model and having the same issue as the W++ example above; I'd clearly stated who I was in relation to the family in my story - I'm a 37 year old husband named Edward but the model keeps assuming Edward is someone else and I'm a child. That can easily be fixed by pasting the following SBF pseudocode in memory below:

[ I am: "Edward"; Husband of: "Charlotte"; Father of: "Clara", "Benny"; Gender: "Male"; Age: "37" ]
Entry form
[ Type: "Name"; Attribute: "Val 1", "Val 2" ]

Pseudocode Tips

Name Description
Entry formats for models NEO = W++ single line format; Fairseq-Dense = SBF; Opt = Row of concise individual sentences in brackets until finetuned model is made.
Illustrative example

W++:
[location("hospital")
{
DESCRIPTION("large facility" + "underground base")
APPEARANCE("white walls" + "red bricks" + "people being treated for injuries")
AREAS("maternity" + "triage" + "emergency room" + "canteen" + "research lab")
SUMMARY("The hospital is treating many injured people after the alien attack.")
}]

SBF:

[ Character: Ronald Mc Donald; age: 38; height: 1.8 m; weight: 90 kg; eye color: green; hair color: brown; hair style: short hair; skin color: fair; clothing: uniform; weapon: no weapon; title: none; other characteristics: none; description: Ronald is a clown-like mascot with red and yellow clothing, wearing a hat with a yellow star and a yellow smiley face on it. He is also carrying a golden bag and a large golden hamburger. ]

Individual sentences in brackets for Author's Note:

[ Writing Style: X-RATED written in a verbose narrative.]
[ Tone: Focus on arousing scenes, visceral sensations, and loving sex scenes.]
[ Genre: Erotic.]
[ Wording: Arousing.]
[ Rating: R.]

Name Description
Useful character traits Character traits that the community has noticed work quite well.
Illustrative example
timid, self-conscious, polite, friendly, arrogant, oblivious, dumb, dry, cynical, apathetic, wry, clever, witty, addicted, belligerent, busy, brave, curious, hardy, helpful, jolly (Pokemon natures), loyal, logical, manipulative, mellow, moody, mysterious, philosophical, playful, polite, proud, rude, sensitive, servile, shy, stern, smug, tenacious, upbeat, evil, violent, cruel, sadistic, vulgar (puts emphasis on inappropriate NSFW jokes and behaviours), wild (is used for characters that behave like animals in the wild or tribals)

[ Character: "Jadzia Dax"; HAIR: "dark", "long", "ponytail"; DESCRIPTION: "female", "tall", "woman"; APPEARANCE: "soft skin", "blue eyes", "athletic", "large tits", "dark nipples", "perfect ass"; MIND: "logical", "brave", "loyal", "tenacious", "playful", "polite"; SUMMARY: "Starfleet Officer", "beautiful", "Lietenant Commander" ]
Name Description
World Description in W++ format An example of an entry that can be used in World Info or in Memory that gives the world a little description.
Illustrative example
[worldDescription("Trandor")
{
DESCRIPTION("human colony" + "earthlike" + "small planet")
BIOME("grasslands" + "urban" + "forrests")
AREAS("hospital" + "school" + "landing area")
SUMMARY("The human colony of Trandor has recently suffered an alien attack.")
}]
Name Description
Categories for WI entries Some categories to use on World Info and Author's Note entries that AI Dungeon users found especially helpful.
Illustrative example
SEE: ( To describe how a character perceives the world )
LIMIT/LACK
COND/STATE/STATUS: ( Status condition like PSN / PRLZ from Pokemon )
DIET
LOOT: ( What INV items can be dropped when a creature is defeated )
DETA/DETAIL
ADJ/ADJECTIVE/ADJECT: ( Adjective qualities that are a core part of the entity )
MODIF/MOFIDIER: ( Like the above, but how it's different from the usual or expected )
GRAM/GRAMMAR: ( Tested to tokenize exclusively for word GRAMMAR, useful for speech patterns )
VOCAB/SPEECH: ( Potentially better than above, can get characters to speak Japanese or French )
INV
EQUIP
LIKE
HATE
RELATION(S): ( Both long forms preferred due to tokens )
ALLIES/FRIENDS: ( ALLIES preferred due to two tokens )
BOND/BONDS: ( Similar to the above, BOND preferred due to tokens )
ENEMIES: ( Merely decent tokens, ENEMY has the same issue )
POWERS/POWER
THEME
ORIGIN: ( For series/titles )
ATMOSPHERE/ATMOS
TONE
MOOD
CLIMATE/CLIM
GEOGRAPHY/GEO/GEOGR
ECON/ECONOMY: ( For locations, economical circumstances )
FEATURES: ( For locations, all variants of FEAT tokenize the same, likely has multiple uses )
EXIT: ( For rooms )
CITIZ/CITIZENS: ( Special case, short form always preferred, describes racial diversity of locales )
ETHN/ETHNICITY: ( Similar to above, better for human variation )
FOLK: ( Like CITIZENS but more emphasis on fantasy )
PASSION: ( Character motivation )
ALIGNMENT/ALIGN: ( Supports imaginative alignments like Lawful Stupid )
EFFEC/EFFECT(S): ( For objects and entities, used to add magic or science effects )
BIOME: ( Traits that reinforce the biome such as flora go in desc or summary )
CREATE: ( What the entity is capable of producing )
FACTS
BANNED/BANN: ( Forbidden behavior )

Name Description
Character/animal/monster categories Some repeats but the most essential character categories that have been noted by the community.
Illustrative example
DESCRIPTION: ( IE female/male, tall/short, big/little, human/elf, animal/monster )
APPEARANCE: ( Things like hair/eye/skin colour or claws, fur, etc. )
MIND: ( Psychological things like kind, cruel, aggressive, helpful, shy, moody, polite, etc. )
WEAR: ( Clothing or apparel coats, socks, shoes, backpack, hat )
STATUS: ( Where is the character and what predicament are they in: Trapped in a dungeon )
CONDITION: ( The state of the character/monster/animal such as very strong but tired, a few cuts and bruises, arrow in the knee, decaying, worse for wear, etc. )
SPEECH: ( None, cockney accent, Japanese, British accent, vulgar, squeak, roar, bark, etc. )
POWER: ( Special traits or powers ie ability to fly )
GRAB: ( To define what is used to grab ie mouth/bite, claws, tentacles )
MOVE: ( Movement such as walk, run, crawl, slither, swim, scuttle, creep )
LIMIT: ( What is lacking such as sight/blind, hands for animals, speech. etc. )
INVENTORY: ( Items on the character, gun, bow, sword, knife, whip, bottle of absolute vodka, etc. )
SUMMARY: ( Here you can describe the character in a sentence ie Cov is a nerd who spends far too much time on KoboldAI )

Commands Tips

Name Description
Common categories List of common categories to throw inside Author's Notes: author, writing style, genre, theme, setting, scene, format, goal, situation, storyline.
Illustrative example
SFW-focused
narrative: Increased detail for narrative. Longer paragraphs with deeper descriptions.
verbose: Strong effect. Longer descriptions, with more dialogue. Slows down scenes a bit.
vivid: Purple prose, focus on descriptions. May be too vivid for normal usage. Combines well with more balanced styles.
prose: Compromise between 'detailed' and 'purple prose'. AI seems more inclined to try to write a story, instead of just random disjointed things.
energetic: Similar to 'exciting', but this has even more of an action-movie feel to it.
tense: Dramatic, action-movie style.
dramatic: Feels more like action-drama than emotional drama.
ominous: Strong effect. Foreboding events and dialogue, works especially well combined with 'narrative'.
aggressive: Notable increase in aggression and violence.
ominous: Strong effect. Foreboding events and dialogue, works especially well combined with 'narrative'.
bitter: Crude, angry dialogue. Teen angst. Not the world-weary type of bitterness.
scary: Strong effect. Focuses more on tension than blatant horror.
creepy: Strong effect. Now we're in the horror-territory.
grim: Strong effect. Impossible odds, grim situations.
blasphemous: Strong effect. Demonic magic, cults, etc. Nice for eldritch horror type of scenarios.
exploration: Strong effect. Has nice dungeon delving mood to it, with overtones of mystery.
introspective: Increased focus on protagonists' inner thoughts and feelings.
pensive: Inner monologue. Makes the protagonist think more. Describes protagonists' motivations in detailed, contemplative way.
macabre: Grim and grisly. Generated mostly occult horror, with frequent apocalyptic themes.
gritty: Violent style, with a lot of cursing and increased amount of gore. Doesn't markedly.
purple prose: Often too elaborate. It might be possible to combine this with other styles to balance it a bit.
sophomoric: Casual and somewhat crude style. `Zack and the boys were down at the beach,
lovecraftian: Eldritch horrors, one part Lovecraft and one part fanfiction of varying quality.
fairy tale: Self-explanatory. Works quite well. `Once upon a time, there was a girl...
film noir: Strong effect. Fatalism, dingy realism, corruption, and long inner monologues.
investigative: Heavy focus on detective-fiction. Combines well with 'film-noir'.
medical: Strong effect, adds medical terminology and focus.
rustic: Shifted the story focus to farming, village/rural life, that kind of things.
military: Strong effect, military fiction focus with heavy slant towards land-battles.
pirate: Strong effect, makes everything pirate-focused.
dark fantasy: Dark, brooding tone with fantasy elements.
tragic: Heavy focus on loss, heroic sacrifices and other similar themes.
Greek tragedy: Bronze age adventures, with frequent references to Zeus, titans, etc.
desertpunk: The Mad Max style. Somewhat weak, but mentioning sand will usually trigger it.
space opera: Science Fiction. Grand adventures across alien worlds, combines well with many styles.
SF: Generic sci-fi focus, useful for making the AI stick to the genre.
police report: Written police report style. "On March 7th, at approximately 1345 hours, Zachery..."
gallows: I was hoping for gallows humor. Nope, this is entirely focused around gallows.
NSFW-focused
sensual: More slanted towards explicit than 'sensual'.
seductive: Tends to make characters flirty. Better used as a character-specific trait.
lewd: Not especially lewd, slants the outputs towards softcore erotica.
kinky: Similar to the above, but more likely to throw in uncommon fetishes.
homoerotic: Marked increase in the amount of muscular men.
titillating: Marked increase in characters who are described as having 'perfect' bodies.
literotica: Flowery erotica with a dash of purple prose.
arousing: Makes the NSFW scenes more descriptive, and tends to slow them down a bit.
hentai: Explicit, but has the side-effect of frequently adding tentacles.

Name Description
Commands Phrases to type that work well on the AI.
Illustrative example
Name:"Text"
List of X:
(POV [character]) or ([character]'s POV)
(Current scene as described by [author]/[writing style])
[character]'s secrets:
If only [character] knew
Available sex scenes for [character]:
([character]'s recollection of this scene X years later, [year])
[character]'s opinion on this story
(current scene as a x)
([character]'s thoughts)
[character]'s Personality
Open X.file
([character]'s thoughts on Y)
Your actions:
X, a Y poem:
([character]'s Y thoughts)
[character]'s psychological profile:
Your sins:
List of story actions:
Brain Root Directory:
Description of [new character]:
You take a look at the form, it reads:
X gives a lengthy monologue about Y
(Advice from the voices in your head:)
Rational:
Hours later...
You decide to view the bulletin board, where you see a number of requests.
Audience poll results:
You think to yourself,
You look around and take in the scene.
Description of x:
X described by Y:
You write a poem about X:
Debug mode activated. List of 10 available cheats:

(A nearly infinite series of commands can be cooked up this way)
⚠️ **GitHub.com Fallback** ⚠️