Do not let the web note decide what the question was about
The detector answers no to "why is my array so slow", so claiming that meant a question about the wider world would have answered it from general web pages.
This commit is contained in:
@@ -856,15 +856,31 @@ if ($profile === 'chat' && vv_ai_chat_needs_varaverk($question)) {
|
||||
// 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";
|
||||
// Removes a false prohibition. It does NOT classify the question, and the first version of
|
||||
// this did: it told the model that nothing named a Varaverk component so this was a question
|
||||
// about the wider world. That inference is not the detector's to make. The detector finds
|
||||
// script names, SCREAMING_CASE keys and the project's own name — it answers NO to "why is my
|
||||
// array so slow tonight", "how much space do I have left" and "is everything healthy", every
|
||||
// one of which is about this machine and none of which names anything.
|
||||
//
|
||||
// So asserting "wider world" here would have handed those a confident answer assembled from
|
||||
// whatever the web returned about Unraid in general, dressed as an answer about their box —
|
||||
// the exact failure the absolute rule exists to prevent, reintroduced by the fix for a
|
||||
// different problem. Saying only what is true — results exist, the machine is still invisible
|
||||
// — leaves the model free to answer the Unraid-release question and still deflect that one.
|
||||
$system .= "NOTE: a web search ran for this question and the results are in the passages.\n"
|
||||
. "Looking things up is therefore something you CAN do here, and the rule above "
|
||||
. "about having no tools does not cover it — that rule is about inspecting this "
|
||||
. "machine. For a question about the outside world — a product, a release, a "
|
||||
. "version, how some technology works — answer it from these results and your own "
|
||||
. "knowledge and cite what you use. Saying you cannot look it up while holding the "
|
||||
. "sources is simply wrong, and the Varaverk Assistant would be no help: it reads "
|
||||
. "this installation's documents and knows less about the outside world than you.\n"
|
||||
. "What has NOT changed: you still cannot see this installation. A web search says "
|
||||
. "nothing about this operator's array, pool, containers, logs or settings, and no "
|
||||
. "number of results makes a general page about Unraid into a fact about their "
|
||||
. "machine. If the question is about their system rather than the world, the honest "
|
||||
. "answer is still that you cannot see it in this mode.\n\n";
|
||||
}
|
||||
|
||||
if ($context !== '') $system .= "PASSAGES\n" . $context;
|
||||
|
||||
Reference in New Issue
Block a user