Skip to content
Aabha AI Academy

All courses · Course overview · Lesson sequence

Skip to lesson text

Draft only supported claims

The evidence packet contains the complete renewal rule. A short answer would be easier to read than a JSON quote, but free-form drafting creates a new opportunity to lose the hold condition. We will add an answer stage whose behavior we can inspect without a paid service, then use its limits to define what a future neural experiment would need to demonstrate.

The executed method is a human-authored template, not an LLM. Its answer text was written by the course author for one named question. A separate count-based language model ran in Module 2; it did not write this policy answer. Keep those mechanisms distinct.

Begin with a reviewed answer and a source contract

For question ID q-renew, the reviewed claim is: “The supplied policy permits one seven-day renewal only if no other member has placed a hold.” It cites renewals-v1. A human compared that sentence with the complete source and approved the mapping for this synthetic fixture.

The rule records the question ID, source ID, source identifier, version and a SHA-256 fingerprint of the source text. render_template checks that the named question has a rule and that the exact source fixture is present in the packet. If either check fails, it abstains. If they pass, it copies the authored claim into a result labeled human_authored_template and model_used: false.

Run:

python3 -B methods.py generation

The supported fixture returns template_rendered. An unknown question ID returns abstain with reason no_reviewed_template_for_question_id. A packet missing the renewal source returns missing_or_changed_source. These are actual local results, not mock provider responses.

Do not hide the human interpretation step

The function takes a question ID, not arbitrary natural-language text. It does not decide whether a new sentence means the same thing as q-renew. A caller that carelessly maps a laptop question to the renewal ID could display an irrelevant template even though the source check passes. The mapping is part of the reviewed fixture, not an implemented classifier.

Likewise, a matching fingerprint proves equality with the stored text under the hash check; it does not prove that the text is true, up to date or correctly interpreted. The rule must be built from a frozen reviewed baseline, not rebuilt automatically from any changed runtime source. If someone changes both the rule and source to match, this local equality check is no security boundary. It is an inspectable regression guard.

Why use such a limited method? It makes three responsibilities visible: a source must be present, an answer must preserve its meaning, and an unsupported input needs a declared response. The template covers only the reviewed case. Its narrow coverage is a limitation we can state exactly instead of disguising it as general reasoning.

Keep the claim small enough to review

An atomic claim expresses a factual point that can be assessed separately. “Renewal lasts seven days and laptops are available” contains at least two different claims, one potentially supported and one unsupported. Split them before reviewing. A single citation attached to the whole sentence can conceal the unsupported addition.

For a policy answer, conditions may be inseparable from the main point. Reducing the renewal rule to “Renewal is allowed” removes the restriction that makes it correct. A useful review unit can therefore include the permission and its condition together. “Atomic” does not mean deleting every qualifying phrase to make a sentence shorter.

Ask two questions about each proposed claim: does an eligible source actually establish it, and does the answer include the parts needed for the user's question? A perfectly supported statement about opening hours is still incomplete if the question asks where to return books after closing. A correct citation ID only establishes that the cited item exists; it cannot substitute for either review.

Define a future generator interface without claiming execution

If a real model is later authorized, its input contract should distinguish the user question, task instructions and quoted evidence with source/version identifiers. Its requested output can contain claims, citation IDs and an explicit insufficient-evidence state. The surrounding application would validate the output shape, bound input/output sizes and route ambiguous or unsupported answers to review. Text separation and structured output are useful interface choices; neither guarantees source fidelity or resistance to source-borne instructions.

For example, an input could carry a field evidence with records containing id, version and quote, and an instruction to base claims only on those records. An output could carry status, claims and citation_ids. This describes a schema, not an implemented model adapter. There is no provider, key, token billing, model download or live generation request in this package.

A future experiment would record the exact model/interface version, full prompt format, tokenizer and decoding settings, source snapshot and evaluation cases. It would inspect malformed outputs, missing citations, invented claims and omitted conditions. It would keep the lexical and context stages fixed while comparing answer-stage changes, so a better retrieval set could not quietly be credited to a better generator.

Make abstention useful rather than performative

“I cannot answer anything” avoids unsupported statements by providing no help. That is not a useful goal for a system intended to answer handbook questions. We need to assess both appropriate abstention on unsupported inputs and unnecessary abstention when sufficient evidence exists.

Our template intentionally abstains outside its one reviewed question, even for other answerable questions. That behavior is a coverage limit of this teaching implementation. It would fail an assessment claiming a general handbook assistant. For the laptop question, a useful human response can identify the available book-loan rule and state that the supplied collection does not establish a laptop policy. It should not invent the policy or claim a real-world prohibition merely because a source is absent.

Complete the claim/template practice, then inspect the solutions. The next module turns these review decisions into explicit measurements while keeping manual judgments visible.

Read separate answers and explanations