Architecture
System structure
Organisational principles, functional layers, invariants and tensions currently under exploration.
I. Principles
Structural principles
Frida's architecture rests on a set of principles that distinguish this project from standard generation systems. These principles are not implementation choices among others: they are constitutive of the project's intention.
| Principle | Description |
|---|---|
| Separation of generation / validation | Producing a response and evaluating its validity are two distinct processes. One does not subsume the other. |
| Hierarchised memory | Memorised traces are not equivalent. They are weighted according to their reliability, age and contextual relevance. |
| Explicit uncertainty | Every inference carries an estimate of its degree of certainty. This estimate is passed to the upper layer and can influence the decision to respond. |
| Suspension as a valid output | The system can — and must — suspend its response when the epistemic conditions are not satisfied. The absence of a response is a response. |
| Revisability | Past inferences can be called into question by new information. Revision leaves an explicit trace in the structured memory. |
| Longitudinal coherence | The system maintains coherence across exchanges over time. Contradictions with prior positions are detected and handled explicitly. |
II. Organisation
Layers and modules
The system is organised into three main layers, articulated by a central arbitration module. This organisation reflects the distinction between lower-level operations (memorisation, local interpretation) and higher-level operations (coherence, validation, response decision).
| Module | Main function | Status |
|---|---|---|
| Dialogue Layer | User interface. Reformulation, clarification of ambiguities, synthesis of the final response. | in progress |
| Arbitration Module | Evaluation of inference coherence. Decision to respond, reformulate or suspend. Explicit uncertainty. | design |
| Structured Memory | Hierarchised storage of contextual traces. Obsolescence and revision management. Reliability weighting. | in progress |
| Interpretation | Contextual analysis of inputs. Production of situated inferences. Revision based on new data. | design |
| Evidence & Traces | Hierarchisation of probative elements. Management of degrees of certainty. Traceability of inference sources. | design |
III. Invariants
System invariants
Invariants are the properties the system must maintain under all circumstances. They constitute a form of normative specification of what Frida is — and is not.
- Every response produced carries an estimate of its degree of certainty, available to the arbitration layer.
- No response is passed to the Dialogue Layer without having been evaluated by the Arbitration Module.
- Suspension of response is always preferable to producing a response whose validity falls below the defined threshold.
- Any revision of a prior inference leaves an explicit trace in the structured memory, with the justification for the revision.
- Memorised traces are weighted: their weight can be increased (confirmation) or decreased (partial refutation, obsolescence).
- Longitudinal coherence is verified before any response engaging a prior position of the system.
- Uncertainty is never concealed in the fluency of the response. It is named, or the response is suspended.
- The system distinguishes what it knows (reliable and verified trace), what it infers (derived from existing traces) and what it supposes (unverifiable extrapolation).
IV. Tensions and open questions
Problems currently under exploration
Frida does not claim to have resolved these questions. They constitute the heart of the ongoing work.
- Trace granularity. At what level of granularity should traces be memorised? What is the minimal unit of a relevant trace? How to hierarchise without losing contextual richness?
- Suspension threshold. How to determine the threshold below which a response must be suspended? Is this threshold fixed, contextual, or domain-dependent?
- Handling contradictions. When two memorised traces contradict each other, how to arbitrate without deciding arbitrarily? Should the contradiction be exposed to the user or handled silently?
- Computational cost of rigour. The separation between generation and validation, and longitudinal coherence checking, have a cost. How to maintain these requirements at scale?
- Evaluating understanding. How to measure that a system understands rather than generates? What evaluation criteria are relevant and non-circular?