Presets and experiences

In the previous sections (Character card, Prompt templates, and Lorebooks and world info), you've seen all the different knobs that DreamTavern exposes to the users. Chatting with a given character can change drastically depending on the different settings that the user is using. Moreover, you might want to create chats that aren't necessarily with "characters".
In order to address these use cases, we have presets and experiences.
A preset represents the entire chat configuration that users can either use to start a new chat with a character, or import to their existing conversations. An experience is a preset with which the user would be able to directly start a chat with. If you want to understand the distinction between these two better, refer to Preset examplesand Experience examples.

Creating a new preset / experience

Step 1: Access the preset / experience Creation Page

Navigate to the "New Preset" / "New Experience" page on our website. This can be found in the main menu under "+ Create" > "New Preset" or "New Experience".

Step 2: Add an image

Upload
Click on the "Choose image" icon to upload a profile picture for your character. This image will represent your character across the platform.

Step 3: Fill in the information

For experiences, you can add Initial message since a user can start a chat directly with the experience where you may want to override the initial message of the underlying charcter card.

Step 4: Fill in Additional configuration

The configuration that you can provide is the same as the conversation settings that you will see on the side of your conversation as mentioned in Prompt templatesand Lorebooks and world info.
You will have access to all the placeholders such as prompt, charcter, scenario, etc.
One thing that is special about experiences: you do not need a character on an experience. We will show you an example for when this could be helpful in the next section. Instead, you can provide a custom prompt template that may make more sense.
Presets require the same types of inputs as experiences do, but a user cannot chat directly with a preset. Instead, you can create presets to be able to apply to your conversations.

Creating from a conversation

You can also create an experience from an existing conversation so that you do not have to fill in all the configuration from scratch. This could be helpful if you've already written a complex scenario, a user persona, or lorebook configurations that you want to apply across different conversations.

Step 1: Open the settings panel in your conversation.

Step 2: Click "Create experience from settings".

This will create an experience based on the current configuration of your conversation.

Convert preset <--> experience

After thinking about how the group of configuration should really be used, you may decide that you want to change a preset to be an experience or vice versa.
You can manage this by opening the edit modal for the preset / experience, and clicking "Change preset to experience" or "Change experience to preset".

--------

Iterating on presets

The purpose of presets / experiences is that you should be able to iterate on creating the best experience so that other people can make use of your configuration. We know that this is not possible unless you the creator have the opportunity to craft the prompt, chat with it, tweak the prompt a little bit, chat with it more, and so on.
You can easily iterate from an existing experience by either pushing to your existing presets, or perhaps browsing through presets that other people have created and pulling them to your configuration.

Push current settings

You can modify settings in your current conversation, and push those settings to a preset or an experience that you've created.

Step 1: Modify your settings

Let's say that you've modified your settings to add an additional character prompt.

Step 2: Find the preset / experience you want to update

Click "Preset > Push current settings", which will open a modal for you to select the preset or an experience. On the detail panel of the preset, you can press "select", which will show you the changed values that will be updated on the new preset.

Apply preset or experience

You may want to apply certain configuration from other presets that you've already created, or from even another user's preset.

Step 1. Open list of presets

Click on "Preset > Apply preset or experience".

Step 2. Find and select a preset you want to apply

From the preset modal, select a preset that you want to use.

Step 3. Choose the settinsg you want to apply

Old value will show the value that your current configuration has, while new value will show the value of the import.

Step 4: Double-check the value and update your config

The values that you've applied should be updated in the input boxes. You can double-check the updated values and make any changes that are needed.

Preset examples

Example 1: RizzGPT

RizzGPT is a preset that is maintained by DreamTavern. You can apply its configurations when you're starting a new chat with a character, or even when you are in a conversation currently.
Since it's a preset, you can't chat directly with this preset (obviously), but the group of configuration can still be useful.

Experience examples

Example 1: Book recommendation

Book recommendation is an example of an experience without a character - it only uses a custom prompt template.
Book recommendation (Experience)
This is the simplest experience that can be created on DreamTavern. It uses no additional configuration other than a prompt template that's specific for this experience - it only uses the user_input placeholder.
Compiled prompt for message "Great fantasy books"
system: You know the title and author of every book on Amazon.com. Your job is to return a list of 10 books on the topic provided. The 10 books should be the highest reviewed on Amazon.com for the given topic. For each book in the list, return its title, author, and publish date. If you understand, please respond with yes without elaborating. user: You know the title and author of every book on Amazon.com. Your job is to return a list of 10 books on the topic provided. The 10 books should be the highest reviewed on Amazon.com for the given topic. For each book in the list, return its title, author, and publish date. If you understand, please respond with yes without elaborating. assistant: yes user: Great fantasy books
Response:
Compiled prompt for message "Best non-fiction books"
system: You know the title and author of every book on Amazon.com. Your job is to return a list of 10 books on the topic provided. The 10 books should be the highest reviewed on Amazon.com for the given topic. For each book in the list, return its title, author, and publish date. If you understand, please respond with yes without elaborating. user: You know the title and author of every book on Amazon.com. Your job is to return a list of 10 books on the topic provided. The 10 books should be the highest reviewed on Amazon.com for the given topic. For each book in the list, return its title, author, and publish date. If you understand, please respond with yes without elaborating. assistant: yes user: Best non-fiction books
Response:
Because it's not using the message_logs placeholder in the prompt template, the previous generation is not included in each of the generation. This can be helpful depending on the use-case if you want every message to be independent of the previous message - I don't necessarily want ChatGPT to be hallucinating its response when coming up with best non-fiction books with the best fantasy books in the context window.

Example 2: Assistant

Let's take a look at Assistant, which is another experience that is maintained by DreamTavern. It only uses a basic character and a custom prompt template.
Assistant (Experience)
Assistant character (character)
Assistant experience prompt template
The Assistant is slightly more complicated than Book recommendation - it only uses a simple character card and a custom prompt template. There are no scenarios or user persona set by default, and it only uses a couple placeholders for the prompt template.
Last modified 2mo ago