We wanted to address the need for persistent and precise AI agent memory systems to provide a specialized workflow in any scenario. Since we accepted the CBRE challenge, we chose to work with the example of a property manager juggling multiple tenants and analyzing their activity.
Rather than treating all data as equal, our architecture assigns specific "Operational Weights" to information—such as prioritizing high-stakes legal and financial data over routine maintenance logs—to ensure the agent remains focused on the most critical business variables. Each record is assigned a Salience Score calculated by importance, relevance, status, and updates with new information. Each record also has a set decay rate, which minimizes the salience scores over time; the speed at which it occurs is determined by the importance of the record.
Records that are deemed irrelevant will be pruned, allowing the agent to focus on the most recent and important data when making decisions and offering assistance.
The graph structure of interconnected records allows the agent to search along the relationships to find relevant information for queries about specific records. We integrated ChromaDB for vector-based similarity searches alongside a structured Markdown Vault, which allows for both machine efficiency and human-readable audits.
We used Obsidian to develop a wiki of all the records and demonstrate their interconnected relationships using hyperlinks between files. The markdown format seamlessly allows for both human users and LLM agents to easily interpret and modify the information provided.
Our agent that makes use of this system is Gemma 3 via Ollama.
For demonstration purposes, we developed a simple frontend using React, and a backend using FastAPI.
- Run times are slow on local machine!
- Trying to anticitpate the needs of users when designing the "schema"
The amount of work we got done with just two people!
Did a lot of research about unique data storage system such as graph dbs. Also learned about nlp and persisting and pruning information over time. First time working with Obsidian and Ollama.
Speed up processing, integrate with existing CRMs, adapt to user feedback, evaluate performance and adapt, etc.