The technology behind the magic
How IrisAI turns your website into something visitors can ask questions of.
From content to conversation, in three stages
Content indexing
Your pages, posts and products are split into passages and converted into vector embeddings — numerical representations of meaning rather than of words.
Semantic understanding
When a visitor asks something, IrisAI finds the passages that actually address the question, using similarity matching alongside conventional keyword matching.
AI response
The retrieved passages go to a language model, which writes a natural answer from them and cites the pages it used.
Building your knowledge base
1 · Content discovery
The plugin scans your database for the public post types you select — typically pages and posts, plus custom types and WooCommerce products. Scanned PDFs are added separately from the Knowledge Base screen.
2 · Section-aware splitting
A full index splits content at heading boundaries, so each passage is one coherent section. The heading trail above it is stored and embedded with the text.
3 · Vector conversion
Each passage becomes an embedding. The hosted proxy and a BYO OpenAI key produce 1,536-dimension vectors; a Google key produces 3,072. Vectors from different models are not interchangeable.
4 · Storage
Everything stays in your own WordPress database. Nothing lives on our servers.
What actually gets stored
Passages go into the wp_irisai_vector_chunks table, with the vector held as a JSON array of floats alongside the text:
post_idandchunk_ix— which post the passage came from, and where in ittitle,url,heading_path— used for citations and for matchingcontentandoriginal_content— the passage textembedding— the vector itselfcontent_hash— lets re-indexing skip passages that have not changed
When indexing happens
| Trigger | What it does | Splitting |
|---|---|---|
| Full index | Started from the wizard or Knowledge Base. Runs in the background. | At heading boundaries |
| On save | With auto re-index on, refreshes that post only. | By length |
| On delete | Removes that post’s passages, so deleted content stops surfacing. | — |
Worth knowing
Only a full index produces the section-aware passages described above. Run one after restructuring a page, rather than relying on the incremental update that fires when you hit Save.
Answering a question
Retrieval runs two passes and scores them together. A keyword pass catches literal matches — product codes, names, error numbers. A semantic pass catches paraphrases, so a visitor asking about “staff” reaches a page headed “Our team”.
The strongest passages are assembled into the model’s context, within a token budget sized to the model in use, and the model is instructed to answer from them. The pages those passages came from become the citations shown beneath the answer.
When there is no good match
Search always returns its closest candidates, even when the closest candidates are poor. So before generating anything, IrisAI checks whether what it found is actually strong enough.
If nothing clears the threshold, the assistant says it doesn’t have those details and points at your contact page — rather than inventing an answer.
No citations are attached to a reply like that, because none were used. The thresholds are adjustable, and the Search Eval screen shows the scores behind each decision so you can tune from evidence.
Two ways to connect
| Proxy mode | BYO mode | |
|---|---|---|
| Setup | One click — account, key and trial credits created for you | Paste your own provider key |
| Billing | IrisAI credits | Your provider bills you directly |
| Models | OpenAI, Anthropic and Google from one dropdown | Anything your key can reach |
| Usage dashboard | Included | In your provider’s console |
| Embeddings | Provided | Needs an OpenAI or Google key |
One exception in both directions
OCR for scanned PDFs always runs through the IrisAI proxy endpoint, so BYO sites that want it need a proxy key as well. PDFs that already contain text are parsed on your own server.
Privacy
- Your indexed content and vectors stay in your WordPress database.
- API keys are stored server-side and never exposed to the browser.
- Only the passages relevant to a question are sent to the AI provider — never your whole site.
- Which provider receives that data depends on the model you select. Their terms govern what they do with it.
- Privacy mode disables query logging, and a consent checkbox is available.
See it working — ask the assistant on this site anything about IrisAI.