File size: 9,186 Bytes
519a20c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<h3 class="flex-container justifyCenter alignitemscenter">
    <span data-i18n="Prompt Itemization">Prompt Itemization</span>
    <div id="showRawPrompt" class="fa-solid fa-square-poll-horizontal menu_button" title="Show Raw Prompt" data-i18n="[title]Show Raw Prompt"></div>
    <div id="copyPromptToClipboard" class="fa-solid fa-copy menu_button" title="Copy Prompt" data-i18n="[title]Copy Prompt"></div>
    <div id="diffPrevPrompt" class="fa-solid fa-code-compare menu_button" title="Show Prompt Differences" data-i18n="[title]Show Prompt Differences"></div>
</h3>
<div>
    <div>
        <span data-i18n="API/Model:">API/Model:</span> {{mainApiFriendlyName}} {{#if apiUsed}}({{apiUsed}}){{/if}} {{#if modelUsed}}&ndash; {{modelUsed}}{{/if}}
    </div>
    <div>
        <small><span data-i18n="Preset:">Preset:</span> {{presetName}}</small>
        <span>|</span>
        <small><span data-i18n="Tokenizer:">Tokenizer:</span> {{selectedTokenizer}}</small>
    </div>
</div>

<span class="tokenItemizingSubclass" data-i18n="Only the white numbers really matter. All numbers are estimates. Grey color items may not have been included in the context due to certain prompt format settings.">
    Only the white numbers really matter. All numbers are estimates.
    Grey color items may not have been included in the context due to certain prompt format settings.
</span>
<hr>
<div class="justifyLeft">
    <div class="flex-container">
        <div class="flex-container flex1 flexFlowColumns flexNoGap wide50p tokenGraph">
            <div class="wide100p" style="background-color: grey; height: {{oaiSystemTokensPercentage}}%;"></div>
            <div class="wide100p" style="background-color: salmon; height: {{oaiStartTokensPercentage}}%;"></div>
            <div class="wide100p" style="background-color: indianred; height: {{storyStringTokensPercentage}}%;"></div>
            <div class="wide100p" style="background-color: gold; height: {{worldInfoStringTokensPercentage}}%;"></div>
            <div class="wide100p" style="background-color: palegreen; height: {{ActualChatHistoryTokensPercentage}}%;">
            </div>
            <div class="wide100p" style="background-color: cornflowerblue; height: {{allAnchorsTokensPercentage}}%;">
            </div>
            <div class="wide100p" style="background-color: mediumpurple; height: {{promptBiasTokensPercentage}}%;">
            </div>
        </div>
        <div class="flex-container wide50p">
            <div class="wide100p flex-container flexNoGap flexFlowColumn">
                <div class="flex-container wide100p">
                    <div class="flex1" style="color: grey;"><span data-i18n="System Info:">System Info:</span></div>
                    <div class="">{{oaiSystemTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Chat Start: </div>
                    <div class="tokenItemizingSubclass">{{oaiStartTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Main: </div>
                    <div class="tokenItemizingSubclass">{{oaiMainTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Post-History: </div>
                    <div class="tokenItemizingSubclass">{{oaiJailbreakTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Auxiliary: </div>
                    <div class="tokenItemizingSubclass">{{oaiNsfwTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Nudge: </div>
                    <div class="tokenItemizingSubclass">{{oaiNudgeTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Impersonate: </div>
                    <div class="tokenItemizingSubclass">{{oaiImpersonateTokens}}</div>
                </div>
            </div>
            <div class="wide100p flex-container flexNoGap flexFlowColumn">
                <div class="flex-container wide100p">
                    <div class="flex1" style="color: indianred;"><span data-i18n="Prompt Tokens:">Prompt Tokens:</span></div>
                    <div class="">{{oaiPromptTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Description: </div>
                    <div class="tokenItemizingSubclass">{{charDescriptionTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Personality:</div>
                    <div class="tokenItemizingSubclass">{{charPersonalityTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Scenario: </div>
                    <div class="tokenItemizingSubclass">{{scenarioTextTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">
                        <span>-- Examples:</span>
                        {{#if examplesCount}}<small>({{examplesCount}})</small>{{/if}}
                    </div>
                    <div class="tokenItemizingSubclass">{{examplesStringTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- User Persona:</div>
                    <div class="tokenItemizingSubclass">{{userPersonaStringTokens}}</div>
                </div>
            </div>
            <div class="wide100p flex-container">
                <div class="flex1" style="color: gold;"><span data-i18n="World Info:">World Info:</span></div>
                <div class="">{{worldInfoStringTokens}}</div>
            </div>
            <div class="wide100p flex-container">
                <div class="flex1" style="color: palegreen;">
                    <span data-i18n="Chat History:">Chat History:</span>
                    {{#if messagesCount}}<small>({{messagesCount}})</small>{{/if}}
                </div>
                <div class="">{{ActualChatHistoryTokens}}</div>
            </div>
            <div class="wide100p flex-container flexNoGap flexFlowColumn">
                <div class="wide100p flex-container">
                    <div class="flex1" style="color: cornflowerblue;"><span data-i18n="Extensions:">Extensions:</span></div>
                    <div class="">{{allAnchorsTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Summarize: </div>
                    <div class="tokenItemizingSubclass">{{summarizeStringTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Author's Note:</div>
                    <div class="tokenItemizingSubclass">{{authorsNoteStringTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Smart Context:</div>
                    <div class="tokenItemizingSubclass">{{smartContextStringTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Vector Storage (Chats):</div>
                    <div class="tokenItemizingSubclass">{{chatVectorsStringTokens}}</div>
                </div>
                <div class="flex-container ">
                    <div class=" flex1 tokenItemizingSubclass">-- Vector Storage (Data Bank):</div>
                    <div class="tokenItemizingSubclass">{{dataBankVectorsStringTokens}}</div>
                </div>
            </div>
            <div class="wide100p flex-container">
                <div class="flex1" style="color: mediumpurple;"><span>&lcub;&lcub;&rcub;&rcub;</span> <span data-i18n="Bias:">Bias:</span></div>
                <div class="">{{oaiBiasTokens}}</div>
            </div>
        </div>

    </div>
    <hr>
    <div class="wide100p flex-container flexFlowColumns">
        <div class="flex-container wide100p">
            <div class="flex1"><span data-i18n="Total Tokens in Prompt:">Total Tokens in Prompt:</span></div>
            <div class="">{{finalPromptTokens}}</div>
        </div>
        <div class="flex-container wide100p">
            <div class="flex1"><span data-i18n="Max Context">Max Context</span>&nbsp;<small data-i18n="(Context Size - Response Length)">(Context Size - Response Length)</small>:</div>
            <div class="">{{thisPrompt_max_context}}</div>
        </div>
    </div>
</div>
<hr>
<div id="rawPromptPopup" class="list-group">
    <div id="rawPromptWrapper" class="tokenItemizingMaintext"></div>
</div>