Used to embed text and write answers. Stored encrypted; after saving, the field stays empty: enter a key only to replace it.
OpenAI API address
https://api.openai.com/v1 for OpenAI. Any service with the same API works: an Azure OpenAI or OpenRouter endpoint, or a model server of your own.
Turso database URL
Your database's address, https://<database>-<organization>.turso.io (a libsql:// address works too).
Turso auth token
A database token from Turso. Stored encrypted.
The key and the token are encrypted with a key derived from your database credentials (db.ini), so a copy of the database alone does not reveal them. If you move the site to a server with other database credentials, enter them again: the settings page says so.
A host can set the connection in application/config/config.ini, so it is never in the database. Values there win over the settings page, which then shows them as set in config.ini.
chatbot.openai_api_key = "sk-…"
chatbot.openai_base_url = "https://api.openai.com/v1"
chatbot.turso_url = "https://my-collection-myorg.turso.io"
chatbot.turso_auth_token = "…"
chatbot.encryption_key = "a long random string" ; encrypts saved keys instead of db.ini's credentials
chatbot.sync_jobs = 1 ; index in the request, without background jobs
Turns text into vectors. text-embedding-3-small costs less.
Embedding dimensions
3072
The size of the vectors, 256 to 3072. Smaller is cheaper to store and search, a little less precise. The index is created with this size: after changing it, purge the index and re-index.
Chat model
gpt-4o-mini
Writes the answers. gpt-4o writes better ones, at a higher cost.
Chunk size
3200
Characters per chunk. A record longer than this is split into several chunks.
Chunk overlap
200
Characters repeated between consecutive chunks, so a sentence cut in two is still found.
Evidence per answer
5
How many chunks the chat model reads to answer.
Collections indexed
All
Index only the items, files and collections of the collections you choose. Simple pages and exhibit pages are always indexed. Re-index after changing it.
Index automatically
On
Index records in the background when they are saved. Turn it off during a large import, and re-index after. Deleted and private records leave the index at once either way.
Visitors can ask questions, with the floating button or a [chatbot] panel. Off: neither shows, and the chat endpoint refuses requests.
Floating button
Off
A chat button in the corner of every public page.
Chat heading
"Ask our collection"
The title of the chat panel.
Signed-in users only
Off
Only people signed in to the site can chat; others see a link to sign in.
Instructions to the model
(built in)
The system prompt. The built-in one tells the model to answer only from the evidence, to say "I don't know" otherwise, and to cite sources as [1], [2]. Keep the citation rule in your own, or answers have no sources.
Semantic search
On
The search page at /semantic-search and the [semantic_search] shortcode.
Search in the navigation
Off
Adds a link to the search page to your theme's main navigation.
Search page title
"Semantic Search"
The search page's title and the link's label.
Requests a minute
10
Chats and searches each visitor (IP address) may send a minute. 0: no limit.
Info logs chats, searches and indexing; Debug adds every chunk embedded; the others only problems. The dashboard counts chats and searches from the log, so keep Info or Debug for it.
Keep log entries
90 days
Older entries are deleted once a day. 0: keep everything.