// // Persona.swift // Zyquo Local // // Author: Simon-Pierre Boucher // Mail: contact@spboucher.ai // import Foundation /// A reusable persona: system prompt + preferred model + parameters. struct Persona: Identifiable, Codable, Hashable, Sendable { var id: UUID var name: String var systemPrompt: String /// Preferred model repo ID; nil = whatever is loaded. var preferredModelID: String? var params: GenerationParams? init( id: UUID = UUID(), name: String, systemPrompt: String, preferredModelID: String? = nil, params: GenerationParams? = nil ) { self.id = id self.name = name self.systemPrompt = systemPrompt self.preferredModelID = preferredModelID self.params = params } }