Let it look things up rather than putting it in search mode
Results announced themselves as the source, so a question it already knew got answered by paraphrasing the first hit.
This commit is contained in:
@@ -274,8 +274,18 @@ function vv_ai_web_search(string $question): array {
|
||||
// renumbering the other.
|
||||
function vv_ai_web_context(array $results, int $offset = 0): string {
|
||||
if (!$results) return '';
|
||||
$s = "Web search results. These are from outside this installation — cite them by number, and\n"
|
||||
. "say when something is a general answer rather than one about this machine.\n\n";
|
||||
// Framed as reference material, not as the answer. The search runs whenever the box is
|
||||
// ticked, because a search is one HTTP request and deciding to run it would cost a whole
|
||||
// extra generation — but running it must not mean leaning on it. Answering a question the
|
||||
// model already knows by paraphrasing the first search result is worse than answering it
|
||||
// directly, and it was doing that because the results announced themselves as the source.
|
||||
$s = "Reference material from a web search, in case it is useful. It is from outside this\n"
|
||||
. "installation and nothing here has been verified against this machine.\n\n"
|
||||
. "Answer from what you already know when you know it. Reach for these when you do not,\n"
|
||||
. "when the question turns on something current, or when a specific version, release or\n"
|
||||
. "figure needs checking rather than recalling. Cite by number only what you actually\n"
|
||||
. "used, ignore the rest, and never imply the web was consulted about this installation —\n"
|
||||
. "it was not. Say plainly when an answer is general rather than about this machine.\n\n";
|
||||
foreach ($results as $i => $r) {
|
||||
$s .= '[' . ($offset + $i + 1) . '] ' . $r['title'] . ' — ' . $r['url'] . "\n"
|
||||
. $r['snippet'] . "\n\n";
|
||||
|
||||
@@ -398,13 +398,16 @@ vv_ai_chat_markup('vv-ai', [
|
||||
reads as broken, and the reason it does nothing is a capability boundary that takes a
|
||||
paragraph to explain. -->
|
||||
<div class="vv-ai-set-r" id="vv-ai-web-row" style="display:none">
|
||||
<span class="vv-ai-set-l">Web search</span>
|
||||
<span class="vv-ai-set-l">Looking things up</span>
|
||||
<div>
|
||||
<label class="vv-ai-toggle"><input type="checkbox" id="vv-ai-web"> search the web for
|
||||
this question</label>
|
||||
<div class="vv-ai-set-d" id="vv-ai-web-state">General Chat only — it is the one profile
|
||||
that cannot change anything, which is why it is the one allowed to look outside. Your
|
||||
question is sent to the configured search provider.</div>
|
||||
<label class="vv-ai-toggle"><input type="checkbox" id="vv-ai-web"> let it look up what
|
||||
it does not know</label>
|
||||
<div class="vv-ai-set-d" id="vv-ai-web-state">Not a web-search mode — it still answers
|
||||
from what it knows, and reaches for results when it does not know, when the question
|
||||
turns on something current, or when a version or figure is worth checking rather than
|
||||
recalling. General Chat only: it is the one profile that cannot change anything, which
|
||||
is why it is the one allowed to look outside. Your question is sent to the configured
|
||||
search provider.</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="vv-ai-set-r">
|
||||
|
||||
Reference in New Issue
Block a user