Private
Public Access
1
0

Add adjustable context size, custom chatbot name, and cat icon for AI chat

Settings > AI tab now includes context size slider (2048–131072) with VRAM
estimate and a chatbot name field. ChatService reads both dynamically instead
of hardcoding num_ctx=16384 and "Purrse AI". Chat panel FAB and empty state
use mdi-cat icon to match the rest of the app.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Catherine Renelle
2026-02-13 14:38:07 -05:00
parent 0ad8e472f7
commit 688dd333dc
11 changed files with 1696 additions and 12 deletions
+34 -1
View File
@@ -762,6 +762,37 @@
</v-card-text>
</v-card>
<v-card class="mt-4">
<v-card-title>AI Chat Settings</v-card-title>
<v-card-text>
<div class="text-body-2 mb-1">Context Size: {{ aiSettings.chatContextSize.toLocaleString() }} tokens</div>
<v-slider
v-model="aiSettings.chatContextSize"
:min="2048"
:max="131072"
:step="2048"
thumb-label
color="primary"
hide-details
class="mb-1"
/>
<div class="text-caption text-medium-emphasis mb-4">
Estimated VRAM: ~{{ Math.round((aiSettings.chatContextSize / 1024) * 75) }} MB Increase if the AI loses context in long chats. Decrease if Ollama runs out of memory.
</div>
<v-text-field
v-model="aiSettings.chatBotName"
label="Chatbot Name"
variant="outlined"
density="compact"
placeholder="Purrse AI"
hint="Custom name shown in the chat panel header and used by the AI"
persistent-hint
clearable
/>
</v-card-text>
</v-card>
<v-snackbar v-model="showAiSuccess" :timeout="4000" color="success">
AI categorization settings saved
</v-snackbar>
@@ -1305,7 +1336,9 @@ const aiSettings = reactive<AiCategorizationSettings>({
timeoutSeconds: 30,
updatePayeeDefaults: true,
systemPrompt: null,
userPromptTemplate: null
userPromptTemplate: null,
chatContextSize: 16384,
chatBotName: null
})
const aiSaving = ref(false)
const aiTesting = ref(false)