Repository navigation
Choosing an AI Setup
Desktop Scriptures' AI features run on an AI service you choose - a hosted one like OpenAI, or a model running on your own computer. This page explains what each piece is for and walks through setups that work well.
The quickest way: open Menu → AI Integration → AI Setup Wizard.... It finds AI servers already running on your computer, lists their models so you can pick instead of typing, tests each connection, and tells you exactly what to install if something's missing. The rest of this page explains the choices it offers.
| What it's for | Required? | |
|---|---|---|
| Chat model | Reads your question in AI-assisted search and suggests where in the scriptures to look, and chooses talks and directions in Talk Prep | Yes, for any AI feature |
| Embedding model | Builds the study index - see AI Integration - which lets AI features find passages by meaning, not just matching words | Optional |
They're different kinds of model, and one usually can't do the other's job: chat models generally can't produce embeddings (or produce poor ones), and embedding models can't chat. That's why AI Settings has a separate Embeddings URL - the two can come from different places.
Simplest if you're fine with a hosted service. Needs an API key from platform.openai.com; OpenAI bills usage to your account (see their pricing page).
| Setting | Value |
|---|---|
| Base URL | https://api.openai.com/v1 |
| Model | gpt-4o-mini |
| Embeddings URL | (blank - same as chat) |
| Embedding model | text-embedding-3-small |
| Embedding dimensions |
512 (makes the study index much smaller) |
Building the study index sends about 11 million tokens to OpenAI once; after that, only new or changed text (like new notes) is sent.
Everything stays on your computer. Install Ollama (on Ubuntu: sudo snap install ollama), then download one chat model and one embedding model:
ollama pull gemma3:4b
ollama pull embeddinggemma
| Setting | Value |
|---|---|
| Base URL | http://localhost:11434/v1 |
| Model | gemma3:4b |
| Embeddings URL | (blank - same as chat) |
| Embedding model | embeddinggemma |
| Embedding dimensions | (blank) |
embeddinggemma is Google's embedding model from the Gemma family (about 600 MB); nomic-embed-text is another good choice.
Ubuntu's inference snaps (for example sudo snap install gemma3) run a chat model tuned for your hardware, but can't serve embeddings - their server is started for chat, and switching it to embeddings would turn chat off (and a chat model makes poor embeddings anyway). Pair one with Ollama just for the embedding model:
sudo snap install ollama
ollama pull embeddinggemma
| Setting | Value |
|---|---|
| Base URL |
http://127.0.0.1:8328/v1 (the gemma3 snap's default - check with gemma3 status) |
| Model | gemma3-4b |
| Embeddings URL | http://localhost:11434/v1 |
| Embedding model | embeddinggemma |
| Embedding dimensions | (blank) |
If you'd rather run just one server, setup B does the same job with Ollama alone - then you can remove the inference snap.
The AI Setup Wizard offers these by name; pick one, enter your API key, and choose a model from its list.
| Service | Base URL | Embeddings for the study index? |
|---|---|---|
| Anthropic (Claude) - key from console.anthropic.com | https://api.anthropic.com |
No - pair it with Ollama (embeddinggemma) or OpenAI, as in setup C |
| Google Gemini - key from Google AI Studio | https://generativelanguage.googleapis.com/v1beta/openai |
Yes |
| OpenRouter - one key for many companies' models | https://openrouter.ai/api/v1 |
No |
| Groq | https://api.groq.com/openai/v1 |
No |
| Mistral | https://api.mistral.ai/v1 |
Yes |
Each bills usage to your account with them. With Claude, the wizard suggests Anthropic's current default model (claude-opus-5-5); a smaller Claude model from the list costs less. Like any chat-only service, Claude needs a separate Embeddings URL for the study index.
Anything that speaks the OpenAI-compatible API works: LM Studio (http://localhost:1234/v1 - load an embedding model alongside your chat model for the study index), llama.cpp's server, vLLM, and so on. The AI Setup Wizard checks the usual addresses for these automatically.
-
Chat: a general-purpose model, roughly 3-8 billion parameters for a typical desktop - e.g.
gemma3:4b,llama3.2. Avoid specialist models such as coding models (qwen3-coder, for example): they're often very large, slow on ordinary graphics cards, and not tuned for this kind of question. -
Embeddings: a dedicated embedding model -
embeddinggemma,nomic-embed-text, or OpenAI'stext-embedding-3-small. Never a chat model. - Changing the embedding model later means rebuilding the study index from scratch (vectors from different models aren't comparable). Changing the chat model doesn't affect the index at all.
-
With a graphics card (GPU): a 4-billion-parameter chat model needs about 3-4 GB of graphics memory, and
embeddinggemmaunder 1 GB - both fit together in 8 GB. Building the study index takes roughly half an hour on a mid-range card (measured: about 30 minutes on an NVIDIA RTX 2080). - Without one: local models still work, just slower - chat answers take longer, and building the study index can take hours. You can stop and resume the build any time. A hosted service (setup A) avoids both.
-
Idle servers cost little: the
gemma3inference snap unloads its model after 10 idle minutes, and Ollama does the same after 5 minutes by default.
Can I remove one of my AI servers? Check what each one is used for in Menu → AI Integration → AI Settings...: the Base URL server answers AI-assisted search; the Embeddings URL server (or the Base URL one, if Embeddings URL is blank) builds and searches the study index. Removing the chat server stops AI-assisted search until you point Base URL somewhere else; removing the embeddings server stops study index updates (searches fall back to matching words).
Does the study index need AI-assisted search turned on? Yes - the AI Setup Wizard turns it on for you.
Is my data sent anywhere? Only to the services you configure here, and only when you use an AI feature or build the study index. Building the index sends the scriptures and related text, including your notes, but never your Journal. With a local setup (B or C), nothing leaves your computer.
- Installation - installing the Snap, first launch
- AI Integration - connecting your own AI endpoint for AI-assisted search
- Choosing an AI Setup - which AI service and models to use, with step-by-step setups
- Talk Prep - finding scriptures, talks, and articles for a talk or lesson
- Sync - keeping your notes, tags, and highlights in sync across devices
- Landing Page Extras - Church News, Come Follow Me, and Inspirational Message
- Journal - one searchable entry per day, optionally linked to a passage
- Listen - have any chapter read aloud, verse by verse, in a choice of 4 voices (each downloaded once)
- General Conference Reminder - an opt-in heads-up before Conference starts
- Temple Recommend Reminder - an opt-in, offline heads-up before your recommend expires
- Family History Reminder - an opt-in nudge at random, spaced-out intervals
Desktop Scriptures
- Home
- Installation
- Word Study
- AI Integration
- Choosing an AI Setup
- Talk Prep
- Sync
- Landing Page Extras
- Journal
- Listen
- General Conference Reminder
- Temple Recommend Reminder
- Family History Reminder
Report an issue - or, in the app, Menu → Help → Report a Bug... (no GitHub account needed)