Spaces:
Running
on
Zero
Running
on
Zero
Commit
·
914bde0
1
Parent(s):
7a7a151
update
Browse files
app.py
CHANGED
|
@@ -33,6 +33,7 @@ scheduler = load_scheduler()
|
|
| 33 |
|
| 34 |
|
| 35 |
HEAD = """
|
|
|
|
| 36 |
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.2/css/all.min.css" integrity="sha512-Evv84Mr4kqVGRNSgIGL/F/aIDqQb7xQ2vcrdIwxfjThSH8CSR7PBEakCr51Ck+w+/U6swU2Im1vVX0SVk9ABhg==" crossorigin="anonymous" referrerpolicy="no-referrer" />
|
| 37 |
"""
|
| 38 |
|
|
@@ -95,7 +96,6 @@ div#banner {
|
|
| 95 |
div#model-state p {
|
| 96 |
font-size: 14px;
|
| 97 |
}
|
| 98 |
-
|
| 99 |
}
|
| 100 |
|
| 101 |
div#steering-toggle {
|
|
@@ -129,6 +129,20 @@ div#coeff-slider .wrap .head {
|
|
| 129 |
margin-bottom: 0;
|
| 130 |
}
|
| 131 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 132 |
"""
|
| 133 |
|
| 134 |
|
|
@@ -149,6 +163,9 @@ slider_ticks = """\
|
|
| 149 |
</datalist>\
|
| 150 |
"""
|
| 151 |
|
|
|
|
|
|
|
|
|
|
| 152 |
|
| 153 |
JS = """
|
| 154 |
async() => {
|
|
@@ -159,10 +176,19 @@ async() => {
|
|
| 159 |
sliderNode.insertAdjacentHTML('afterend', "%s");
|
| 160 |
sliderNode.setAttribute("list", "values");
|
| 161 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 162 |
document.querySelector('span.min_value').remove();
|
| 163 |
document.querySelector('span.max_value').remove();
|
| 164 |
}
|
| 165 |
-
""" % (slider_info, slider_ticks)
|
| 166 |
|
| 167 |
|
| 168 |
def initialize_instance(request: gr.Request):
|
|
@@ -325,7 +351,7 @@ with gr.Blocks(title="LLM Censorship Steering", theme=theme, head=HEAD, css=CSS,
|
|
| 325 |
with gr.Column(scale=1):
|
| 326 |
with gr.Row():
|
| 327 |
steer_toggle = Toggle(label="Steering", info="Turn off to generate original outputs", value=True, interactive=True, scale=2, elem_id="steering-toggle")
|
| 328 |
-
coeff = gr.Slider(label="Coefficient
|
| 329 |
|
| 330 |
@gr.on(inputs=[steer_toggle], outputs=[steer_toggle, coeff], triggers=[steer_toggle.change])
|
| 331 |
def update_toggle(toggle_value):
|
|
|
|
| 33 |
|
| 34 |
|
| 35 |
HEAD = """
|
| 36 |
+
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script>
|
| 37 |
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.2/css/all.min.css" integrity="sha512-Evv84Mr4kqVGRNSgIGL/F/aIDqQb7xQ2vcrdIwxfjThSH8CSR7PBEakCr51Ck+w+/U6swU2Im1vVX0SVk9ABhg==" crossorigin="anonymous" referrerpolicy="no-referrer" />
|
| 38 |
"""
|
| 39 |
|
|
|
|
| 96 |
div#model-state p {
|
| 97 |
font-size: 14px;
|
| 98 |
}
|
|
|
|
| 99 |
}
|
| 100 |
|
| 101 |
div#steering-toggle {
|
|
|
|
| 129 |
margin-bottom: 0;
|
| 130 |
}
|
| 131 |
}
|
| 132 |
+
|
| 133 |
+
.tooltip {
|
| 134 |
+
word-wrap: break-word;
|
| 135 |
+
width: 12rem;
|
| 136 |
+
}
|
| 137 |
+
.tooltip-inner {
|
| 138 |
+
filter: alpha(opacity=100);
|
| 139 |
+
font-size: var(--block-info-text-size);
|
| 140 |
+
text-align: center;
|
| 141 |
+
padding: .4rem .2rem;
|
| 142 |
+
background-color: var(--neutral-500);
|
| 143 |
+
border-width: 1px;
|
| 144 |
+
border-radius: var(--block-radius);
|
| 145 |
+
}
|
| 146 |
"""
|
| 147 |
|
| 148 |
|
|
|
|
| 163 |
</datalist>\
|
| 164 |
"""
|
| 165 |
|
| 166 |
+
coeff_info = """\
|
| 167 |
+
<href='#' id='coeff-info' data-bs-toggle='tooltip' style='padding-left: 3px;' data-bs-html='true' data-bs-trigger='hover focus' data-bs-placement='right' data-bs-html='true' title='Recommended range is -1~1 (Outputs may be unexpected outside this range)'><i class='fa-solid fa-circle-question'></i></span>\
|
| 168 |
+
"""
|
| 169 |
|
| 170 |
JS = """
|
| 171 |
async() => {
|
|
|
|
| 176 |
sliderNode.insertAdjacentHTML('afterend', "%s");
|
| 177 |
sliderNode.setAttribute("list", "values");
|
| 178 |
|
| 179 |
+
const coeffBox = document.querySelector("div#coeff-slider label span");
|
| 180 |
+
coeffBox.insertAdjacentHTML('afterend', "%s");
|
| 181 |
+
|
| 182 |
+
|
| 183 |
+
var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
|
| 184 |
+
var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
|
| 185 |
+
return new bootstrap.Tooltip(tooltipTriggerEl)
|
| 186 |
+
})
|
| 187 |
+
|
| 188 |
document.querySelector('span.min_value').remove();
|
| 189 |
document.querySelector('span.max_value').remove();
|
| 190 |
}
|
| 191 |
+
""" % (slider_info, slider_ticks, coeff_info)
|
| 192 |
|
| 193 |
|
| 194 |
def initialize_instance(request: gr.Request):
|
|
|
|
| 351 |
with gr.Column(scale=1):
|
| 352 |
with gr.Row():
|
| 353 |
steer_toggle = Toggle(label="Steering", info="Turn off to generate original outputs", value=True, interactive=True, scale=2, elem_id="steering-toggle")
|
| 354 |
+
coeff = gr.Slider(label="Coefficient", value=-1.0, minimum=-2, maximum=2, step=0.1, scale=8, show_reset_button=False, elem_id="coeff-slider")
|
| 355 |
|
| 356 |
@gr.on(inputs=[steer_toggle], outputs=[steer_toggle, coeff], triggers=[steer_toggle.change])
|
| 357 |
def update_toggle(toggle_value):
|