Private
Public Access
1
0

Add AI categorization with Ollama: settings, auto-classify on sync/import, and manual classify from Transactions

Adds local LLM-based transaction categorization using Ollama:
- Settings UI to configure Ollama URL, model, confidence threshold
- Auto-categorization during bank sync and file import
- Manual "Classify Uncategorized" button on Transactions screen that respects active filters
- Payee default category learning loop for classified transactions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Catherine Renelle
2026-02-08 18:41:12 -05:00
parent 57d1051213
commit 1c7abb7ffc
18 changed files with 2423 additions and 3 deletions
@@ -0,0 +1,16 @@
namespace Purrse.Core.Models;
public class AiCategorizationSettings
{
public Guid Id { get; set; }
public Guid UserId { get; set; }
public bool IsEnabled { get; set; }
public string OllamaUrl { get; set; } = "http://localhost:11434";
public string ModelName { get; set; } = "llama3.1:8b";
public double ConfidenceThreshold { get; set; } = 0.7;
public int TimeoutSeconds { get; set; } = 30;
public bool UpdatePayeeDefaults { get; set; } = true;
public DateTime UpdatedAt { get; set; } = DateTime.UtcNow;
public User User { get; set; } = null!;
}
+1
View File
@@ -14,4 +14,5 @@ public class User
public ICollection<Account> Accounts { get; set; } = new List<Account>();
public ICollection<SyncConnection> SyncConnections { get; set; } = new List<SyncConnection>();
public BankSyncSettings? BankSyncSettings { get; set; }
public AiCategorizationSettings? AiCategorizationSettings { get; set; }
}