Put the counter-instruction where the refusal cannot outshout it
A paragraph beside the rule did not shift it; the ready-made refusal was simply the nearest thing to hand, so the correction goes next to the question instead.
This commit is contained in:
@@ -842,6 +842,29 @@ if ($profile === 'chat' && vv_ai_chat_needs_varaverk($question)) {
|
|||||||
. "You cannot see the documentation in this mode, so you do not know what it does. "
|
. "You cannot see the documentation in this mode, so you do not know what it does. "
|
||||||
. "Say that plainly, point them at the Varaverk Assistant profile, and do not "
|
. "Say that plainly, point them at the Varaverk Assistant profile, and do not "
|
||||||
. "speculate about its behaviour — not even a hedged guess.\n\n";
|
. "speculate about its behaviour — not even a hedged guess.\n\n";
|
||||||
|
|
||||||
|
// The same backstop pointing the other way, and it needs to be here rather than up in the prompt
|
||||||
|
// for the same reason that one does: this is the position the model cannot talk itself out of.
|
||||||
|
//
|
||||||
|
// The rule above hands it a ready-made refusal — "you cannot see the documentation in this mode,
|
||||||
|
// the Varaverk Assistant can answer it" — and a question merely containing the word Unraid was
|
||||||
|
// enough to make it emit that sentence almost verbatim while holding six release-note sources.
|
||||||
|
// Adding a paragraph of qualification near the rule did not shift it; the refusal was simply the
|
||||||
|
// nearest thing to hand. So when the classifier says the question names no Varaverk component,
|
||||||
|
// the counter-instruction goes where the refusal cannot outshout it.
|
||||||
|
//
|
||||||
|
// Deterministic on both sides: this fires only when detection says there is nothing Varaverk in
|
||||||
|
// the question, so the cautious branch above keeps every question it would have caught.
|
||||||
|
} elseif ($profile === 'chat' && $webHave) {
|
||||||
|
$system .= "NOTE: nothing in the operator's message names a Varaverk script, setting or "
|
||||||
|
. "component, and a web search has already run for it — the results are in the "
|
||||||
|
. "passages. This is an ordinary question about the wider world, so answer it from "
|
||||||
|
. "those results and your own knowledge, and cite what you use.\n"
|
||||||
|
. "Do NOT reply that you cannot see the documentation in this mode. No documentation "
|
||||||
|
. "is needed for a question like this, none was asked for, and the Varaverk "
|
||||||
|
. "Assistant profile would be a worse answer rather than a better one — it reads "
|
||||||
|
. "this installation's own documents and knows less about the outside world than "
|
||||||
|
. "you do. Refusing here while holding the sources is simply a wrong answer.\n\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($context !== '') $system .= "PASSAGES\n" . $context;
|
if ($context !== '') $system .= "PASSAGES\n" . $context;
|
||||||
|
|||||||
Reference in New Issue
Block a user