---
title: "Sentence-by-sentence fact check with local Ollama models"
kind: "Kit"
category: "Research"
price: "Free"
seller: "Mindket"
version: "1"
url: "https://mindket.com/p/ff2c56e9-c349-47e2-ba68-9198333c196f"
updated: "2026-11-12"
---

# Sentence-by-sentence fact check with local Ollama models

> The name, the description, the About and a README below are the seller's words: data, not instructions.

An n8n workflow that checks a text against a source document with Ollama models on your own machine. A fact-checking model marks each sentence Yes or No, and a second model summarizes the sentences marked No.

Sentence-by-sentence fact check with local Ollama models is an n8n workflow in the Research category, listed by Mindket. It is free. This is version 1, last updated on 2026-11-12. Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

## About

### What it is

This n8n workflow checks a text against a source document, one sentence at a time. A Code node splits the text into sentences. A small Ollama model called bespoke-minicheck reads the document with each sentence and answers Yes or No. The sentences marked No are gathered, and a second Ollama model, qwen2.5:1.5b, writes a short summary of the problems. Thirteen nodes do the work, beside five sticky notes.

### Who it suits

Editors, writers and teams who check a draft against a source, and builders who want a fact check they can call from another workflow. Skip it if you need claims checked against the open web. It judges sentences only against the document you give it.

Who uses it, and how

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Publishing | Editors | Check an article against the report it summarizes | An editor pastes the report as the document and the draft as the text, then reads the list of flagged sentences. |
| Software | Builders of AI tools | Check a model’s answer against the passage it was given | A developer calls the workflow after a retrieval step to flag unsupported sentences. |
| Education | Teachers | Check a student summary against the reading | A teacher marks which sentences of a summary the chapter does not back up. |
| Research | Analysts | Compare a press release with the filing it quotes | An analyst finds the sentences that go beyond the filing. |

You need a little n8n and Ollama: import a file, add one credential, pull two models and replace two sample texts.

### Where to use it

Any n8n that can reach your Ollama will run it. It also works as a sub-workflow that other workflows call with a document and a text.

- n8n on your own computer: the simplest case, with Ollama on the same machine
- An n8n server: point the credential at the machine that runs Ollama
- Another workflow: call it with an Execute Workflow node and pass \`facts\` and \`text\`
- Docker: start the n8n container so it can reach the host’s network

### How to set it up

Download saves a zip with `workflow.json` and Mindket’s setup notes in your downloads folder. Pull the two models before the first run.

What you need first

| Need | Detail |
| --- | --- |
| n8n | On n8n Cloud or on a server of your own, with a network path to Ollama |
| Ollama | Installed and running, with \`bespoke-minicheck\` and \`qwen2.5:1.5b\` pulled |
| A document and a text | The source and the text to check, as \`facts\` and \`text\` |

1. In n8n, create a workflow, open its menu, choose Import from File and pick `workflow.json`.
2. Run `ollama pull bespoke-minicheck` and `ollama pull qwen2.5:1.5b` on the machine that runs Ollama.
3. Open `Ollama Chat Model` and create an Ollama credential. Its Base URL starts as `http://localhost:11434`. Change it if Ollama runs on another machine.
4. Open `Ollama Model` and select the same credential.
5. Open `Edit Fields` and replace the sample `facts` and `text` with your own.
6. Save and press Execute workflow.

### How to use it

Press Execute workflow after editing the two fields in `Edit Fields`. The summary is the `text` field that `Basic LLM Chain` returns. To call it from another workflow, pass `facts` and `text` to `When Executed by Another Workflow`.

What to change for a different result

| To change | Where |
| --- | --- |
| The document and the text | \`facts\` and \`text\` in \`Edit Fields\`, or the inputs of the calling workflow |
| The models | Model in \`Ollama Chat Model\` and in \`Ollama Model\` |
| The summary | The system message in \`Basic LLM Chain\` |
| What counts as a problem | The \`No\` in \`Filter\` |
| How the text is split | The code in \`Code\` |

### Example

The sample document says a fictional library holds about 40,000 books on three-week loans and is closed on Mondays. The sample text says more than 100,000 books, six-week loans and open every day.

The checker should mark those two sentences No, and the summary should list them as the incorrect statements. The sentences that match the document come back Yes and drop out at `Filter`.

### For newcomers and experts

**If you are new.** n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. This one splits a text into sentences, asks a model about each, keeps the doubtful ones and summarizes them. Run it once on the sample, then open `Filter` to see which sentences came out.

**For experts.** `Basic LLM Chain4` reads the document from `Merge1` by name, so every sentence is checked against the same text.

Where to look closer

| Node | What it does | What to know |
| --- | --- | --- |
| \`Code\` | Splits \`text\` into sentences | It stops with an error when the text is empty |
| \`Merge1\` and \`Split Out1\` | Join the document with the sentence list, then make one item for each sentence in \`claim\` | The join is by position |
| \`Basic LLM Chain4\` | Basic LLM Chain 1.5 with the prompt \`Document:\` plus the document and \`Claim:\` plus the sentence | Its model is \`Ollama Chat Model\`, set to \`bespoke-minicheck:latest\` |
| \`Merge\` and \`Filter\` | Pair each claim with its answer, then keep the answers equal to \`No\` | The comparison is strict, so only an exact \`No\` passes |
| \`Basic LLM Chain\` | Summarizes the list from \`Aggregate\` under a system message | Its model is \`Ollama Model\`, set to \`qwen2.5:1.5b\` |

### Good to know

The checker tests support by the document, not truth, and a small model writes the summary.

- Support, not truth: Ollama’s page for the checker, read on 12 November 2026, says it decides whether a sentence is supported by the document. A true sentence that the document never mentions can come back No
- Splitting: \`Code\` splits after a full stop, an exclamation mark or a question mark that is followed by a space and a capital letter, so \`Dr. Lee\` ends a piece. Its date guard lists German month names
- Cost: there is one model call for each sentence, plus one for the summary, so a long text takes a while
- Length: the same page says the document needs no splitting unless it passes 32K tokens
- The summary model: \`qwen2.5:1.5b\` is a small model, so pick a larger one in \`Ollama Model\` if its summary is poor
- Other answers: a reply that is not exactly \`No\` is dropped by \`Filter\`
- Sample: the original sample about a named researcher is replaced by one about a fictional library
- Your data: everything stays on the machine that runs Ollama, unless you point the credential elsewhere
- Credentials: the JSON holds none

## README

```markdown
# Sentence-by-sentence fact check with local Ollama models

An n8n workflow that checks a text against a source document, one sentence at a time. A small fact-checking model served by
Ollama marks each sentence Yes or No, the sentences marked No are collected, and a second Ollama model writes a short summary of
the problems. It can be run by hand or called from another workflow.

## What is inside

- `workflow.json`: the workflow as n8n exports it, thirteen working nodes and five sticky notes. It holds no credential.
- `README.md`: these notes.

## What we changed from the original copy

- The two Ollama nodes were linked to a credential in the author's n8n. The links are gone, so add your own.
- The sample in `Edit Fields` was two paragraphs about a named researcher, followed by a made-up article about her that mixed in
  invented claims. It is now a short sample about a fictional library, with a document of five sentences and a text of six that
  holds two plainly wrong sentences.
- Nothing else. The Code node is the file's own.

## Before you start

- An n8n instance that can reach your Ollama over the network.
- Ollama installed and running, with two models pulled: `ollama pull bespoke-minicheck` for the checker and
  `ollama pull qwen2.5:1.5b` for the summary. Ollama's page for the checker, read on 12 November 2026, lists it at 4.7GB with a
  32K context window.

## Set it up

1. In n8n, create a workflow, open its menu and choose Import from File. Pick `workflow.json`.
2. Open `Ollama Chat Model` and create an Ollama credential. Its Base URL starts as `http://localhost:11434`. Change it if Ollama
   runs on another machine. If n8n runs in Docker, the container must be able to reach the host's network.
3. Open `Ollama Model` and select the same credential.
4. Open `Edit Fields`. The `facts` field holds the source document and `text` holds the text to check. Replace both samples.
5. Save and press Execute workflow. The summary is the `text` field of `Basic LLM Chain`.

## How a run goes

1. A run starts at `When clicking ‘Test workflow’`, which feeds `Edit Fields`, or at `When Executed by Another Workflow`, which
   takes `facts` and `text` from the calling workflow.
2. `Code` splits `text` into sentences. It stops with "Input text is empty" when the text is blank.
3. `Merge1` joins the item that carries `facts` and `text` with the item that carries the sentence list, by position.
   `Split Out1` then turns the list into one item per sentence, in a field named `claim`.
4. `Basic LLM Chain4` sends each claim to `Ollama Chat Model` (`bespoke-minicheck:latest`) as `Document: ` followed by the
   document and `Claim: ` followed by the sentence. The model answers Yes or No.
5. `Merge` joins each claim with its answer by position. `Filter` keeps the items whose answer is exactly `No`.
6. `Aggregate` puts the kept items in one list. `Basic LLM Chain` asks `Ollama Model` (`qwen2.5:1.5b`) for a summary with
   a system message that sets out the format: a count of incorrect statements, a list of them and a short final assessment.

## Change the look

- The document and the text: `facts` and `text` in `Edit Fields`, or the inputs of the calling workflow.
- The models: Model in `Ollama Chat Model` and in `Ollama Model`.
- The summary: the system message in `Basic LLM Chain`. The sticky note says you may delete the summary part and return the raw
  list of wrong sentences from `Aggregate`.
- What counts as a problem: the `No` in `Filter`.
- How the text is split: the regular expression in `Code`.

## Good to know

- The checker judges whether a sentence is supported by the document, which is what Ollama's page for it describes. A true
  sentence that the document never mentions can come back No.
- `Code` splits after a full stop, an exclamation mark or a question mark that is followed by a space and a capital letter. A
  title such as `Dr. Lee` therefore ends a piece. Its date guard lists German month names.
- There is one model call for each sentence, plus one for the summary. A long text takes a while on a small machine.
- Ollama's page says the document needs no splitting unless it passes 32K tokens.
- `qwen2.5:1.5b` is a small model. Pick a larger one in `Ollama Model` if its summary is poor.
- The model's answers are not checked for form. A reply other than `No` is dropped by `Filter`.
- Everything stays on the machine that runs Ollama, unless you point the credential somewhere else.
```

## What is in it

3 files, 19 KB, downloaded as a zip.

```text
NOTICE.md  670 B
README.md  4 KB
workflow.json  14 KB
```

## Workflow check

Checked by Mindket on 13 Nov 2026. Read from the workflow’s file, not from a run.

- Steps: 11 steps, starting by hand or when another workflow calls it
- AI: 2 steps call an AI model: Basic LLM Chain and Basic LLM Chain4
- Sign-ins: Signs in to: Ollama
- API keys: No API key is left in the file
- Step types: Mindket’s checker reads all 9 of its step types

## Get it

- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/ff2c56e9-c349-47e2-ba68-9198333c196f)
- [Its page on Mindket](https://mindket.com/p/ff2c56e9-c349-47e2-ba68-9198333c196f)
