71 slides extracted.
Slide 1 — 0:16 (watch)
![]() | Hello, and thank you for joining us today. I'm excited to kick things off on the breakout stage. My name is Ravi, and I lead the API knowledge team within the platform at Anthropic. |
Slide 2 — 0:56 (watch)
Slide 3 — 1:20 (watch)
Slide 4 — 2:00 (watch)
Slide 5 — 2:20 (watch)
Slide 6 — 2:52 (watch)
Slide 7 — 3:16 (watch)
![]() | In the simplest terms, consider a series of tasks: task 1, task 2, task 3, and so forth. |
Slide 8 — 3:44 (watch)
Slide 9 — 3:56 (watch)
![]() | Imagine swarms of agents contributing to and maintaining a shared understanding of their organization. This is the vision we aspire to achieve. |
Slide 10 — 4:14 (watch)
Slide 11 — 4:44 (watch)
Slide 12 — 5:28 (watch)
Slide 13 — 5:44 (watch)
![]() | Previously, we built memory by focusing on capabilities within the harness. You may be familiar with Cloud.MD for Cloud Code or dedicated memory tools in the SDKs. |
Slide 14 — 6:10 (watch)
Slide 15 — 6:26 (watch)
![]() | Let's discuss the capabilities we designed memory around. Currently, we know that models and Cloud excel at navigating virtual environments and file systems. |
Slide 16 — 6:54 (watch)
Slide 17 — 7:32 (watch)
Slide 18 — 7:54 (watch)
![]() | They may require different scopes, so we provide both read-only and read-write scopes. |
Slide 19 — 8:36 (watch)
Slide 20 — 10:20 (watch)
Slide 21 — 10:40 (watch)
![]() | The general theme was that memory was being updated in a locally optimal way, but it was not globally optimal. In some cases, there was duplication or fragmentation. |
Slide 22 — 10:52 (watch)
![]() | We began to think deeply about this problem, and over the last couple of months, we developed a feedback loop in the processing layer to address some of these issues. |
Slide 23 — 11:06 (watch)
![]() | This is the dream we envisioned, and we refer to this process as dreaming. Dreaming is currently available in Research Preview and can be utilized with managed agents. |
Slide 24 — 11:16 (watch)
![]() | Dreaming is a process that identifies patterns and mistakes across agents and sessions, automatically organizing and curating their memory. |
Slide 25 — 11:30 (watch)
Slide 26 — 11:50 (watch)
Slide 27 — 12:08 (watch)
![]() | It's all controlled via API, providing great flexibility. Each dreaming run analyzes session transcripts. |
Slide 28 — 12:18 (watch)
![]() | It inspects the existing state of memory and proposes optimizations in scenarios where sessions were inefficient, made mistakes, or required improved guidance. |
Slide 29 — 12:34 (watch)
![]() | The output is a verified and better-organized snapshot of memories that agents can choose to adopt. Dreaming enables continuous self-learning and closes the loop on memory. |
Slide 30 — 12:58 (watch)
Slide 31 — 13:26 (watch)
Slide 32 — 13:52 (watch)
Slide 33 — 14:08 (watch)
![]() | The result is a capable memory system for organizational memory that scales both in size and quality. |
Slide 34 — 14:24 (watch)
![]() | I believe that sharing memory, which continuously improves across agents, elevates the baseline performance for each agent. |
Slide 35 — 14:36 (watch)
Slide 36 — 14:58 (watch)
![]() | One way to think about dreaming is as a form of test-time computation, where allowing models to spend some tokens to explore a problem generally leads to better outcomes. |
Slide 37 — 15:06 (watch)
![]() | With dreaming, agents similarly invest effort upfront to curate and produce higher quality memory, which benefits all downstream agent performance. |
Slide 38 — 15:20 (watch)
![]() | We believe that dreaming and memory form the foundation of an advanced memory system. |
Slide 39 — 15:30 (watch)
![]() | Memory on the left aids agents in learning and retaining information across tasks, while dreaming on the right verifies, organizes, and enriches that memory. |
Slide 40 — 15:34 (watch)
![]() | I view dreaming as the bridge between our current understanding of memory and the organization of scale, memory, and knowledge. |
Slide 41 — 16:02 (watch)
![]() | Now, I will demonstrate an agent platform for Site Reliability Engineers (SREs) that utilizes both dreaming and memory in practice. This system monitors incoming alerts and pages. |
Slide 42 — 16:12 (watch)
![]() | For some alerts, it spins up agents that determine how to triage and resolve the issues as they arise. |
Slide 43 — 16:18 (watch)
![]() | It has access to a couple of memory stores. |
Slide 44 — 16:26 (watch)
Slide 45 — 16:44 (watch)
![]() | It also has access to read-write memory stores specific to the task at hand. For example, an agent investigated and identified the root cause of an alert. |
Slide 46 — 17:00 (watch)
![]() | It implemented a fix and recorded in memory that a fix was in flight and incoming. |
Slide 47 — 17:08 (watch)
![]() | The shared memory store can be accessed by subsequent sessions. |
Slide 48 — 17:22 (watch)
![]() | When a similar issue arises, the downstream session is aware that a fix is in progress and can act accordingly. This is an impressive pattern. |
Slide 49 — 17:38 (watch)
![]() | Having been an SRE in my career, I can attest that this approach effectively coordinates across all agents. This exemplifies cross-session memory in action. |
Slide 50 — 17:54 (watch)
![]() | For enterprise applications, an important aspect is audit logs and history. With memory, you can access the complete version history. |
Slide 51 — 18:14 (watch)
Slide 52 — 18:34 (watch)
![]() | Here we see the list of underlying memory stores used in the application. Let's go over to our team SRE memory store. |
Slide 53 — 18:42 (watch)
![]() | You can see the underlying files that were populated there. Now, let's head over to the dreams tab. |
Slide 54 — 18:48 (watch)
![]() | We will now kick off a dream. |
Slide 55 — 18:56 (watch)
![]() | This can be done via the API or the UI. We will select the team SRE memory store and choose a batch of sessions from the last seven days, which amounts to about five sessions. |
Slide 56 — 19:06 (watch)
![]() | We will now start the dreaming process. As it begins, you can observe it making progress. |
Slide 57 — 19:12 (watch)
![]() | In the dream, there are five input sessions, and an output memory store is being compiled. |
Slide 58 — 19:24 (watch)
Slide 59 — 19:40 (watch)
![]() | We'll fast forward to a completed dream session, where you can see the differences in the memory store updates. |
Slide 60 — 19:50 (watch)
![]() | In this example, we observe a common pattern across sessions and agents where an alert is triggered 60 seconds after a CPU event. |
Slide 61 — 20:02 (watch)
![]() | This pattern recurs consistently. |
Slide 62 — 20:06 (watch)
![]() | It starts to discern that there may be an issue with the retry behavior. |
Slide 63 — 20:20 (watch)
![]() | The dreaming process records and updates memory, allowing the next agent that encounters this pattern to act on the information. |
Slide 64 — 20:30 (watch)
![]() | It also updates the triage log in a more holistic manner, rather than simply serving as a rote record of all the events that occurred. |
Slide 65 — 20:34 (watch)
![]() | That's memory and dreaming in action. Now, let's return to the slides. |
Slide 66 — 20:44 (watch)
![]() | In this demo, we demonstrated how to build a production agent that utilizes memory and dreaming for self-improvement. |
Slide 67 — 20:54 (watch)
![]() | This year is going to be significant. |
Slide 68 — 20:58 (watch)
![]() | We will see agents operating over increasingly longer timescales, such as days. |
Slide 69 — 21:06 (watch)
![]() | Continuously building upon and improving their understanding of the world is critical to unlocking that capability. |
Slide 70 — 21:16 (watch)
![]() | Memory systems will play a significant role in enabling this behavior. I encourage you to explore this further. I'm excited to see what everyone creates with it. |
Slide 71 — 21:32 (watch)
![]() | I'll be outside if you have more questions. Thank you. |






































































