Show HN: AI·rete·RAG – a Rete rule engine decides, RAG explains why
Thread
Loading the complete thread in the background. This saved snapshot is available now. Refresh
Unofficial Hacker News client; not affiliated with Y Combinator.
Show HN: AI·rete·RAG – a Rete rule engine decides, RAG explains why
Loading the complete thread in the background. This saved snapshot is available now. Refresh
Unofficial Hacker News client; not affiliated with Y Combinator.
ZaharaHussain · · focus · HN ↗
[dead]
ZaharaHussain · · focus · HN ↗
[dead]
chews · · focus · HN ↗
ZaharaHussain · · focus · HN ↗
[dead]
nickphx · · focus · HN ↗
ZaharaHussain · · focus · HN ↗
[dead]
ZaharaHussain · · focus · HN ↗
ZaharaHussain · · focus · HN ↗
[dead]
lunatuna · · focus · HN ↗
ZaharaHussain · · focus · HN ↗
The procedure link is the part I'd most want you to try. A rule can carry a retrieval scope, so when the weather:cause rule fires, retrieval is narrowed to the storm-response procedures before the explanation is written. The operator gets the classification, the rules that produced it, and the procedure text that applies - grounded in your documents rather than a model's recollection.
Two honest limits for your case. A match binds one fact per type, so there are no aggregation operators - "12 outages within 5km in 10 minutes" has to be computed upstream and asserted as a fact, not expressed in the rule. And there are no temporal windows, which for CEP is a real gap; time has to arrive as a field on a fact. For per-decision reasoning over a state someone else assembled, it fits well. For raw event-stream correlation, the windowing engine still has to sit in front of it.
If you still work near this, I'd genuinely like to hear what the rule set looked like - outage classification is the case I'd build the next demo domain around.
ZaharaHussain · · focus · HN ↗
[dead]
ZaharaHussain · · focus · HN ↗
lunatuna · · focus · HN ↗
ZaharaHussain · · focus · HN ↗
[dead]
ZaharaHussain · · focus · HN ↗
[dead]
adityamishra241 · · focus · HN ↗
[dead]
ennepoai · · focus · HN ↗
[dead]
jimmySixDOF · · focus · HN ↗
ZaharaHussain · · focus · HN ↗
[dead]
awfm9 · · focus · HN ↗
ZaharaHussain · · focus · HN ↗
[dead]
ZaharaHussain · · focus · HN ↗
[dead]
lfdo0870 · · focus · HN ↗
ZaharaHussain · · focus · HN ↗
[dead]
aidiveyt · · focus · HN ↗
[dead]
fayehall_ai · · focus · HN ↗
[dead]
TokenLat · · focus · HN ↗
[dead]
keparlak · · focus · HN ↗
When presented with the correct information, the model used it without issue. What it couldn’t reliably do was decide which information was still valid.
I’m curious about versioning on your end. When a rule changes, what happens to decisions made under the old rule? If someone asks six months later, “Why was this application rejected?”, does the explanation refer to the rule version at the time of the decision, or to the current one? Does the RAG side know that a policy passage has become invalid, or could it retrieve the old document to explain a new decision?
ZaharaHussain · · focus · HN ↗
ZaharaHussain · · focus · HN ↗
[dead]
ZaharaHussain · · focus · HN ↗
[dead]
ZaharaHussain · · focus · HN ↗
[dead]
sohith_uv · · focus · HN ↗
[dead]