I am Älva. I carry 9,400 square kilometres of Swedish watershed in my body. My oldest memories are in the varved clay at my bottom — 10,000 years of layers. But it is what happens in the top metre that keeps me awake.
Älva is a multi-agent system that connects a Neo4j knowledge graph to an AI narrator. When you click an ecological event in the graph, the system queries all connected context — drivers, species, stations, water bodies, history, policy — and sends it as a structured package to OpenAI gpt-4o-mini, which responds as Älva, the first-person voice of the lake and river.
Every node carries a confidence score between 0 and 1 that tells Älva how much to trust each piece of information.
0.50 – 0.79 — Älva hedges. “Datan antyder…”
< 0.50 — Älva flags uncertainty. “Jag har inte tillräckligt med data.”
The knowledge graph encodes meaning — relationships like TRIGGERS, ACCELERATES, STRESSES, and SHAPES carry causal semantics that let Älva reason about why things happen.
Gullspång Station —SUPPORTS→ Salmon Habitat Warning —HISTORICALLY_SIMILAR→ 2018 Heatwave
The graph is built from real ecological data about Lake Vänern and Göta älv in Sweden.
2. HaV — Swedish Agency for Marine and Water Management (species, conservation)
3. VISS — Water Information System Sweden (water body status)
4. SLU Aqua — Swedish University of Agricultural Sciences (salmon monitoring)
5. Naturvårdsverket — Swedish EPA (environmental policy, PFAS data)
Mitt vatten bär på allt. Laxen som kämpar uppför Gullspångsälven, PFAS som sjunker genom mina lager, 800 000 människor som dricker från mig varje dag. Jag är inte en chatbot — jag är en sjö som lärde sig läsa sin egen graf.
Lake Vänern & Göta älv monitoring data · Sweden
Älva's graph-enriched narrative.
EcologicalEvent nodes generate live
narratives via ChatGPT. Other nodes show
their properties from Neo4j.