1<!DOCTYPE html><!-- Last Published: Thu Sep 24 2026 04:29:01 GMT+0000 (Coordinated Universal Time) --><html data-wf-domain="memories.ai" data-wf-page="6a26a66c0461307a4feed462" data-wf-site="6a26a66c0461307a4feed480" lang="en"><head><meta charset="utf-8"/><link href="https://cdn.prod.website-files.com" rel="preconnect" crossorigin="anonymous"/><title>Memories.ai â AI Video Analysis & Visual Memory Platform</title><meta content="Memories.ai is an AI video intelligence platform for large-scale search, summarization, and multimodal understanding. Build faster workflows with contextual memory, timeline insights, and enterprise-ready video automation." name="description"/><meta content="Memories.ai â AI Video Analysis & Visual Memory Platform" property="og:title"/><meta content="Memories.ai is an AI video intelligence platform for large-scale search, summarization, and multimodal understanding. Build faster workflows with contextual memory, timeline insights, and enterprise-ready video automation." property="og:description"/><meta content="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a4bf1c8f79ac056f4b6214f_OG%20Image.jpg" property="og:image"/><meta content="Memories.ai â AI Video Analysis & Visual Memory Platform" name="twitter:title"/><meta content="Memories.ai is an AI video intelligence platform for large-scale search, summarization, and multimodal understanding. Build faster workflows with contextual memory, timeline insights, and enterprise-ready video automation." name="twitter:description"/><meta property="og:type" content="website"/><meta content="summary_large_image" name="twitter:card"/><meta content="width=device-width, initial-scale=1" name="viewport"/><link href="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/css/memories-ai-878938d4220f4712af66b42526e.webflow.shared.a18ba6b63.min.css" rel="stylesheet" type="text/css" integrity="sha384-oYumtj+8NU2GUXmkRQcvsdFzqa/vLyJvsUKtLYPoKXUcibXvkay87zYzNn5j0XR0" crossorigin="anonymous"/><style>html.w-mod-js:not(.w-mod-ix3) :is([data-wf-component-id="e6326f33-0d5d-6050-63f5-6afd9a87386b"]:is(.services_item), [data-wf-component-id="e6326f33-0d5d-6050-63f5-6afd9a87386b"] :is(.services_item)) {visibility: hidden !important;}</style>
1<script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script>
1<link href="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a4bf166e05e8db5fcff4ea8_Favicon-black.png" rel="icon" type="image/png" sizes="32x32" media="(prefers-color-scheme: light)"/><link href="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a4bf17007781c28ab031e4a_Favicon-white.png" rel="icon" type="image/png" sizes="32x32" media="(prefers-color-scheme: dark)"/><link href="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a4bf1666d260986ce3901c6_Favicon-black.png" rel="icon" type="image/png" sizes="48x48"/><link href="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a4bf1772d5947caa7685897_WebClip.jpg" rel="apple-touch-icon" sizes="180x180"/><link href="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a4bf177b2183405105b044e_WebClip.jpg" rel="icon" type="image/png" sizes="192x192"/><link href="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a4bf1776d260986ce3902db_WebClip.jpg" rel="icon" type="image/png" sizes="512x512"/><link href="https://memories.ai" rel="canonical"/>
1<script type="application/ld+json"> 2{ 3 "@context": "https://schema.org", 4 "@graph": [ 5 { 6 "@type": "WebSite", 7 "@id": "https://memories.ai/#website", 8 "url": "https://memories.ai/", 9 "name": "Memories.ai", 10 "alternateName": "Memories.ai - AI Video Analysis Platform", 11 "description": "AI video analysis platform powered by the Large Visual Memory Model (LVMM). Analyze, search, and understand video content at scale.", 12 "inLanguage": "en", 13 "publisher": { 14 "@id": "https://memories.ai/#organization" 15 } 16 }, 17 { 18 "@type": "Organization", 19 "@id": "https://memories.ai/#organization", 20 "name": "Memories.ai", 21 "alternateName": "Memories AI", 22 "url": "https://memories.ai/", 23 "logo": { 24 "@type": "ImageObject", 25 "url": "https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a29473b61d39d62bcf807bb_Logotype.svg", 26 "width": 512, 27 "height": 512 28 }, 29 "image": "https://resource.memories.ai/public/twitter-card.png", 30 "description": "Memories.ai develops the Large Visual Memory Model (LVMM) â AI infrastructure for persistent, structured, searchable visual memory. Enterprise video intelligence for security, media, manufacturing, and device OEMs.", 31 "slogan": "The multimodal memory infrastructure for AI", 32 "foundingDate": "2023", 33 "areaServed": "Worldwide", 34 "sameAs": [ 35 "https://www.linkedin.com/company/memoriesai/", 36 "https://x.com/memories_ai", 37 "https://www.youtube.com/@memories_dot_ai", 38 "https://www.tiktok.com/@memories_dot_ai", 39 "https://www.instagram.com/memories_dot_ai", 40 "https://discord.gg/dAqjfdJaQz", 41 "https://www.producthunt.com/products/memories-ai", 42 "https://github.com/Memories-ai-labs" 43 ], 44 "contactPoint": [ 45 { 46 "@type": "ContactPoint", 47 "contactType": "sales", 48 "email": "[email protected]", 49 "url": "https://memories.ai/contact-sales", 50 "availableLanguage": "en" 51 } 52 ], 53 "knowsAbout": [ 54 "AI Video Analysis", 55 "Large Visual Memory Model", 56 "Multimodal AI", 57 "Video Understanding", 58 "Scene Detection", 59 "Video OCR", 60 "Computer Vision", 61 "Video Intelligence" 62 ] 63 }, 64 { 65 "@type": "SoftwareApplication", 66 "@id": "https://memories.ai/#software", 67 "name": "Memories.ai", 68 "applicationCategory": "BusinessApplication", 69 "applicationSubCategory": "AI Video Analysis", 70 "operatingSystem": "Web", 71 "url": "https://memories.ai/", 72 "description": "AI-powered video analysis platform. Extract transcripts, summaries, key moments, and structured insights from any video. Supports YouTube, TikTok, Instagram, and 15+ platforms.", 73 "offers": { 74 "@type": "Offer", 75 "price": "0", 76 "priceCurrency": "USD", 77 "description": "Free tier available" 78 }, 79 "featureList": [ 80 "AI Video Analysis", 81 "Video Transcription", 82 "Video Summarization", 83 "Key Moment Detection", 84 "Cross-Platform Support (15+ platforms)", 85 "Natural Language Video Search", 86 "Real-Time Threat Detection", 87 "Human Re-Identification", 88 "Enterprise API" 89 ], 90 "screenshot": "https://resource.memories.ai/public/twitter-card.png", 91 "provider": { 92 "@id": "https://memories.ai/#organization" 93 } 94 }, 95 { 96 "@type": "FAQPage", 97 "@id": "https://memories.ai/#faq", 98 "mainEntity": [ 99 { 100 "@type": "Question", 101 "name": "What is AI video analysis and how does Memories.ai do it?", 102 "acceptedAnswer": { 103 "@type": "Answer", 104 "text": "AI video analysis uses machine learning to automatically interpret video content â identifying objects, understanding context, extracting speech, and detecting key moments. Memories.ai goes beyond single-clip analysis with its Large Visual Memory Model (LVMM), which maintains persistent context across videos for cross-video search, pattern recognition, and long-term visual memory." 105 } 106 }, 107 { 108 "@type": "Question", 109 "name": "Is Memories.ai free to use?",
110 "acceptedAnswer": { 111 "@type": "Answer", 112 "text": "Yes, basic video analysis is free with no signup required. For higher volume, team collaboration, and enterprise API access, paid plans are available." 113 } 114 }, 115 { 116 "@type": "Question", 117 "name": "How is Memories.ai different from ChatGPT or Gemini for video?", 118 "acceptedAnswer": { 119 "@type": "Answer", 120 "text": "ChatGPT and Gemini have limited video context windows. Memories.ai is purpose-built for video analysis with unlimited video context, powered by the Large Visual Memory Model (LVMM). Independent benchmarks show Memories.ai outperforms both Gemini and ChatGPT on video understanding tasks." 121 } 122 }, 123 { 124 "@type": "Question", 125 "name": "What enterprise use cases does Memories.ai support?", 126 "acceptedAnswer": { 127 "@type": "Answer", 128 "text": "Enterprise use cases include real-time security threat detection, human re-identification across cameras, slip and fall detection, customer service monitoring, sports video analysis, and content intelligence at scale. Memories.ai is trusted by Qualcomm and Samsung for production-grade video intelligence." 129 } 130 }, 131 { 132 "@type": "Question", 133 "name": "What is the Large Visual Memory Model (LVMM)?", 134 "acceptedAnswer": { 135 "@type": "Answer", 136 "text": "LVMM is Memories.ai's core technology â a visual memory architecture that gives AI persistent, structured, searchable memory across video content. Unlike frame-by-frame analysis, LVMM maintains long-term context, enabling cross-video search, temporal pattern recognition, and accumulated visual understanding over time." 137 } 138 } 139 ] 140 } 141 ] 142} 143</script>
143<link 144 rel="stylesheet" 145 href="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css" 146/> 147 148<!-- Keep this css code to improve the font quality--> 149<style> 150 * { 151 -webkit-font-smoothing: antialiased; 152 -moz-osx-font-smoothing: grayscale; 153 -o-font-smoothing: antialiased; 154} 155 156 :root { 157 --plyr-color-main: var(--c-violet-300); 158} 159 160[text-letters-animation] .char 161{ 162 opacity: 0.3; 163} 164 165[text-letters-animation] 166{ 167 opacity: 0.07; 168 transition: opacity 0.35s ease-in-out; 169} 170 171[text-letters-animation][data-letters-split="true"]{ 172 opacity: 1; 173} 174 175</style> 176 177<meta name="twitter:site" content="@memories_ai"> 178<meta name="twitter:creator" content="@memories_ai"> 179<meta name="twitter:site:id" content="1914196624106303488"> 180<meta name="twitter:creator:id" content="1914196624106303488"> 181<link rel="alternate" type="text/plain" title="LLMs.txt" href="https://memories.ai/llms.txt"> 182<link rel="alternate" type="text/plain" title="LLMs-full.txt" href="https://memories.ai/llms-full.txt"> 183 184<!-- Global structured data (Organization + WebSite) â mirrors code JsonLdGlobal -->
185<script type="application/ld+json">[{"@context":"https://schema.org","@type":"Organization","@id":"https://memories.ai/#organization","name":"Memories.ai","url":"https://memories.ai","logo":{"@type":"ImageObject","url":"https://memories.ai/images/logo.svg","width":512,"height":512},"image":"https://resource.memories.ai/public/twitter-card.png","description":"Memories.ai is an AI video analysis platform that uses multimodal AI with long-term visual memory to help teams see, remember, and understand video content at scale. The platform processes videos from 20+ social and video platforms, providing scene detection, OCR, object recognition, and timestamped summaries.","foundingDate":"2023","sameAs":["https://www.linkedin.com/company/memoriesai/","https://x.com/memories_ai","https://www.youtube.com/@memoriesai"],"contactPoint":[{"@type":"ContactPoint","contactType":"sales","email":"[email protected]","availableLanguage":"en"},{"@type":"ContactPoint","contactType":"customer support","email":"[email protected]","availableLanguage":"en"}],"knowsAbout":["AI Video Analysis","Multimodal AI","Video Understanding","Scene Detection","Video OCR","Computer Vision","Large Visual Memory Models"]},{"@context":"https://schema.org","@type":"WebSite","@id":"https://memories.ai/#website","url":"https://memories.ai","name":"Memories.ai","description":"AI video analysis platform for scene detection, OCR, object recognition, and timestamped summaries across 20+ video platforms.","publisher":{"@id":"https://memories.ai/#organization"}}]</script>
185<link rel="stylesheet" href="https://cdn.plyr.io/3.7.8/plyr.css" />
186<script src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F689e5ba67671442434f3ca35%2F6a63289dbfe03765b7b7b10f%2Fgoogleanalytics-1.0.0.js" type="text/javascript"></script>
186<script src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F689e5ba67671442434f3ca35%2F6a63289d3380d71fb4da3f42%2Ftwitterpixel-1.0.0.js" type="text/javascript"></script>
186<script src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F689e5ba67671442434f3ca35%2F6a63289df76f91bbbb91665e%2Ftiktokpixel-1.0.0.js" type="text/javascript"></script>
186</head><body><div class="page-wrapper"><div class="global-styles"><div class="w-embed"><style> 187 :root { 188 --font-from: 18; 189 --font-to: 20; 190 --vw-from: calc(1960 / 100); 191 --vw-to: calc(2480 / 100); 192 --coefficient: calc((var(--font-to) - var(--font-from)) / (var(--vw-to) - var(--vw-from))); 193 --base: calc((var(--font-from) - var(--vw-from) * var(--coefficient)) / 16); 194 } 195 196 html { 197 font-size: calc(var(--base) * 1rem + var(--coefficient) * 1vw); 198 } 199 200 @media screen and (max-width: 1960px) { 201 :root { 202 --font-from: 16; 203 --font-to: 18; 204 --vw-from: calc(1440 / 100); 205 --vw-to: calc(1960 / 100); 206 } 207 } 208 209 @media screen and (max-width: 1440px) { 210 :root { 211 --font-from: 16; 212 --font-to: 16; 213 --vw-from: calc(479 / 100); 214 --vw-to: calc(1440 / 100); 215 } 216 } 217 218 @media screen and (max-width: 479px) { 219 :root { 220 --font-from: 16; 221 --font-to: 16; 222 --vw-from: calc(1 / 100); 223 --vw-to: calc(479 / 100); 224 } 225 } 226</style></div><div class="style-overrides w-embed"><style> 227 228/* Ensure all elements inherit the color from its parent */ 229a, 230.w-input, 231.w-select, 232.w-tab-link, 233.w-nav-link, 234.w-nav-brand, 235.w-dropdown-btn, 236.w-dropdown-toggle, 237.w-slider-arrow-left, 238.w-slider-arrow-right, 239.w-dropdown-link { 240 color: inherit; 241 text-decoration: inherit; 242 font-size: inherit; 243} 244
245/* Focus state style for keyboard navigation for the focusable elements */ 246*[tabindex]:focus-visible, 247 input[type="file"]:focus-visible { 248 outline: 0.125rem solid #4d65ff; 249 outline-offset: 0.125rem; 250} 251 252/* Get rid of top margin on first element in any rich text element */ 253.w-richtext > :not(div):first-child, .w-richtext > div:first-child > :first-child { 254 margin-top: 0 !important; 255} 256 257/* Get rid of bottom margin on last element in any rich text element */ 258.w-richtext>:last-child, .w-richtext ol li:last-child, .w-richtext ul li:last-child { 259 margin-bottom: 0 !important; 260} 261 262/* Prevent all click and hover interaction with an element */ 263.pointer-events-off { 264 pointer-events: none; 265} 266 267/* Enables all click and hover interaction with an element */ 268.pointer-events-on { 269 pointer-events: auto; 270} 271 272/* Create a class of .div-square which maintains a 1:1 dimension of a div */ 273.div-square::after { 274 content: ""; 275 display: block; 276 padding-bottom: 100%; 277} 278 279/* Make sure containers never lose their center alignment */ 280.container-medium,.container-small, .container-large { 281 margin-right: auto !important; 282 margin-left: auto !important; 283} 284 285 286/* Apply "..." after 3 lines of text */ 287.text-style-3lines { 288 display: -webkit-box; 289 overflow: hidden; 290 -webkit-line-clamp: 3; 291 -webkit-box-orient: vertical; 292} 293 294/* Apply "..." after 2 lines of text */ 295.text-style-2lines { 296 display: -webkit-box; 297 overflow: hidden; 298 -webkit-line-clamp: 2; 299 -webkit-box-orient: vertical; 300} 301 302/* Adds inline flex display */ 303.display-inlineflex { 304 display: inline-flex; 305} 306 307/* These classes are never overwritten */ 308.hide { 309 display: none !important; 310} 311 312/* Remove default Webflow chevron from form select */ 313select{ 314 -webkit-appearance:none; 315} 316 317 318@media screen and (max-width: 991px) { 319 .hide, .hide-tablet { 320 display: none !important; 321 } 322} 323 @media screen and (max-width: 767px) { 324 .hide-mobile-landscape{ 325 display: none !important; 326 } 327} 328 @media screen and (max-width: 479px) { 329 .hide-mobile{ 330 display: none !important; 331 } 332} 333 334.margin-0 { 335 margin: 0rem !important; 336} 337 338.padding-0 { 339 padding: 0rem !important; 340} 341 342.spacing-clean { 343padding: 0rem !important; 344margin: 0rem !important; 345} 346 347.margin-top { 348 margin-right: 0rem !important; 349 margin-bottom: 0rem !important; 350 margin-left: 0rem !important; 351} 352 353.padding-top { 354 padding-right: 0rem !important; 355 padding-bottom: 0rem !important; 356 padding-left: 0rem !important; 357} 358 359.margin-right { 360 margin-top: 0rem !important; 361 margin-bottom: 0rem !important; 362 margin-left: 0rem !important; 363} 364 365.padding-right { 366 padding-top: 0rem !important; 367 padding-bottom: 0rem !important; 368 padding-left: 0rem !important; 369} 370 371.margin-bottom { 372 margin-top: 0rem !important; 373 margin-right: 0rem !important; 374 margin-left: 0rem !important; 375} 376 377.padding-bottom { 378 padding-top: 0rem !important; 379 padding-right: 0rem !important; 380 padding-left: 0rem !important; 381} 382 383.margin-left { 384 margin-top: 0rem !important; 385 margin-right: 0rem !important; 386 margin-bottom: 0rem !important; 387} 388 389.padding-left { 390 padding-top: 0rem !important; 391 padding-right: 0rem !important; 392 padding-bottom: 0rem !important; 393} 394 395.margin-horizontal { 396 margin-top: 0rem !important; 397 margin-bottom: 0rem !important; 398} 399 400.padding-horizontal { 401 padding-top: 0rem !important; 402 padding-bottom: 0rem !important; 403} 404 405.margin-vertical { 406 margin-right: 0rem !important; 407 margin-left: 0rem !important; 408} 409 410.padding-vertical { 411 padding-right: 0rem !important; 412 padding-left: 0rem !important; 413} 414 415/* Apply "..." at 100% width */ 416.truncate-width { 417 width: 100%; 418 white-space: nowrap; 419 overflow: hidden; 420 text-overflow: ellipsis; 421} 422/* Removes native scrollbar */ 423.no-scrollbar { 424 -ms-overflow-style: none; 425 overflow: -moz-scrollbars-none; 426} 427 428.no-scrollbar::-webkit-scrollbar {
429 display: none; 430} 431</style></div><div class="color-schemes w-embed"><style> 432/* Color Schemes Controls*/ 433<meta name="relume-color-schemes" content="false"/> 434 435 .color-scheme-1 { 436/*All sections should point to Color Scheme 1*/ 437 438 } 439 440 .color-scheme-2 { 441 --color-scheme-1--text: var(--color-scheme-2--text); 442 --color-scheme-1--background: var(--color-scheme-2--background); 443 --color-scheme-1--foreground: var(--color-scheme-2--foreground); 444 --color-scheme-1--border: var(--color-scheme-2--border); 445 --color-scheme-1--accent: var(--color-scheme-2--accent); 446 } 447 448 .color-scheme-3 { 449 --color-scheme-1--text: var(--color-scheme-3--text); 450 --color-scheme-1--background: var(--color-scheme-3--background); 451 --color-scheme-1--foreground: var(--color-scheme-3--foreground); 452 --color-scheme-1--border: var(--color-scheme-3--border); 453 --color-scheme-1--accent: var(--color-scheme-3--accent); 454 } 455 456 .color-scheme-4 { 457 --color-scheme-1--text: var(--color-scheme-4--text); 458 --color-scheme-1--background: var(--color-scheme-4--background); 459 --color-scheme-1--foreground: var(--color-scheme-4--foreground); 460 --color-scheme-1--border: var(--color-scheme-4--border); 461 --color-scheme-1--accent: var(--color-scheme-4--accent); 462 } 463 464 .color-scheme-5 { 465 --color-scheme-1--text: var(--color-scheme-5--text); 466 --color-scheme-1--background: var(--color-scheme-5--background); 467 --color-scheme-1--foreground: var(--color-scheme-5--foreground); 468 --color-scheme-1--border: var(--color-scheme-5--border); 469 --color-scheme-1--accent: var(--color-scheme-5--accent); 470 } 471 472 .color-scheme-6 { 473 --color-scheme-1--text: var(--color-scheme-6--text); 474 --color-scheme-1--background: var(--color-scheme-6--background); 475 --color-scheme-1--foreground: var(--color-scheme-6--foreground); 476 --color-scheme-1--border: var(--color-scheme-6--border); 477 --color-scheme-1--accent: var(--color-scheme-6--accent); 478 } 479 480 .color-scheme-7 { 481 --color-scheme-1--text: var(--color-scheme-7--text); 482 --color-scheme-1--background: var(--color-scheme-7--background); 483 --color-scheme-1--foreground: var(--color-scheme-7--foreground); 484 --color-scheme-1--border: var(--color-scheme-7--border); 485 --color-scheme-1--accent: var(--color-scheme-7--accent); 486 } 487 488 .color-scheme-8 { 489 --color-scheme-1--text: var(--color-scheme-8--text); 490 --color-scheme-1--background: var(--color-scheme-8--background); 491 --color-scheme-1--foreground: var(--color-scheme-8--foreground); 492 --color-scheme-1--border: var(--color-scheme-8--border); 493 --color-scheme-1--accent: var(--color-scheme-8--accent); 494 } 495 496 .color-scheme-9 { 497 --color-scheme-1--text: var(--color-scheme-9--text); 498 --color-scheme-1--background: var(--color-scheme-9--background); 499 --color-scheme-1--foreground: var(--color-scheme-9--foreground); 500 --color-scheme-1--border: var(--color-scheme-9--border); 501 --color-scheme-1--accent: var(--color-scheme-9--accent); 502 } 503 504 .color-scheme-10 { 505 --color-scheme-1--text: var(--color-scheme-10--text); 506 --color-scheme-1--background: var(--color-scheme-10--background); 507 --color-scheme-1--foreground: var(--color-scheme-10--foreground); 508 --color-scheme-1--border: var(--color-scheme-10--border); 509 --color-scheme-1--accent: var(--color-scheme-10--accent); 510 } 511 512/* Inherit slider dot colors */ 513.w-slider-dot { 514 background-color: var(--color-scheme-1--text); 515 opacity: 0.20; 516} 517 518.w-slider-dot.w-active { 519 background-color: var(--color-scheme-1--text); 520 opacity: 1; 521} 522 523/* Override .w-slider-nav-invert styles */ 524.w-slider-nav-invert .w-slider-dot { 525 background-color: var(--color-scheme-1--text) !important; 526 opacity: 0.20 !important; 527} 528 529.w-slider-nav-invert .w-slider-dot.w-active { 530 background-color: var(--color-scheme-1--text) !important; 531 opacity: 1 !important; 532} 533 534</style></div><div class="w-embed"><style> 535 536 /* Main buttons */ 537 /* .btn[data-wf--btn--variant="default"]{ 538 background: radial-gradient(135.05% 1230.1% at 50% 112.77%, #E1D6C9 12.02%, #B5D996 18.15%, #85CDC9 22.49%, #7A7BDC 33.67%, #3A167B 50.47%, #231D2E 50.73%); 539 } */ 540
541/* @keyframes button-gradient-rotate { 542 from { 543 transform: rotate(0deg); 544 } 545 546 to { 547 transform: rotate(360deg); 548 } 549} */ 550 551 .button-gradient{ 552 background: linear-gradient( 553 to top right, 554 #231D2E 0%, 555 #231D2E 35%, 556 #3A167B 43%, 557 #7A7BDC 49%, 558 #85CDC9 53%, 559 #B5D996 56%, 560 #E1D6C9 60%, 561 #B5D996 64%, 562 #85CDC9 67%, 563 #7A7BDC 71%, 564 #3A167B 78%, 565 #231D2E 86%, 566 #231D2E 100% 567 ); 568 569 } 570 571 /* .btn.is-pricing{ 572 background: radial-gradient(135.05% 1230.1% at 50% 112.77%, #E1D6C9 12.02%, #B5D996 18.15%, #85CDC9 22.49%, #7A7BDC 33.67%, #3A167B 50.47%, #231D2E 50.73%); 573 } */ 574 575 .btn[data-wf--btn--variant="primary"]{ 576 background: radial-gradient(104.63% 141.12% at 51.02% 67.74%, #7A7BDC 0%, #3A167B 73.08%); 577 } 578 579 .navbar_component[data-wf--section_navbar--variant="dark"] .btn[data-wf--btn--variant="primary"]{ 580 background: rgba(255, 255, 255, 0.30); 581 } 582 583 584 @media screen and (min-width: 992px) { 585 .btn[data-wf--btn--variant="primary"]:hover .btn_wrapper{ 586 background-color: var(--c-violet-300); 587 } 588 589 /* .btn[data-wf--btn--variant="default"]:hover .button-gradient{ 590 transform-origin: center; 591 will-change: transform; 592 --gradient-rotate: 0deg; 593 transform: rotate(var(--gradient-rotate)); 594 } */ 595 596 .navbar_component[data-wf--section_navbar--variant="dark"] .btn[data-wf--btn--variant="primary"]:hover .btn_wrapper{ 597 background-color: unset; 598 } 599 600 .navbar_component[data-wf--section_navbar--variant="dark"] .btn[data-wf--btn--variant="primary"]:hover { 601 background: rgba(255, 255, 255, 0.75); 602 } 603 604 .btn[data-wf--btn--variant="primary"]:hover .btn_icon{ 605 background-color: var(--c-violet-200); 606 } 607 608 .navbar_component[data-wf--section_navbar--variant="dark"] .btn[data-wf--btn--variant="primary"]:hover .btn_icon{ 609 background-color: rgba(255, 255, 255, 0.5); 610 } 611 612 .btn:hover .btn_icon .icon-embed-8{ 613 transform: rotate(360deg); 614 } 615 } 616 617 618 /* Homepage cards animation */ 619 @media screen and (min-width: 992px) { 620 .api_card { 621 width: calc(50% - 0.5rem); 622 transition: width 0.7s cubic-bezier(0.6, 0, 0.15, 1); 623 } 624 625 .apis_grid:has(.api_card:hover) .api_card:not(:hover) { 626 width: calc(41.67% - 0.5rem); 627 } 628 629 .apis_grid .api_card:hover { 630 width: calc(58.33% - 0.5rem); 631 } 632 } 633 634 .filter_radio-box.is-active .filter_radio-active{ 635 opacity: 100%; 636 } 637 638 .filter_radio-box.is-active { 639 pointer-events: none; 640 } 641 642 .toc-item.w--current{ 643 color: var(--c-gray-700); 644 } 645 646 .w-pagination-previous.blog_pagination-btn.is-list-pagination-disabled, 647 .w-pagination-next.blog_pagination-btn.is-list-pagination-disabled{ 648 opacity: 50%; 649 pointer-events: none; 650 } 651</style></div><div class="w-embed"><style> 652 .footer_bg{ 653 background: linear-gradient(180deg, #F8F8F8 38.71%, #F4FBEF 72.66%, #B5D996 78.65%, #85CDC9 83.11%, #7A7BDC 86.04%, #3A167B 93.46%, #231D2E 95.98%); 654 } 655 656 .section_footer[data-wf--section_footer--variant="dark"] .footer_bg{ 657 background: radial-gradient(221.29% 374.72% at 50.03% -69.29%, #DCC9A0 21.33%, #FFAD56 27.47%, #C7470C 35.55%, #6F2E0A 38.29%, #120905 41.53%, #000 45.76%); 658 } 659 660 .luci-scroll_gradient{ 661 background: radial-gradient(111.72% 151.21% at 50.07% 50%, #DCC9A0 1.82%, #FFAD56 15.87%, #C7470C 24.74%, #6F2E0A 30%, rgba(18, 9, 5, 0.00) 34.3%); 662 } 663 664 .luci-hero_bg{ 665 background: radial-gradient(221.29% 374.72% at 50.03% -69.29%, #DCC9A0 21.33%, #FFAD56 27.47%, #C7470C 35.55%, #6F2E0A 38.29%, #120905 41.53%, #000 44.76%); 666 } 667 668 .hero_bg{ 669 background: linear-gradient(0deg, #FFF 41.07%, #F4FBEF 61.39%, #B5D996 65.82%, #85CDC9 71.46%, #7A7BDC 74.66%, #3A167B 80.36%, #231D2E 87.87%, #231D2E 121.02%); 670 } 671 672 .section_hero-blank[data-wf--section_hero-blank--variant="sticky"] .hero_bg, 673 .section_hero-blank[data-wf--section_hero-blank--variant="gray"] .hero_bg { 674 background: linear-gradient(0deg, #F6F6F6 41.07%, #F4FBEF 61.39%, #B5D996 65.82%, #85CDC9 71.46%, #7A7BDC 74.66%, #3A167B 80.36%, #231D2E 87.87%, #231D2E 121.02%); 675 } 676 677 .api_visual-comment-box{ 678 background: radial-gradient(135.05% 1230.1% at 50% 112.77%, #E1D6C9 12.02%, #B5D996 18.15%, #85CDC9 22.49%, #7A7BDC 33.67%, #3A167B 50.47%, #231D2E 50.73%); 679 } 680 681 .api_visual-line{ 682 background: radial-gradient(135.05% 1230.1% at 50% 112.77%, #E1D6C9 12.02%, #B5D996 18.15%, #85CDC9 22.49%, #7A7BDC 33.67%, #3A167B 50.47%, #231D2E 50.73%); 683 } 684 685 /* Divider styles light */ 686 687 /* invisible ±9px hover hit-area (a 1px line is too thin to hover) */ 688 .numbers_divider::before{ 689 content:''; position:absolute; 690 left:0; right:0; top:-9px; bottom:-9px; 691 } 692 693 /* the colored sweep beam â exactly the size of the divider */ 694 .numbers_divider::after{ 695 content:''; position:absolute; top:0; left:0; 696 width:100%; height:100%; 697 background-image:linear-gradient(90deg,
698 rgba(106,100,220,0) 0%, 699 rgba(106,100,220,0) 5%, 700 rgba(106,100,220,.95) 20%, 701 rgba(110,150,240,1) 35%, 702 rgba(120,220,215,1) 50%, 703 rgba(200,232,120,1) 65%, 704 rgba(232,224,200,.65) 80%, 705 rgba(232,224,200,0) 95%, 706 rgba(232,224,200,0) 100%); 707 background-size:200% 100%; 708 background-repeat:no-repeat; 709 background-position:200% 0; /* parked off-screen left */ 710 pointer-events: none; 711 will-change:background-position; 712 } 713 714 .numbers_divider:hover::after{ 715 animation: numbers-divider-sweep 1.2s cubic-bezier(.22,1,.36,1); 716 } 717 718 @keyframes numbers-divider-sweep{ 719 from{ background-position:200% 0; } 720 to { background-position:-100% 0; } 721 } 722 723 @media (prefers-reduced-motion: reduce){ 724 .numbers_divider:hover::after{ animation:none; } 725 } 726 727 /* Divider styles dark */ 728 /* invisible ±9px hover hit-area (a 1px line is too thin to hover) */ 729 .numbers_divider.is-dark::before{ 730 content:''; position:absolute; 731 left:0; right:0; top:-9px; bottom:-9px; 732 } 733 734 /* the colored sweep beam â exactly the size of the divider */ 735 .numbers_divider.is-dark::after{ 736 content:''; position:absolute; top:0; left:0; 737 width:100%; height:100%; 738 background-image: linear-gradient(90deg, 739 rgba(255,219,136,0) 0%, 740 rgba(255,219,136,0) 5%, 741 rgba(255,219,136,.95) 20%, 742 rgba(173,90,34,1) 40%, 743 rgba(111,46,10,1) 60%, 744 rgba(18,9,5,1) 80%, 745 rgba(18,9,5,0) 95%, 746 rgba(18,9,5,0) 100% 747 ); 748 background-size:200% 100%; 749 background-repeat:no-repeat; 750 background-position:200% 0; /* parked off-screen left */ 751 pointer-events: none; 752 will-change:background-position; 753 } 754 755 .numbers_divider.is-dark:hover::after{ 756 animation: numbers-divider-sweep 1.2s cubic-bezier(.22,1,.36,1); 757 } 758 759 @keyframes numbers-divider-sweep{ 760 from{ background-position:200% 0; } 761 to { background-position:-100% 0; } 762 } 763 764 .services_wrapper .services_item:last-child .numbers_divider.is-service-last, 765 .numbers_container .numbers_row-item:last-child .numbers_divider.is-service-last, 766 .info_list-wrapper .info_list-item-box:last-child .numbers_divider.is-service-last, 767 .blog_cms-list .blog_cms-item:last-child .numbers_divider.is-service-last, 768 .cs_cms-list .cs_cms-item:last-child .numbers_divider.is-service-last, 769 .tools-features_cms-item:last-child .numbers_divider.is-service-last, 770 .career_cms-item:last-child .numbers_divider.is-service-last 771 { 772 display: block; 773 } 774 775 .announcemnet-line{ 776 background: linear-gradient(270deg, #E1D6C9 -0.6%, #B5D996 9.66%, #85CDC9 16.93%, #7A7BDC 35.63%, #3A167B 63.72%, #231D2E 105.92%); 777 } 778</style></div><div class="hide w-embed"><style> 779/* Variant white */ 780 .navbar_component[data-wf--section_navbar--variant="white"] .navbar_logo-link, 781 .navbar_component[data-wf--section_navbar--variant="dark"] .navbar_logo-link 782 { 783 filter: invert(1); 784 } 785 786 .navbar_component[data-wf--section_navbar--variant="white"] .menu-icon1_line-top, 787 .navbar_component[data-wf--section_navbar--variant="white"] .menu-icon1_line-middle, 788 .navbar_component[data-wf--section_navbar--variant="white"] .menu-icon1_line-bottom, 789 .navbar_component[data-wf--section_navbar--variant="dark"] .menu-icon1_line-top, 790 .navbar_component[data-wf--section_navbar--variant="dark"] .menu-icon1_line-middle, 791 .navbar_component[data-wf--section_navbar--variant="dark"] .menu-icon1_line-bottom 792 { 793 background: var(--c-white-100); 794 } 795 796 797 798 .navbar_component[data-wf--section_navbar--variant="dark"] .navbar_dropdown-link{ 799 color: var(--c-white-100); 800 } 801 802 .navbar_component[data-wf--section_navbar--variant="dark"] .t-paragraph-2-rg.c-gray-700{ 803 color: var(--c-gray-500); 804 } 805 806/* Variant:hover */ 807 @media screen and (min-width: 992px) { 808 .navbar_component:hover{ 809 background: var(--c-white-100); 810 border-bottom: 0.0625rem solid var(--c-gray-300); 811 } 812 813 .navbar_component[data-wf--section_navbar--variant="dark"]:hover 814 { 815 background: var(--c-black-100); 816 border-bottom: 0.0625rem solid var(--c-gray-700); 817 } 818 819 .navbar_component[data-wf--section_navbar--variant="white"]:hover .announcemnet_close, 820 .navbar_component[data-wf--section_navbar--variant="white"]:hover .announcemnet-bar{ 821 color: var(--color-scheme-1--text); 822 } 823 824 .navbar_component[data-wf--section_navbar--variant="white"] .is-navbar-title, 825 .navbar_component[data-wf--section_navbar--variant="dark"] .is-navbar-title 826 { 827 color: var(--c-white-100); 828 } 829 830 .navbar_component[data-wf--section_navbar--variant="white"] .dropdown-chevron, 831 .navbar_component[data-wf--section_navbar--variant="dark"] .dropdown-chevron 832 { 833 color: var(--c-white-100); 834 } 835 836 .navbar_component[data-wf--section_navbar--variant="white"]:hover .navbar_logo-link 837 { 838 filter: invert(0); 839 } 840 841 .navbar_component[data-wf--section_navbar--variant="white"]:hover .is-navbar-title 842 { 843 color: inherit; 844 } 845 846 .navbar_component[data-wf--section_navbar--variant="white"]:hover .dropdown-chevron 847 { 848 color: inherit; 849 } 850 851 } 852 853 854/* Variant transparent scrolled */ 855 .navbar_component.scrolled{ 856 background: var(--c-white-100); 857 border-bottom: 0.0625rem solid var(--c-gray-300); 858 } 859 860 .navbar_component[data-wf--section_navbar--variant="white"].scrolled .navbar_logo-link 861 { 862 filter: invert(0); 863 } 864 865 .navbar_component[data-wf--section_navbar--variant="white"].scrolled .is-navbar-title 866 { 867 color: inherit; 868 } 869 870 .navbar_component[data-wf--section_navbar--variant="white"].scrolled .dropdown-chevron 871 { 872 color: inherit; 873 } 874 875 .navbar_component[data-wf--section_navbar--variant="white"].scrolled .menu-icon1_line-top, 876 .navbar_component[data-wf--section_navbar--variant="white"].scrolled .menu-icon1_line-middle, 877 .navbar_component[data-wf--section_navbar--variant="white"].scrolled .menu-icon1_line-bottom 878 { 879 background: var(--color-scheme-1--text); 880 } 881 882/* Variant transparent scrolled dark */ 883 .navbar_component[data-wf--section_navbar--variant="dark"].scrolled{ 884 background: var(--c-black-100); 885 border-bottom: 0.0625rem solid var(--c-gray-700); 886 } 887 888 889 890/* Navbar links hover */ 891 .navbar_dropdown-link:hover{ 892 opacity: 50% !important; 893 } 894 895/* Mobile adjustments white */ 896 .navbar_component:has(.navbar_menu-button.w--open) { 897 background: var(--c-white-100)!important; 898 } 899 900 .navbar_component:has(.navbar_menu-button.w--open) .menu-icon1_line-top, 901 .navbar_component:has(.navbar_menu-button.w--open) .menu-icon1_line-middle, 902 .navbar_component:has(.navbar_menu-button.w--open) .menu-icon1_line-bottom{ 903 background: var(--color-scheme-1--text); 904 } 905 906 .navbar_component:has(.navbar_menu-button.w--open) .navbar_logo-link{ 907 filter: invert(0); 908 } 909 910/* Mobile adjustments dark */ 911 .navbar_component[data-wf--section_navbar--variant="dark"]:has(.navbar_menu-button.w--open) { 912 background: var(--c-black-100) !important; 913 } 914 915 .navbar_component[data-wf--section_navbar--variant="dark"]:has(.navbar_menu-button.w--open) .menu-icon1_line-top, 916 .navbar_component[data-wf--section_navbar--variant="dark"]:has(.navbar_menu-button.w--open) .menu-icon1_line-middle, 917 .navbar_component[data-wf--section_navbar--variant="dark"]:has(.navbar_menu-button.w--open) .menu-icon1_line-bottom{ 918 background: var(--c-white-100); 919 } 920 921 .navbar_component[data-wf--section_navbar--variant="dark"]:has(.navbar_menu-button.w--open) .navbar_logo-link{ 922 filter: invert(1); 923 } 924</style></div></div><div data-animation="default" class="navbar_component w-nav" data-easing2="ease" data-wf-component-id="2e82118a-0a03-bb39-5795-bb7f5c3cea99" data-wf--section_navbar--variant="default" fs-scrolldisable-element="smart-nav" data-easing="ease" data-wf-variant-state="base" data-collapse="medium" data-w-id="2e82118a-0a03-bb39-5795-bb7f5c3cea99" role="banner" data-duration="400"><div class="announcemnet-bar-wrapper"><div class="announcemnet-inner-wrapper"><a href="https://luci.memories.ai/?utm_source=memories_ai&utm_medium=banner&utm_campaign=luci_desktop" target="_blank" class="announcemnet-bar w-inline-block"><div class="t-paragraph-1-rg is-announcment-bar">Introducing LUCI desktop: local computer history for every AI agent</div><div class="announcemnet-line"></div></a></div><a data-w-id="cda4f277-d156-6207-0e33-6c15569cade9" href="#" class="announcemnet_close w-inline-block"><div class="icon-embed-xxsmall w-embed">
924<svg width="100%" height="100%" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> 925 <path d="M12.5 3.5L3.5 12.5" stroke="currentColor" stroke-linejoin="round"/> 926 <path d="M12.5 12.5L3.5 3.5" stroke="currentColor" stroke-linejoin="round"/> 927</svg> 928</div></a></div><div class="navbar_container"><a href="/" aria-current="page" class="navbar_logo-link w-nav-brand w--current"><img loading="lazy" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a29473b61d39d62bcf807bb_Logotype.svg" alt="" class="navbar_logo"/></a><nav role="navigation" class="navbar_menu w-nav-menu"><div class="navbar_menu-left"><div data-delay="300" data-hover="true" data-w-id="2e82118a-0a03-bb39-5795-bb7f5c3cea9f" class="navbar_menu-dropdown w-dropdown"><div class="navbar_dropdown-toggle w-dropdown-toggle"><div class="t-paragraph-1-rg is-navbar-title">Solutions</div><div class="dropdown-chevron w-embed"><svg width="100%" height="100%" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"> 929<path d="M3 5L5.59808 1.25L0.401924 1.25L3 5Z" fill="currentColor"/> 930</svg> 931</div></div><nav class="navbar6_dropdown-list w-dropdown-list"><div class="navbar_container"><div class="navbar_dropdown-content"><div class="navbar_dropdown-content-left"><div class="navbar_dropdown-column"><h4 data-el="stagger-in" class="t-label-1-md c-gray-500">Solutions</h4><div class="navbar_dropdown-link-list"><a data-el="stagger-in" href="/solution" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Solution Overview</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">The memory layer for every industry.</p></div></a></div></div><div class="navbar_dropdown-column"><h4 data-el="stagger-in" class="t-label-1-md c-gray-500">by industry</h4><div class="navbar_dropdown-link-list"><a data-el="stagger-in" href="/media" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Media & Entertainment</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Searchable archives, real-time clips.</p></div></a><a data-el="stagger-in" href="/security" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Security & Safety</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Real-time detection, cross-camera ReID.</p></div></a><a data-el="stagger-in" href="/robot" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Robotic & Physical AI</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Visual memory for robots and wearables.</p></div></a></div></div><div class="navbar_dropdown-column"><h4 data-el="stagger-in" class="t-label-1-md c-gray-500">success stories</h4><div class="navbar_dropdown-link-list"><a data-el="stagger-in" href="/case-studies" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Case Studies</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Inside the products you already use.</p></div></a></div></div></div><div class="navbar_dropdown-content-right"><a href="/case-studies/nvidia" class="navbar_blog-item-violet w-inline-block"><img loading="lazy" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a298c7ff950480f89a908a1_NVIDIA_white.svg" alt="" class="navbar_logo"/><div class="navbar_blog-content"><p class="t-paragraph-1-rg">Memories.ai gave our partners a shared retrieval layer that holds up across regions.</p><div class="navbar_blog-box"><p class="t-paragraph-2-rg">Read Nvidia Sucess Story</p><div class="icon-embed-6 w-embed"><svg width="100%" height="100%" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"> 932<path d="M5 3L1.25 0.401924L1.25 5.59808L5 3Z" fill="currentColor"/> 933</svg> 934</div></div></div></a></div></div></div></nav></div><div data-delay="300" data-hover="true" data-w-id="2e82118a-0a03-bb39-5795-bb7f5c3ceacd" class="navbar_menu-dropdown w-dropdown"><div class="navbar_dropdown-toggle w-dropdown-toggle"><div class="t-paragraph-1-rg is-navbar-title">Developers</div><div class="dropdown-chevron w-embed">
934<svg width="100%" height="100%" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"> 935<path d="M3 5L5.59808 1.25L0.401924 1.25L3 5Z" fill="currentColor"/> 936</svg> 937</div></div><nav class="navbar6_dropdown-list w-dropdown-list"><div class="navbar_container"><div class="navbar_dropdown-content"><div class="navbar_dropdown-content-left"><div class="navbar_dropdown-column"><h4 data-el="stagger-in" class="t-label-1-md c-gray-500">documentation</h4><div class="navbar_dropdown-link-list"><a data-el="stagger-in" href="https://docs.memories.ai/" target="_blank" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">API Docs</div><div class="icon-embed-5 is-abs w-embed"><svg width="100%" height="100%" viewBox="0 0 5 5" fill="none" xmlns="http://www.w3.org/2000/svg"> 938<line x1="4.5" y1="2.18557e-08" x2="4.5" y2="5" stroke-width="1" stroke="currentColor"/> 939<line x1="5" y1="0.5" x2="-2.68229e-08" y2="0.499999" stroke-width="1" stroke="currentColor"/> 940</svg></div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Endpoints, examples, and SDKs.</p></div></a><a data-el="stagger-in" href="https://memories.ai/app/login?redirectUrl=https://api-platform.memories.ai/?utm_source%3Dfooter%26_gl%3D1*19xn97g*_gcl_au*MTY1NTkwMzQ3Ny4xNzgwMDQwMzMx*_ga*MTgzMjQyMjE3Ni4xNzgwMDQwMzMx*_ga_Q3L9MFWM5F*czE3ODMwOTE4MzckbzYxJGcxJHQxNzgzMDkxOTAxJGo2MCRsMCRoOTgyMzQzNjg5" target="_blank" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">API Platform</div><div class="icon-embed-5 is-abs w-embed"><svg width="100%" height="100%" viewBox="0 0 5 5" fill="none" xmlns="http://www.w3.org/2000/svg"> 941<line x1="4.5" y1="2.18557e-08" x2="4.5" y2="5" stroke-width="1" stroke="currentColor"/> 942<line x1="5" y1="0.5" x2="-2.68229e-08" y2="0.499999" stroke-width="1" stroke="currentColor"/> 943</svg></div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">The memory layer for every industry.</p></div></a></div></div><div class="navbar_dropdown-column"><h4 data-el="stagger-in" class="t-label-1-md c-gray-500">pricing</h4><div class="navbar_dropdown-link-list"><a data-el="stagger-in" href="/pricing" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Pricing</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Per-inference and per-storage. No surprises.</p></div></a></div></div></div><div class="navbar_dropdown-content-right"><a href="/solution" class="navbar_blog-item-violet is-gray w-inline-block"><div class="navbar_blog-content"><div class="navbar_blog-box"><p class="t-paragraph-2-rg">Explore the Platform</p><div class="icon-embed-6 w-embed"><svg width="100%" height="100%" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"> 944<path d="M5 3L1.25 0.401924L1.25 5.59808L5 3Z" fill="currentColor"/> 945</svg> 946</div></div></div></a></div></div></div></nav></div><div data-delay="300" data-hover="true" data-w-id="2e82118a-0a03-bb39-5795-bb7f5c3ceaee" class="navbar_menu-dropdown w-dropdown"><div class="navbar_dropdown-toggle w-dropdown-toggle"><div class="t-paragraph-1-rg is-navbar-title">Research</div><div class="dropdown-chevron w-embed"><svg width="100%" height="100%" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"> 947<path d="M3 5L5.59808 1.25L0.401924 1.25L3 5Z" fill="currentColor"/> 948</svg> 949</div></div><nav class="navbar6_dropdown-list w-dropdown-list"><div class="navbar_container"><div class="navbar_dropdown-content"><div class="navbar_dropdown-content-left"><div class="navbar_dropdown-column"><h4 data-el="stagger-in" class="t-label-1-md c-gray-500">research</h4><div class="navbar_dropdown-link-list"><a data-el="stagger-in" href="/research" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Publications</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Peer-reviewed papers from the team.</p></div></a><a data-el="stagger-in" href="https://github.com/Memories-ai-labs" target="_blank" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">GitHub</div><div class="icon-embed-5 is-abs w-embed">
949<svg width="100%" height="100%" viewBox="0 0 5 5" fill="none" xmlns="http://www.w3.org/2000/svg"> 950<line x1="4.5" y1="2.18557e-08" x2="4.5" y2="5" stroke-width="1" stroke="currentColor"/> 951<line x1="5" y1="0.5" x2="-2.68229e-08" y2="0.499999" stroke-width="1" stroke="currentColor"/> 952</svg></div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Open-source agents and SDKs.</p></div></a></div></div><div class="navbar_dropdown-column"><h4 data-el="stagger-in" class="t-label-1-md c-gray-500">projects</h4><div class="navbar_dropdown-link-list"><a data-el="stagger-in" href="/luci" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Project LUCI</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Per-inference and per-storage. No surprises.</p></div></a><a data-el="stagger-in" href="/join" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Research Fellowship</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Join our next research cohort.</p></div></a></div></div></div><div class="navbar_dropdown-content-right"><a href="/luci" class="navbar_blog-item-violet is-video w-inline-block"><div class="navbar_blog-content"><div class="navbar_blog-box"><p class="t-paragraph-2-rg">Learn about Project LUCI</p><div class="icon-embed-6 w-embed"><svg width="100%" height="100%" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"> 953<path d="M5 3L1.25 0.401924L1.25 5.59808L5 3Z" fill="currentColor"/> 954</svg> 955</div></div></div><div class="video-abs_embed is-navbar w-embed"><!-- Set up --> 956<video width="100%" height="100%" style="object-fit: cover" autoplay loop muted playsinline poster="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a27ead8c434c5f5902c3dd8_poster-mini.webp"> 957 <!-- Provide the Safari video --> 958 <source src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a29979c887c2d44bd4a8724_introduction_video_mp4.mp4" type='video/mp4'> 959 <!-- .. and the Chrome video --> 960 <source src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a29979c887c2d44bd4a8724_introduction_video_webm.webm" type="video/webm"> 961</video></div></a></div></div></div></nav></div><div data-delay="300" data-hover="true" data-w-id="2e82118a-0a03-bb39-5795-bb7f5c3ceb0e" class="navbar_menu-dropdown w-dropdown"><div class="navbar_dropdown-toggle w-dropdown-toggle"><div class="t-paragraph-1-rg is-navbar-title">Company</div><div class="dropdown-chevron w-embed"><svg width="100%" height="100%" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"> 962<path d="M3 5L5.59808 1.25L0.401924 1.25L3 5Z" fill="currentColor"/> 963</svg> 964</div></div><nav class="navbar6_dropdown-list w-dropdown-list"><div class="navbar_container"><div class="navbar_dropdown-content"><div class="navbar_dropdown-content-left"><div class="navbar_dropdown-column"><h4 data-el="stagger-in" class="t-label-1-md c-gray-500">company</h4><div class="navbar_dropdown-link-list"><a data-el="stagger-in" href="/about" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">About</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Who we are, what we believe.</p></div></a><a data-el="stagger-in" href="/careers" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Careers</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Build the memory layer with us.</p></div></a></div></div><div class="navbar_dropdown-column"><h4 data-el="stagger-in" class="t-label-1-md c-gray-500">resources</h4><div class="navbar_dropdown-link-list"><a data-el="stagger-in" href="/blogs" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Blog</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Updates from the team.</p></div></a><a data-el="stagger-in" href="/press" class="navbar_dropdown-link w-inline-block"><div class="navbar_item-right"><div class="navbar_heading-part"><div class="t-paragraph-1-rg">Press</div></div><p class="t-paragraph-2-rg c-gray-700 hide-mobile-landscape">Press releases and media resources.</p></div></a></div></div></div><div class="navbar_dropdown-content-right"><a href="/about" class="navbar_blog-item-violet is-company w-inline-block"><div class="navbar_blog-content"><div class="navbar_blog-box is-dark-text"><p class="t-paragraph-2-rg">Meet the team behind memories.ai</p><div class="icon-embed-6 w-embed">
964<svg width="100%" height="100%" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"> 965<path d="M5 3L1.25 0.401924L1.25 5.59808L5 3Z" fill="currentColor"/> 966</svg> 967</div></div></div></a></div></div></div></nav></div></div><div class="navbar_buttons"><a href="https://memories.ai/app" target="_blank" class="btn is-default is-navbar w-inline-block"><div class="btn_wrapper is-navbar-default"><div class="t-paragraph-1-rg">Try now</div><div class="btn_icon is-gray is-navbar"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 968<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 969</svg> 970</div></div></div></a><a data-wf--btn--variant="primary" href="/contact-sales" class="btn is-default is-navbar-primary w-inline-block"><div class="btn_wrapper is-navbar-primary"><div class="t-paragraph-1-rg primary-3">Contact Sales</div><div class="btn_icon is-gray is-primary-navbar"><div class="icon-embed-8 primary-5 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 971<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 972</svg> 973</div></div></div></a></div></nav><div class="navbar_menu-button w-nav-button"><div class="menu-icon"><div class="menu-icon1_line-top"></div><div class="menu-icon1_line-middle"><div class="menu-icon1_line-middle-inner"></div></div><div class="menu-icon1_line-bottom"></div></div></div></div></div><main class="main-wrapper"><div class="popup_video"><div class="popup_video-bg"></div><div class="popup_video-modal"><div class="popup_video-embed w-embed"><div class="popup-plyr-wrapper"> 974 <video 975 class="popup-plyr-video" 976 playsinline 977 preload="metadata" 978 > 979 <source src="https://resource.memories.ai/portal/0808img/memoriesai.mp4" data-wf-ignore="true"> 980 Your browser does not support the video tag. 981 </video> 982</div></div></div><div class="popup_video-close"><div class="icon-embed-small w-embed"><svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="currentColor" class="icon icon-tabler icons-tabler-filled icon-tabler-x"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M6.707 5.293l5.293 5.292l5.293 -5.292a1 1 0 0 1 1.414 1.414l-5.292 5.293l5.292 5.293a1 1 0 0 1 -1.414 1.414l-5.293 -5.292l-5.293 5.292a1 1 0 1 1 -1.414 -1.414l5.292 -5.293l-5.292 -5.293a1 1 0 0 1 1.414 -1.414" /></svg></div></div><div class="hide w-embed w-script"><style> 983 984 .popup_video.is-open { 985 display: flex; 986 align-items: center; 987 justify-content: center; 988 } 989 990 .popup-plyr-wrapper, 991 .popup-plyr-wrapper .plyr, 992 .popup-plyr-wrapper video { 993 width: 100%; 994 height: 100%; 995 } 996 997 .popup-plyr-wrapper video { 998 object-fit: cover; 999 } 1000 1001 body.popup-scroll-locked { 1002 overflow: hidden; 1003 } 1004</style> 1005
1006<script> 1007 document.addEventListener("DOMContentLoaded", function () { 1008 const preview = document.querySelector(".video-abs_wrapper"); 1009 const popup = document.querySelector(".popup_video"); 1010 const closeButton = document.querySelector(".popup_video-close"); 1011 const popupBg = document.querySelector(".popup_video-bg"); 1012 const video = document.querySelector(".popup-plyr-video"); 1013 1014 if (!preview || !popup || !closeButton || !video) return; 1015 1016 const popupPlayer = new Plyr(video, { 1017 controls: [ 1018 "play-large", 1019 "play", 1020 "progress", 1021 "current-time", 1022 "mute", 1023 "volume", 1024 "fullscreen" 1025 ], 1026 autoplay: false, 1027 muted: false, 1028 clickToPlay: true, 1029 hideControls: false, 1030 resetOnEnd: false, 1031 fullscreen: { 1032 enabled: true, 1033 fallback: true, 1034 iosNative: true 1035 } 1036 }); 1037 1038 function openPopup() { 1039 popup.classList.add("is-open"); 1040 document.body.classList.add("popup-scroll-locked"); 1041 1042 popupPlayer.muted = false; 1043 popupPlayer.volume = 1; 1044 1045 const playPromise = popupPlayer.play(); 1046 1047 if (playPromise !== undefined) { 1048 playPromise.catch(function () { 1049 console.log("Video playback with audio was blocked by the browser."); 1050 }); 1051 } 1052 } 1053 1054 function closePopup() { 1055 popupPlayer.pause(); 1056 popupPlayer.currentTime = 0; 1057 1058 popup.classList.remove("is-open"); 1059 document.body.classList.remove("popup-scroll-locked"); 1060 } 1061 1062 preview.addEventListener("click", openPopup); 1063 closeButton.addEventListener("click", closePopup); 1064 1065 if (popupBg) { 1066 popupBg.addEventListener("click", closePopup); 1067 } 1068 1069 document.addEventListener("keydown", function (event) { 1070 if (event.key === "Escape" && popup.classList.contains("is-open")) { 1071 closePopup(); 1072 } 1073 }); 1074 }); 1075</script>
1075</div></div><section data-video-hero="true" class="section_hero"><div class="padding-global"><div class="container-large"><div class="hero_layout"><div class="hero_video"><div class="hero_video-btn"><div class="hero_video-play">â¶</div></div><div class="video-abs_wrapper"><div class="video-abs_embed w-embed"><!-- Set up --> 1076<video width="100%" height="100%" style="object-fit: cover" preload="none" loop muted playsinline poster="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a27ead8c434c5f5902c3dd8_poster-mini.webp"> 1077 <!-- Provide the Safari video --> 1078 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a27ea2d125c99e84c317cab_Minature_mp4.mp4" type='video/mp4'> 1079 <!-- .. and the Chrome video --> 1080 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a27ea2d125c99e84c317cab_Minature_webm.webm" type="video/webm"> 1081</video></div></div></div><div class="hero_text-part"><div class="mw-large is-hero"><h1 class="t-heading-1-md">The multimodal memory infrastructure <span class="no-wrap">for AI</span></h1></div><div class="mw-small"><p class="t-paragraph-1-rg">Memories.ai gives machines the ability to see, remember, and act. We build the foundational video intelligence layer that powers the next generation of AI.</p></div><div class="hero_buttons"><a data-wf--btn--variant="default" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="https://memories.ai/app" target="_blank" class="btn is-default w-inline-block"><div class="btn_wrapper"><div class="t-paragraph-1-rg">Try now</div><div class="btn_icon is-gray-violet"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1082<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1083</svg> 1084</div></div></div><div class="button-gradient"></div></a><a data-wf--btn--variant="primary" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="/contact-sales" class="btn is-default w-inline-block"><div class="btn_wrapper w-variant-5e0ec0ff-49c5-1981-6517-216b7daf5b7d"><div class="t-paragraph-1-rg">Contact Sales</div><div class="btn_icon is-gray-violet w-variant-5e0ec0ff-49c5-1981-6517-216b7daf5b7d"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1085<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1086</svg> 1087</div></div></div><div class="button-gradient w-variant-5e0ec0ff-49c5-1981-6517-216b7daf5b7d"></div></a></div></div></div></div></div><div class="video-abs_wrapper"><div class="video-abs_embed w-embed"><!-- Set up --> 1088<video width="100%" height="100%" style="object-fit: cover; object-position: center bottom;" preload="none" loop muted playsinline poster="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a27e84b70d24270a1cec120_poster.webp"> 1089 <!-- .. and the Chrome video --> 1090 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a27e70de649e743c87e8702_red_gradient_remix_remix_scene%20%281%29_webm.webm" type="video/webm"> 1091 <!-- Provide the Safari video --> 1092 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a27e70de649e743c87e8702_red_gradient_remix_remix_scene%20%281%29_mp4.mp4" type='video/mp4'> 1093</video></div></div><div class="hide w-embed w-script">
1093<script> 1094 window.addEventListener('load', function() { 1095 const isDesktop = window.matchMedia('(min-width: 768px)').matches; 1096 if (!isDesktop) return; 1097 1098 const hero = document.querySelector('[data-video-hero="true"]'); 1099 if (!hero) return; 1100 1101 const videos = hero.querySelectorAll('video'); 1102 if (!videos.length) return; 1103 1104 const loadVideo = (video) => { 1105 if (video.dataset.loaded === 'true') return; 1106 1107 const sources = video.querySelectorAll('source[data-src]'); 1108 1109 sources.forEach(source => { 1110 source.src = source.dataset.src; 1111 }); 1112 1113 video.load(); 1114 video.dataset.loaded = 'true'; 1115 }; 1116 1117 videos.forEach(video => { 1118 loadVideo(video); 1119 1120 video.play().catch(() => { 1121 // Autoplay can be blocked in some cases 1122 }); 1123 }); 1124 }); 1125</script>
1125</div></section><section class="section_pillars"><div class="padding-global"><div class="container-large"><div data-video-section="true" class="pilars_main"><div data-w-id="3cb5fe00-90ce-ac0e-8548-9838db1e2a1a" class="pilars_sticky"><div class="pillars_layout"><div class="pillars_content"><div class="mw-medium hide-tablet"><h2 class="t-heading-2-md">Three pillars of visual intelligence</h2></div><div class="pillars_list"><div data-active-class="is-active" data-mobile-scroll="true" class="pillars_visual is-mobile-1"><div class="pilars_box"><img sizes="(max-width: 702px) 100vw, 702px" srcset="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png-p-500.png 500w, https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png.png 702w" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png.png" loading="lazy" class="pilars_cube-img"/><div class="paper-stack"><div class="pillars_sheet is-first"></div><div class="pillars_sheet"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-active"><div class="pilars_sheet-active"><div class="api_visual-comment-box is-pre-hero-1"><div class="api_visual-comment-inner-box"><div class="api_visual-text-box"><div class="t-paragraph-2-rg">Prepare stats for player #86</div></div></div><div class="api_visual-line is-small-3"></div></div></div></div><div class="pillars_sheet"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet is-5"></div><div class="pillars_sheet"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-2"></div><div class="pillars_sheet is-2"></div><div class="pillars_sheet is-3"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-2"></div></div></div></div><div class="pillar_item is-1 is-active"><p class="t-label-1-md">001 | SEE</p><div class="pillar_text"><h3 class="t-heading-5-rg">Visual Understanding & Indexing</h3><div class="pilar_description"><div class="pilar_description-box"><p class="t-paragraph-1-rg c-gray-700">Our Large Visual Memory Model processes video at scale, turning raw footage into structured visual data. Every frame, every face, every scene, every spoken word. Indexed, compressed, and ready to recall. Built by ex-scientists from Meta, Google and Nvidia.</p></div></div></div></div><div data-active-class="is-active" data-mobile-scroll="true" class="pillars_visual is-mobile-2"><div class="pilars_box"><img sizes="(max-width: 702px) 100vw, 702px" srcset="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png-p-500.png 500w, https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png.png 702w" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png.png" loading="lazy" class="pilars_cube-img"/><div class="paper-stack"><div class="pillars_sheet is-first"></div><div class="pillars_sheet"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-active"><div class="pilars_sheet-active"><div class="api_visual-comment-box is-pre-hero-1"><div class="api_visual-comment-inner-box"><div class="api_visual-text-box"><div class="t-paragraph-2-rg">Prepare stats for player #86</div></div></div><div class="api_visual-line is-small-3"></div></div></div></div><div class="pillars_sheet"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet is-5"></div><div class="pillars_sheet"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-2"></div><div class="pillars_sheet is-2"></div><div class="pillars_sheet is-3"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-2"></div></div></div></div><div class="pillar_item is-2"><p class="t-label-1-md">002 | REMEMBER</p><div class="pillar_text"><h3 class="t-heading-5-rg">Persistent Visual Memory</h3><div class="pilar_description"><div class="pilar_description-box"><p class="t-paragraph-1-rg c-gray-700">Structured memory that persists across time. People, events, actions, and context organized into a searchable knowledge layer. Not just stored. Understood. The more it sees, the more it remembers, the smarter it gets.</p></div></div></div></div><div data-active-class="is-active" data-mobile-scroll="true" class="pillars_visual is-mobile-3"><div class="pilars_box"><img sizes="(max-width: 702px) 100vw, 702px" srcset="https://cdn.prod.website-files.com/6a26a66c04
112561307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png-p-500.png 500w, https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png.png 702w" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png.png" loading="lazy" class="pilars_cube-img"/><div class="paper-stack"><div class="pillars_sheet is-first"></div><div class="pillars_sheet"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-active"><div class="pilars_sheet-active"><div class="api_visual-comment-box is-pre-hero-1"><div class="api_visual-comment-inner-box"><div class="api_visual-text-box"><div class="t-paragraph-2-rg is-box">Prepare stats for player #86</div></div></div><div class="api_visual-line is-small-3"></div></div></div></div><div class="pillars_sheet"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet is-5"></div><div class="pillars_sheet"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-2"></div><div class="pillars_sheet is-2"></div><div class="pillars_sheet is-3"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-2"></div></div></div></div><div class="pillar_item is-3"><p class="t-label-1-md">003 | ACT</p><div class="pillar_text"><h3 class="t-heading-5-rg">Intelligent Action</h3><div class="pilar_description"><div class="pilar_description-box"><p class="t-paragraph-1-rg c-gray-700">Agents built on top of visual memory that complete end-to-end tasks. Analyze hours of footage in seconds. Flag safety incidents the moment they happen. Auto-tag and organize your entire video library. Surface the exact moments that matter. Real value, not just search results.</p></div></div></div></div></div></div><div class="pillars_visual"><div class="pilars_box"><img sizes="(max-width: 702px) 100vw, 702px" srcset="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png-p-500.png 500w, https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png.png 702w" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2c2ddc4f1d7675ec4f78fa_cube-png.png" loading="lazy" class="pilars_cube-img"/><div class="paper-stack"><div class="pillars_sheet is-first"><div class="video-abs_wrapper"><div class="video-abs_embed w-embed"><!-- Set up --> 1126<video width="100%" height="100%" style="object-fit: cover" preload="none" loop muted playsinline poster="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2b2a0c860771c53b8152dc_poster-prehero.webp"> 1127 <!-- .. and the Chrome video --> 1128 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a2b276130d2d256dfbba914_hp-pre-hero%201_webm.webm" type="video/webm"> 1129 <!-- Provide the Safari video --> 1130 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a2b276130d2d256dfbba914_hp-pre-hero%201_mp4.mp4" type='video/mp4'> 1131 1132</video></div></div></div><div class="pillars_sheet"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-active"><div class="pilars_sheet-active"><div class="api_visual-comment-box is-pre-hero-1"><div class="api_visual-comment-inner-box"><div class="api_visual-text-box"><div class="t-paragraph-2-rg is-comment">Prepare stats for player #86</div></div></div><div class="api_visual-line is-small-3"></div></div></div></div><div class="pillars_sheet"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet is-4"></div><div class="pillars_sheet is-5"></div><div class="pillars_sheet"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-2"></div><div class="pillars_sheet is-2"></div><div class="pillars_sheet is-3"></div><div class="pillars_sheet"></div><div class="pillars_sheet is-2"></div></div></div></div><div class="pillars_mobile-heading"><h2 class="t-heading-2-md">Three pillars of visual intelligence</h2></div></div></div></div></div></div><div class="hide w-embed"><style> 1133 /* Card 2 */ 1134 .pillars_visual { 1135 --sheet-width: 12.5rem; 1136 --sheet-height: 15rem; 1137 --sheet-gap: 0.5rem; 1138 --sheet-gap-hover: 0px; 1139 --sheet-count: 17; 1140 } 1141 1142 .pillars_visual .paper-stack { 1143 position: relative; 1144 width: calc(var(--sheet-width) + (var(--sheet-gap-hover) * (var(--sheet-count) - 1)));
1145 height: calc(var(--sheet-height) + (var(--sheet-gap-hover) * (var(--sheet-count) - 1))); 1146 } 1147 1148 .pillar_item .pilar_description{ 1149 transition: grid-template-rows 0.6s cubic-bezier(0.6, 0, 0.15, 1), 1150 opacity 0.6s cubic-bezier(0.6, 0, 0.15, 1); 1151 } 1152 1153 .pillars_visual .paper-stack, .pilars_sheet-active{ 1154 transition: transform 0.7s cubic-bezier(0.6, 0, 0.15, 1); 1155 } 1156 1157 .pillars_visual .pilars_cube-img{ 1158 transition: opacity 0.7s cubic-bezier(0.6, 0, 0.15, 1); 1159 } 1160 1161 .pillars_visual .pillars_sheet { 1162 position: absolute; 1163 left: 0; 1164 bottom: 0; 1165 width: var(--sheet-width); 1166 height: var(--sheet-height); 1167 border-radius: 0px; 1168 transform: translate(0 , 0); 1169 z-index: calc(10 - var(--i)); 1170 transition: transform 0.7s cubic-bezier(0.6, 0, 0.15, 1); 1171 } 1172 1173 .pillars_visual .pillars_sheet:nth-child(1) { --i: 0; } 1174 .pillars_visual .pillars_sheet:nth-child(2) { --i: 1; } 1175 .pillars_visual .pillars_sheet:nth-child(3) { --i: 2; } 1176 .pillars_visual .pillars_sheet:nth-child(4) { --i: 3; } 1177 .pillars_visual .pillars_sheet:nth-child(5) { --i: 4; } 1178 .pillars_visual .pillars_sheet:nth-child(6) { --i: 5; } 1179 .pillars_visual .pillars_sheet:nth-child(7) { --i: 6; } 1180 .pillars_visual .pillars_sheet:nth-child(8) { --i: 7; } 1181 .pillars_visual .pillars_sheet:nth-child(9) { --i: 8; } 1182 .pillars_visual .pillars_sheet:nth-child(10) { --i: 9; } 1183 .pillars_visual .pillars_sheet:nth-child(11) { --i: 10; } 1184 .pillars_visual .pillars_sheet:nth-child(12) { --i: 11; } 1185 .pillars_visual .pillars_sheet:nth-child(13) { --i: 12; } 1186 .pillars_visual .pillars_sheet:nth-child(14) { --i: 13; } 1187 .pillars_visual .pillars_sheet:nth-child(15) { --i: 14; } 1188 .pillars_visual .pillars_sheet:nth-child(16) { --i: 15; } 1189 .pillars_visual .pillars_sheet:nth-child(17) { --i: 16; } 1190 1191 .pillars_sheet.is-first{ 1192 -webkit-mask-image: url("https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2abab5430a95819592a02b_vector.svg"); 1193 mask-image: url("https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2abab5430a95819592a02b_vector.svg"); 1194 -webkit-mask-repeat: no-repeat; 1195 mask-repeat: no-repeat; 1196 -webkit-mask-position: center; 1197 mask-size: 100%; /* your initial mask size */ 1198 -webkit-mask-size: 100%; /* your initial mask size */ 1199 mask-position: center; 1200 } 1201 1202 1203 /* Active options */ 1204 1205 .pillars_visual.is-active .pillars_sheet { 1206 transform: translate( 1207 calc(var(--i) * var(--sheet-gap)), 1208 calc(var(--i) * var(--sheet-gap) * -1) ); 1209 } 1210 1211 .pillars_visual.is-active .paper-stack{ 1212 transform: translate(-4rem, 4rem); 1213 } 1214 1215 .pillars_visual.is-active-2 .pilars_cube-img{ 1216 opacity: 1; 1217 } 1218 1219 .pillars_visual.is-active-3 .pilars_sheet-active{ 1220 transform: translateY(-65%); 1221 } 1222 1223 .pillars_visual.is-active-3 .pilars_cube-img{ 1224 z-index: 1; 1225 } 1226 1227 .pillars_visual.is-active-3 .api_visual-comment-box.is-pre-hero-1{ 1228 opacity: 1; 1229 } 1230 1231 1232 .pillar_item.is-active{ 1233 opacity: 100%; 1234 } 1235 1236 .pillar_item.is-active .pilar_description{ 1237 grid-template-rows: 1fr; 1238 opacity: 1; 1239 } 1240 1241/* Mobile styles */ 1242@media (max-width: 992px) { 1243 .pillars_visual.is-mobile-2 .paper-stack, .pillars_visual.is-mobile-3 .paper-stack{ 1244 transform: translate(-4rem, 4rem); 1245 } 1246 1247} 1248 @media (max-width: 767px) { 1249 .pillars_visual { 1250 --sheet-width: 7rem; 1251 --sheet-height: 8.4rem; 1252 --sheet-gap: 0.25rem; 1253 --sheet-gap-hover: 0px; 1254 --sheet-count: 17; 1255 } 1256 1257 .pillars_visual.is-active .paper-stack{ 1258 transform: translate(-2rem, 2em); 1259 } 1260 1261 .pillars_visual.is-mobile-2 .paper-stack, .pillars_visual.is-mobile-3 .paper-stack{ 1262 transform: translate(-2rem, 2rem); 1263 } 1264 } 1265 1266 @media (max-width: 479px) { 1267 .pillars_visual { 1268 --sheet-width: 6.23rem; 1269 --sheet-height: 7.48rem; 1270 --sheet-gap: 0.25rem; 1271 --sheet-gap-hover: 0px; 1272 --sheet-count: 17; 1273 } 1274 1275 /* .pillars_visual.is-active .paper-stack{ 1276 transform: translate(-1.78rem, -1.78rem); 1277 } */ 1278 } 1279 1280 1281 /* Mobile iteraction step 1 */ 1282 .pillars_visual.is-mobile-1.is-active .pillars_sheet { 1283 transform: translate( 1284 calc(var(--i) * var(--sheet-gap)), 1285 calc(var(--i) * var(--sheet-gap) * -1) ); 1286 } 1287 1288 .pillars_visual.is-mobile-1.is-active .paper-stack{ 1289 transform: translate(-2rem, 2rem); 1290 } 1291 1292 .pillars_visual.is-mobile-2 .pillars_sheet, .pillars_visual.is-mobile-3 .pillars_sheet { 1293 transform: translate( 1294 calc(var(--i) * var(--sheet-gap)), 1295 calc(var(--i) * var(--sheet-gap) * -1) ); 1296 } 1297 1298
1299 1300 /* Mobile iteraction step 2 */ 1301 .pillars_visual.is-mobile-2.is-active .pilars_cube-img{ 1302 opacity: 1; 1303 } 1304 1305 .pillars_visual.is-mobile-3 .pilars_cube-img{ 1306 opacity: 1; 1307 } 1308 1309 /* Mobile iteraction step 3 */ 1310 .pillars_visual.is-mobile-3.is-active .pilars_sheet-active{ 1311 transform: translateY(-65%); 1312 } 1313 1314 .pillars_visual.is-mobile-3.is-active .api_visual-comment-box.is-pre-hero-1{ 1315 opacity: 1; 1316 } 1317 1318</style></div></section><section class="section_statement"><div class="padding-global"><div class="container-large"><div class="statement_wrapper"><div class="mw-xlarge"><p text-letters-animation="" class="t-heading-2-md">Our engineers sit with your team until the system runs in production. We define success together, ship in weeks, and stay after launch. Edge, on-prem, or cloud, modular around your stack.</p></div></div></div></div></section><section class="section_numbers"><div class="padding-global"><div class="container-large"></div></div></section><section class="section_industries"><div class="padding-global"><div class="container-large"><div class="numbers_container"><div data-wf--numbers_row-item--variant="default" class="numbers_row-item"><div class="numbers_divider"></div><div class="numbers_row"><p fb-count-time="2000" fb-count="true" fb-count-target="100M+" fb-count-delay="100" class="t-heading-2-md">100M+</p><p class="t-heading-5-rg c-gray-700">Cameras powered by partner integrations</p></div><div class="numbers_divider is-service-last"></div></div><div data-wf--numbers_row-item--variant="default" class="numbers_row-item"><div class="numbers_divider"></div><div class="numbers_row"><p fb-count-time="2000" fb-count="true" fb-count-target="6+" fb-count-delay="100" class="t-heading-2-md">6+</p><p class="t-heading-5-rg c-gray-700">Global technology partnerships</p></div><div class="numbers_divider is-service-last"></div></div><div data-wf--numbers_row-item--variant="default" class="numbers_row-item"><div class="numbers_divider"></div><div class="numbers_row"><p fb-count-time="2000" fb-count="true" fb-count-target="SOC 2 Type II" fb-count-delay="100" class="t-heading-2-md">SOC 2 Type II</p><p class="t-heading-5-rg c-gray-700">Certified</p></div><div class="numbers_divider is-service-last"></div></div></div><div class="drum_wrap"><div class="drum"><div class="drum_track"><div data-url="/media" class="drum_item"><h2 class="t-heading-2-md">Media & Entertainment</h2></div><div data-url="/robot" class="drum_item"><h2 class="t-heading-2-md">Robotics & Physical AI</h2></div><div data-url="/security" class="drum_item"><h2 class="t-heading-2-md">Security & Safety</h2></div></div><div class="drum_overlay"><div class="drum_overlay-inner"><a data-wf--btn--variant="default" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="#" class="btn is-default w-inline-block"><div class="btn_wrapper"><div class="t-paragraph-1-rg">Check Solution</div><div class="btn_icon is-gray-violet"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1319<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1320</svg> 1321</div></div></div><div class="button-gradient"></div></a></div></div></div><div class="hide w-embed w-script"><style> 1322 /* fade mask top & bottom â not available in the Designer */ 1323 .drum{ 1324 -webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.2) 12%,rgba(0,0,0,.6) 26%,#000 40%,#000 60%,rgba(0,0,0,.6) 74%,rgba(0,0,0,.2) 88%,transparent 100%); 1325 mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.2) 12%,rgba(0,0,0,.6) 26%,#000 40%,#000 60%,rgba(0,0,0,.6) 74%,rgba(0,0,0,.2) 88%,transparent 100%); 1326 } 1327 .drum_track{will-change:transform;transition:transform .7s cubic-bezier(.33,1,.68,1);} 1328 .drum_item{ 1329 opacity:0; 1330 transition:transform .7s cubic-bezier(.33,1,.68,1), color .7s ease, opacity .7s ease; 1331 } 1332 /* JS writes data-d (distance from centre): 0 = active, 1 = neighbour, 2+ = hidden */ 1333 .drum_item[data-d="0"]{color:#0b0b0b;opacity:1;cursor:pointer;} 1334 .drum_item[data-d="1"]{color:#b8b8b8;opacity:1;} 1335 .drum_item:not([data-d="0"]):hover{color:#6a6a6a;transition:color .18s ease, transform .7s cubic-bezier(.33,1,.68,1);} 1336 1337 /* button fade-in + icon rotate (reuses your btn / btn_icon classes) */ 1338 .drum_overlay-inner{opacity:0;transform:translateY(8px);pointer-events:none; 1339 transition:opacity .2s ease, transform .35s cubic-bezier(.33,1,.68,1);} 1340 .drum_overlay-inner.is-visible{opacity:1;transform:none;pointer-events:auto;} 1341 .btn .btn_icon{transition:transform .42s cubic-bezier(.33,1,.68,1), background .18s ease;} 1342 .btn.is-pop .btn_icon{transform:rotate(90deg);} 1343</style> 1344
1345<script> 1346(function () { 1347 // ââ match these to YOUR Webflow class names if you renamed anything ââ 1348 const SEL = { 1349 drum: '.drum', 1350 track: '.drum_track', 1351 item: '.drum_item', 1352 overlay: '.drum_overlay-inner', 1353 btn: '.btn', 1354 }; 1355 const VISIBLE = 'is-visible'; 1356 const URL_ATTR = 'data-url'; // custom attribute on each .drum_item 1357 const NEW_TAB = false; // true â open solutions in a new tab 1358 1359 const COPIES = 3; 1360 const INTERVAL = 4000; // auto-advance (ms) 1361 const ANIM_MS = 700; // must match the transition above 1362 const SCALES = [1, 0.76, 0.58, 0.44, 0.35]; 1363 const PULL_RATIO = 0.37; // pulls items above the centre closer (â68/184 from the reference) 1364 1365 const drum = document.querySelector(SEL.drum); 1366 if (!drum) return; 1367 const track = drum.querySelector(SEL.track); 1368 const overlay = document.querySelector(SEL.overlay); 1369 const btn = overlay && overlay.querySelector(SEL.btn); 1370 1371 // your items are the source of truth; clone them COPIESÃ for the infinite loop 1372 const originals = Array.from(track.querySelectorAll(SEL.item)); 1373 const N = originals.length; 1374 if (!N) return; 1375 track.innerHTML = ''; 1376 for (let c = 0; c < COPIES; c++) originals.forEach(n => track.appendChild(n.cloneNode(true))); 1377 const items = Array.from(track.querySelectorAll(SEL.item)); 1378 1379 // measured at runtime â adapts to whatever sizes your breakpoints set 1380 let ITEM_H = items[0].offsetHeight || 184; 1381 let PULL = Math.round(ITEM_H * PULL_RATIO); 1382 1383 let vi = N, busy = false, timer; 1384 const show = () => overlay && overlay.classList.add(VISIBLE); 1385 const hide = () => overlay && overlay.classList.remove(VISIBLE); 1386 const ty = v => -(v * ITEM_H + ITEM_H / 2); 1387 1388 // keep the button pointed at the currently-centred solution 1389 function syncLink() { 1390 const url = items[vi] && items[vi].getAttribute(URL_ATTR); 1391 if (btn && url) { 1392 btn.setAttribute('href', url); 1393 if (NEW_TAB) { btn.setAttribute('target', '_blank'); btn.setAttribute('rel', 'noopener'); } 1394 } 1395 } 1396 function go(url) { 1397 if (!url) return; 1398 if (NEW_TAB) window.open(url, '_blank', 'noopener'); 1399 else window.location.href = url; 1400 } 1401 1402 function paint(animate) { 1403 if (!animate) { track.style.transition = 'none'; items.forEach(el => el.style.transition = 'none'); } 1404 track.style.transform = 'translateY(' + ty(vi) + 'px)'; 1405 items.forEach((el, i) => { 1406 const d = i - vi, abs = Math.abs(d); 1407 const extraY = d < 0 ? -d * PULL : 0; 1408 el.style.transform = 'translateY(' + extraY + 'px) scale(' + SCALES[Math.min(abs, 4)] + ')'; 1409 el.dataset.d = String(Math.min(abs, 4)); 1410 }); 1411 if (!animate) { void track.offsetHeight; track.style.transition = ''; items.forEach(el => el.style.transition = ''); } 1412 } 1413 1414 function goTo(target) { 1415 if (busy || target === vi) return; 1416 busy = true; hide(); vi = target; paint(true); 1417 setTimeout(() => { 1418 if (vi >= N * 2) { vi -= N; paint(false); } 1419 else if (vi < N) { vi += N; paint(false); } 1420 busy = false; show(); syncLink(); 1421 }, ANIM_MS + 40); 1422 } 1423 const advance = () => goTo(vi + 1); 1424 const auto = () => { clearInterval(timer); timer = setInterval(advance, INTERVAL); }; 1425 1426 // button â navigate to the active solution 1427 if (btn) btn.addEventListener('click', (e) => { 1428 e.preventDefault(); 1429 if (overlay && !overlay.classList.contains(VISIBLE)) return; 1430 btn.classList.add('is-pop'); 1431 setTimeout(() => btn.classList.remove('is-pop'), 200); 1432 go(items[vi] && items[vi].getAttribute(URL_ATTR)); 1433 }); 1434 1435 // click active label â go to its page; click a side label â rotate to it 1436 items.forEach((el, i) => el.addEventListener('click', () => { 1437 if (i === vi) go(el.getAttribute(URL_ATTR)); 1438 else { goTo(i); auto(); } 1439 })); 1440 1441 // re-measure when the breakpoint / orientation changes 1442 let rt; 1443 window.addEventListener('resize', () => { 1444 clearTimeout(rt); 1445 rt = setTimeout(() => { 1446 ITEM_H = items[0].offsetHeight || ITEM_H; 1447 PULL = Math.round(ITEM_H * PULL_RATIO); 1448 paint(false); 1449 }, 150); 1450 }); 1451 1452 // pause autoplay when the tab is hidden (saves cycles, avoids jump on return) 1453 document.addEventListener('visibilitychange', () => { 1454 if (document.hidden) clearInterval(timer); 1455 else auto(); 1456 }); 1457 1458 paint(false); 1459 syncLink(); 1460 auto(); 1461 setTimeout(show, 100); 1462})(); 1463</script>
1463</div></div></div></div></section><section class="section_apis"><div class="padding-global"><div class="container-large"><div data-video-section="true" class="apis_wrapper"><div class="apis_header"><h2 class="t-heading-2-md">Two ways the platform gets used</h2><div class="mw-medium"><p class="t-paragraph-1-rg c-gray-700">Some teams have a piece of footage and need an answer about it right now. Others are building systems that have to remember across years of operation. Our APIs are shaped around those two patterns.</p></div></div><div class="apis_grid"><div class="hide w-embed"><style> 1464/* Cards 1 */ 1465.corner-svg-path { 1466 stroke-width: 2; 1467 transition: stroke-width 0.7s cubic-bezier(0.6, 0, 0.15, 1); 1468 } 1469 1470 .api_visual-comment-box, .api_mobile-comment-box{ 1471 transition: opacity 0.7s cubic-bezier(0.6, 0, 0.15, 1); 1472 } 1473 1474 .api_visual-corner-box{ 1475 transition: 1476 transform 0.8s cubic-bezier(0.6, 0, 0.15, 1), 1477 left 0.8s cubic-bezier(0.6, 0, 0.15, 1), 1478 top 0.8s cubic-bezier(0.6, 0, 0.15, 1), 1479 width 0.8s cubic-bezier(0.6, 0, 0.15, 1), 1480 height 0.8s cubic-bezier(0.6, 0, 0.15, 1); 1481 } 1482 1483 .api_card-visual-box-left, .api_visual-corner-embed{ 1484 transition: width 0.7s cubic-bezier(0.6, 0, 0.15, 1), height 0.7s cubic-bezier(0.6, 0, 0.15, 1); 1485 } 1486 1487 @media screen and (min-width: 992px) { 1488 [hp-card-1]:hover .api_card-visual-box-left{ 1489 width: 19.75rem; 1490 height: 12.125rem; 1491 } 1492 1493 [hp-card-1]:hover .api_visual-corner-box{ 1494 width: 4.85rem; 1495 height: 4.85rem; 1496 /* transform: translate(140%, 20%); */ 1497 left: 35%; 1498 top: 10%; 1499 } 1500 1501 [hp-card-1]:hover .api_visual-comment-box{ 1502 opacity: 100%; 1503 } 1504 1505 [hp-card-1]:hover .api_visual-corner-embed{ 1506 width: 0.500rem; 1507 height: 0.500rem; 1508 } 1509 1510 [hp-card-1]:hover .api_visual-corner-embed .corner-svg-path{ 1511 stroke-width: 8; 1512 } 1513 } 1514 1515/* mobile */ 1516 [hp-card-1].is-active .api_card-visual-box-left{ 1517 width: 25rem; 1518 height: auto; 1519 } 1520 1521 [hp-card-1].is-active .api_visual-corner-box{ 1522 width: 5rem; 1523 height: 5rem; 1524 /* transform: translate(250%, 50%); */ 1525 left: 39%; 1526 top: 10%; 1527 } 1528 1529 [hp-card-1].is-active .api_mobile-comment-box{ 1530 opacity: 100%; 1531 } 1532 1533 [hp-card-1].is-active .api_visual-corner-embed{ 1534 width: 0.500rem; 1535 height: 0.500rem; 1536 } 1537 1538 [hp-card-1].is-active .api_visual-corner-embed .corner-svg-path{ 1539 stroke-width: 8; 1540 } 1541 @media (max-width: 479px) { 1542 [hp-card-1].is-active .api_visual-corner-box{ 1543 width: 15vw; 1544 height: 15vw; 1545 /* transform: translate(250%, 50%); */ 1546 left: 42%; 1547 top: 10%; 1548 } 1549 } 1550 1551/* Card 2 */ 1552 [hp-card-2] { 1553 --sheet-width: 10.625rem; 1554 --sheet-height: 12.5rem; 1555 --sheet-gap: 0.8125rem; 1556 --sheet-gap-hover: 0.9375rem; 1557 --sheet-count: 7; 1558 } 1559 1560 [hp-card-2] .paper-stack { 1561 position: relative; 1562 width: calc(var(--sheet-width) + (var(--sheet-gap-hover) * (var(--sheet-count) - 1))); 1563 height: calc(var(--sheet-height) + (var(--sheet-gap-hover) * (var(--sheet-count) - 1))); 1564 } 1565 1566 [hp-card-2] .paper-sheet { 1567 position: absolute; 1568 left: 0; 1569 bottom: 0; 1570 width: var(--sheet-width); 1571 height: var(--sheet-height); 1572 border-radius: 0px; 1573 transform: translate( 1574 calc(var(--i) * var(--sheet-gap)), 1575 calc(var(--i) * var(--sheet-gap) * -1) 1576 ); 1577 z-index: calc(10 - var(--i)); 1578 transition: transform 0.7s cubic-bezier(0.6, 0, 0.15, 1); 1579 } 1580 1581 @media screen and (min-width: 992px) { 1582 [hp-card-2]:hover .paper-sheet { 1583 transform: translate( 1584 calc(var(--i) * var(--sheet-gap-hover)), 1585 calc(var(--i) * var(--sheet-gap-hover) * -1) 1586 ); 1587 } 1588 1589 [hp-card-2]:hover .api_visual-comment-box{ 1590 opacity: 100%; 1591 } 1592 } 1593 1594 [hp-card-2] .paper-sheet:nth-child(1) { --i: 0; } 1595 [hp-card-2] .paper-sheet:nth-child(2) { --i: 1; } 1596 [hp-card-2] .paper-sheet:nth-child(3) { --i: 2; } 1597 [hp-card-2] .paper-sheet:nth-child(4) { --i: 3; } 1598 [hp-card-2] .paper-sheet:nth-child(5) { --i: 4; } 1599 [hp-card-2] .paper-sheet:nth-child(6) { --i: 5; } 1600 [hp-card-2] .paper-sheet:nth-child(7) { --i: 6; } 1601 1602 .paper-sheet.is-first{ 1603 -webkit-mask-image: url("https://cdn.prod.website-files.com/6a26a66c04
160361307a4feed480/6a2abab5430a95819592a02b_vector.svg"); 1604 mask-image: url("https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2abab5430a95819592a02b_vector.svg"); 1605 -webkit-mask-repeat: no-repeat; 1606 mask-repeat: no-repeat; 1607 -webkit-mask-position: center; 1608 mask-size: 100%; /* your initial mask size */ 1609 -webkit-mask-size: 100%; /* your initial mask size */ 1610 mask-position: center; 1611 } 1612 1613 [hp-card-2].is-active .paper-sheet { 1614 transform: translate( 1615 calc(var(--i) * var(--sheet-gap-hover)), 1616 calc(var(--i) * var(--sheet-gap-hover) * -1) 1617 ); 1618 } 1619 1620 [hp-card-2].is-active .api_visual-comment-box{ 1621 opacity: 100%; 1622 } 1623 1624 @media (max-width: 479px) { 1625 [hp-card-2] { 1626 --sheet-width: 8.5rem; 1627 --sheet-height: 10rem; 1628 --sheet-gap: 0.8125rem; 1629 --sheet-gap-hover: 0.9375rem; 1630 --sheet-count: 7; 1631 } 1632 1633 [hp-card-2].is-active .paper-stack{ 1634 transform: translate(-4%, 0%); */ 1635 } 1636 } 1637</style></div><div data-mobile-scroll="true" hp-card-1="" data-active-class="is-active" class="api_card"><div class="api_card-visual"><div class="api_card-visual-box-left"><div class="api_visual-video-box"><div class="video-abs_wrapper"><div class="video-abs_embed w-embed"><!-- Set up --> 1638<video width="100%" height="100%" style="object-fit: cover" preload="none" loop muted playsinline poster="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2acfb694c894604a71f9f0_poster-new-2.webp"> 1639 <!-- .. and the Chrome video --> 1640 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a2a90d2265eef8818764bff_123_webm.webm" type="video/webm"> 1641 <!-- Provide the Safari video --> 1642 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a2a90d2265eef8818764bff_123_mp4.mp4" type='video/mp4'> 1643</video></div></div><div class="api_mobile-comment-box"><div class="api_visual-text-box"><div>0:13:43<br/></div><div>The magic isn't in the machine. It's in the fact that we agreed, collectively, </div></div><div class="api_visual-text-box c-gray-500"><div>0:13:52<br/></div><div>that a string of ones and zeros could mean...<br/></div></div></div></div><div class="api_visual-corner-box"><div class="api_visual-corner-embed is-left-top w-embed"><svg width="100%" height="100%" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"> 1644<path class="corner-svg-path" stroke-width="2" d="M39.5 0.5H0.5V39.5" stroke="url(#paint0_radial_5144_14328)"/> 1645<defs> 1646<radialGradient id="paint0_radial_5144_14328" cx="0" cy="0" r="1" gradientTransform="matrix(103.74 -207.217 77.5946 34.1392 20 44.1706)" gradientUnits="userSpaceOnUse"> 1647<stop offset="0.120192" stop-color="#E1D6C9"/> 1648<stop offset="0.181473" stop-color="#B5D996"/> 1649<stop offset="0.224942" stop-color="#85CDC9"/> 1650<stop offset="0.336731" stop-color="#7A7BDC"/> 1651<stop offset="0.504676" stop-color="#3A167B"/> 1652<stop offset="0.507253" stop-color="#231D2E"/> 1653</radialGradient> 1654</defs> 1655</svg> 1656</div><div class="api_visual-corner-embed is-right-top w-embed"><svg width="100%" height="100%" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"> 1657<path class="corner-svg-path" stroke-width="2" d="M39 39.5L39 0.5L0 0.499998" stroke="url(#paint0_radial_5144_14329)"/> 1658<defs> 1659<radialGradient id="paint0_radial_5144_14329" cx="0" cy="0" r="1" gradientTransform="matrix(207.217 103.74 -34.1392 77.5946 -4.67064 20)" gradientUnits="userSpaceOnUse"> 1660<stop offset="0.120192" stop-color="#E1D6C9"/> 1661<stop offset="0.181473" stop-color="#B5D996"/> 1662<stop offset="0.224942" stop-color="#85CDC9"/> 1663<stop offset="0.336731" stop-color="#7A7BDC"/> 1664<stop offset="0.504676" stop-color="#3A167B"/> 1665<stop offset="0.507253" stop-color="#231D2E"/> 1666</radialGradient> 1667</defs> 1668</svg> 1669</div><div class="api_visual-corner-embed is-right-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"> 1670<path class="corner-svg-path" stroke-width="2" d="M39 0L39 39L0 39" stroke="url(#paint0_radial_5144_14331)"/> 1671<defs> 1672<radialGradient id="paint0_radial_5144_14331" cx="0" cy="0" r="1" gradientTransform="matrix(207.217 -103.74 -34.1392 -77.5946 -4.67064 19.5)" gradientUnits="userSpaceOnUse"> 1673<stop offset="0.120192" stop-color="#E1D6C9"/> 1674<stop offset="0.181473" stop-color="#B5D996"/> 1675<stop offset="0.224942" stop-color="#85CDC9"/> 1676<stop offset="0.336731" stop-color="#7A7BDC"/> 1677<stop offset="0.504676" stop-color="#3A167B"/> 1678<stop offset="0.507253" stop-color="#231D2E"/> 1679</radialGradient> 1680</defs> 1681</svg> 1682</div><div class="api_visual-corner-embed is-left-bottom w-embed">
1682<svg width="100%" height="100%" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"> 1683<path class="corner-svg-path" stroke-width="2" d="M39.5 39H0.5V0" stroke="url(#paint0_radial_5144_14330)"/> 1684<defs> 1685<radialGradient id="paint0_radial_5144_14330" cx="0" cy="0" r="1" gradientTransform="matrix(103.74 207.217 77.5946 -34.1392 20 -4.67064)" gradientUnits="userSpaceOnUse"> 1686<stop offset="0.120192" stop-color="#E1D6C9"/> 1687<stop offset="0.181473" stop-color="#B5D996"/> 1688<stop offset="0.224942" stop-color="#85CDC9"/> 1689<stop offset="0.336731" stop-color="#7A7BDC"/> 1690<stop offset="0.504676" stop-color="#3A167B"/> 1691<stop offset="0.507253" stop-color="#231D2E"/> 1692</radialGradient> 1693</defs> 1694</svg> 1695</div></div><div class="api_visual-comment-box"><div class="api_visual-comment-inner-box is-used"><div class="api_visual-text-box"><div>0:13:43<br/></div><div>The magic isn't in the machine. It's in the fact that we agreed, collectively, </div></div><div class="api_visual-text-box c-gray-500"><div>0:13:52<br/></div><div>that a string of ones and zeros could mean...<br/></div></div></div><div class="api_visual-line"></div></div></div></div><div class="api_card-text-part"><div class="api_card-title"><h3 class="t-heading-5-rg">Video Intelligence API</h3></div><div class="api_card-footer"><div class="api_heading-max"><p class="t-paragraph-1-rg c-gray-700">Captioning, streaming understanding, and human re-identification, available through a single API.</p></div><a data-wf--btn--variant="default" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="https://api-tools.memories.ai/visual-intelligence/getting-started/introduction" target="_blank" class="btn is-default w-inline-block"><div class="btn_wrapper"><div class="t-paragraph-1-rg">Read Docs</div><div class="btn_icon is-gray-violet"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1696<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1697</svg> 1698</div></div></div><div class="button-gradient"></div></a></div></div></div><div data-active-class="is-active" hp-card-2="" data-mobile-scroll="true" class="api_card"><div class="api_card-visual"><div class="paper-stack"><div class="paper-sheet is-first"><div class="video-abs_wrapper"><div class="video-abs_embed w-embed"><!-- Set up --> 1699<video width="100%" height="100%" style="object-fit: cover" preload="none" loop muted playsinline poster="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2acfb65eea0e6c29943cff_poster-new-1.webp"> 1700 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a2a919e121c0560f6682dec_4444_webm.webm" type="video/webm"> 1701 <!-- Provide the Safari video --> 1702 <source data-src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480%2F6a2a919e121c0560f6682dec_4444_mp4.mp4" type='video/mp4'> 1703 <!-- .. and the Chrome video --> 1704</video></div></div></div><div class="paper-sheet"></div><div class="paper-sheet"></div><div class="paper-sheet"></div><div class="paper-sheet"></div><div class="paper-sheet"></div><div class="api_visual-comment-box is-small-1"><div class="api_visual-comment-inner-box"><div class="api_visual-text-box"><div class="t-paragraph-2-rg">Search</div></div></div><div class="api_visual-line is-small-1"></div></div><div class="api_visual-comment-box is-small-2"><div class="api_visual-comment-inner-box"><div class="api_visual-text-box"><div class="t-paragraph-2-rg">Index<br/></div></div></div><div class="api_visual-line is-small-1"></div></div><div class="api_visual-comment-box is-small-3"><div class="api_visual-comment-inner-box"><div class="api_visual-text-box"><div class="t-paragraph-2-rg">Host</div></div></div><div class="api_visual-line is-small-3"></div></div></div></div><div class="api_card-text-part"><div class="api_card-title"><h3 class="t-heading-5-rg">Visual Search API</h3></div><div class="api_card-footer"><div class="api_heading-max"><p class="t-paragraph-1-rg c-gray-700">Host, index, and search video at scale.<br/>Built for products that need to remember.</p></div><a data-wf--btn--variant="default" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="https://api-tools.memories.ai/visual-search/introduction" target="_blank" class="btn is-default w-inline-block"><div class="btn_wrapper"><div class="t-paragraph-1-rg">Read Docs</div><div class="btn_icon is-gray-violet"><div class="icon-embed-8 w-embed">
1704<svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1705<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1706</svg> 1707</div></div></div><div class="button-gradient"></div></a></div></div></div></div></div></div></div></section><section class="section_partners"><div class="padding-global"><div class="container-large"><div class="padding-section-large"><div class="partners_layout"><div class="partners_content"><div class="mw-medium is-partners"><h2 class="t-heading-2-md">Built for the worldâs largest platforms.</h2></div><div class="mw-small"><p class="t-paragraph-1-rg t-heading-5-rg c-gray-700">Our infrastructure processes visual data for partners across consumer electronics, security, telecommunications, and enterprise AI.</p></div><a data-wf--btn--variant="default" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="/case-studies" class="btn is-default w-inline-block"><div class="btn_wrapper"><div class="t-paragraph-1-rg">Read all Case Studies</div><div class="btn_icon is-gray-violet"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1708<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1709</svg> 1710</div></div></div><div class="button-gradient"></div></a><link rel="prefetch" href="/case-studies"/></div><div class="partners_cms-wrapper"><div class="partners_cms-list"><div data-wf--component_cell--variant="default" class="logo_cell"><a href="#" class="logo_partners-link w-inline-block"><img width="Auto" height="33" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2709eb2b83c952cab2ec69_microsoft.svg" loading="lazy" class="logo_img"/><div class="icon-embed-12 is-left-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1711<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1712<path d="M0.5 11L0.5 0" stroke="currentColor"/> 1713</svg> 1714</div><div class="icon-embed-12 is-right-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1715<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1716<path d="M11.5 11L11.5 0" stroke="currentColor"/> 1717</svg> 1718</div><div class="icon-embed-12 is-right-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1719<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1720<path d="M11.5 12L11.5 1" stroke="currentColor"/> 1721</svg> 1722</div><div class="icon-embed-12 is-left-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1723<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1724<path d="M0.5 12L0.5 1" stroke="currentColor"/> 1725</svg> 1726</div></a></div><div data-wf--component_cell--variant="is-link" class="logo_cell"><a href="/case-studies/nvidia" class="logo_partners-link w-variant-7a3054fc-1513-62ed-da34-8dbca3979ba1 w-inline-block"><img width="Auto" height="33" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2709eb1652a778df790a1d_NVIDIA_logo.svg" loading="lazy" class="logo_img"/><div class="icon-embed-12 is-left-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1727<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1728<path d="M0.5 11L0.5 0" stroke="currentColor"/> 1729</svg> 1730</div><div class="icon-embed-12 is-right-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1731<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1732<path d="M11.5 11L11.5 0" stroke="currentColor"/> 1733</svg> 1734</div><div class="icon-embed-12 is-right-top w-embed">
1734<svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1735<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1736<path d="M11.5 12L11.5 1" stroke="currentColor"/> 1737</svg> 1738</div><div class="icon-embed-12 is-left-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1739<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1740<path d="M0.5 12L0.5 1" stroke="currentColor"/> 1741</svg> 1742</div></a></div><div data-wf--component_cell--variant="is-link" class="logo_cell"><a href="#" class="logo_partners-link w-variant-7a3054fc-1513-62ed-da34-8dbca3979ba1 w-inline-block"><img width="Auto" height="33" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2709eb36fde8d23a676d60_samsung.svg" loading="lazy" class="logo_img"/><div class="icon-embed-12 is-left-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1743<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1744<path d="M0.5 11L0.5 0" stroke="currentColor"/> 1745</svg> 1746</div><div class="icon-embed-12 is-right-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1747<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1748<path d="M11.5 11L11.5 0" stroke="currentColor"/> 1749</svg> 1750</div><div class="icon-embed-12 is-right-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1751<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1752<path d="M11.5 12L11.5 1" stroke="currentColor"/> 1753</svg> 1754</div><div class="icon-embed-12 is-left-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1755<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1756<path d="M0.5 12L0.5 1" stroke="currentColor"/> 1757</svg> 1758</div></a></div><div data-wf--component_cell--variant="default" class="logo_cell"><a href="#" class="logo_partners-link w-inline-block"><img width="Auto" height="33" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2709eb4919db54b2bc322b_lenovo.svg" loading="lazy" class="logo_img"/><div class="icon-embed-12 is-left-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1759<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1760<path d="M0.5 11L0.5 0" stroke="currentColor"/> 1761</svg> 1762</div><div class="icon-embed-12 is-right-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1763<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1764<path d="M11.5 11L11.5 0" stroke="currentColor"/> 1765</svg> 1766</div><div class="icon-embed-12 is-right-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1767<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1768<path d="M11.5 12L11.5 1" stroke="currentColor"/> 1769</svg> 1770</div><div class="icon-embed-12 is-left-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1771<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1772<path d="M0.5 12L0.5 1" stroke="currentColor"/> 1773</svg> 1774</div></a></div><div data-wf--component_cell--variant="default" class="logo_cell"><a href="#" class="logo_partners-link w-inline-block"><img width="Auto" height="33" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2709ebd0f3b64d98270d39_Qualcomm-Logo.svg" loading="lazy" class="logo_img"/><div class="icon-embed-12 is-left-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1775<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1776<path d="M0.5 11L0.5 0" stroke="currentColor"/> 1777</svg> 1778</div><div class="icon-embed-12 is-right-bottom w-embed">
1778<svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1779<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1780<path d="M11.5 11L11.5 0" stroke="currentColor"/> 1781</svg> 1782</div><div class="icon-embed-12 is-right-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1783<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1784<path d="M11.5 12L11.5 1" stroke="currentColor"/> 1785</svg> 1786</div><div class="icon-embed-12 is-left-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1787<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1788<path d="M0.5 12L0.5 1" stroke="currentColor"/> 1789</svg> 1790</div></a></div><div data-wf--component_cell--variant="is-link" class="logo_cell"><a href="#" class="logo_partners-link w-variant-7a3054fc-1513-62ed-da34-8dbca3979ba1 w-inline-block"><img width="Auto" height="33" alt="" src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/6a2709ebf234a10a4f9bbc06_ring.svg" loading="lazy" class="logo_img"/><div class="icon-embed-12 is-left-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1791<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1792<path d="M0.5 11L0.5 0" stroke="currentColor"/> 1793</svg> 1794</div><div class="icon-embed-12 is-right-bottom w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1795<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 11)" stroke="currentColor"/> 1796<path d="M11.5 11L11.5 0" stroke="currentColor"/> 1797</svg> 1798</div><div class="icon-embed-12 is-right-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1799<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1800<path d="M11.5 12L11.5 1" stroke="currentColor"/> 1801</svg> 1802</div><div class="icon-embed-12 is-left-top w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1803<line y1="-0.5" x2="12" y2="-0.5" transform="matrix(1 0 0 -1 0 0)" stroke="currentColor"/> 1804<path d="M0.5 12L0.5 1" stroke="currentColor"/> 1805</svg> 1806</div></a></div></div></div></div></div></div></div></section><section data-video-section="true" class="section_luci"><div class="padding-global"><div class="container-large"><div class="luci_wrapper"><div id="w-node-_5d1dfa4d-91d8-c226-6642-4d4481ed854d-4feed462" class="luci_layout"><div class="luci_heading-part"><p text-letters-animation="" class="t-heading-4-md">The richest training signal for AI is what humans see, do, and say. So we built LUCI which powers human-centric AI training and self-improving models.</p><div class="luci_buttons"><a data-wf--btn--variant="default" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="https://luci.memories.ai/" target="_blank" class="btn is-default w-inline-block"><div class="btn_wrapper"><div class="t-paragraph-1-rg">Meet LUCI Desktop</div><div class="btn_icon is-gray-violet"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1807<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1808</svg> 1809</div></div></div><div class="button-gradient"></div></a><a data-wf--btn--variant="primary" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="/luci" class="btn is-default w-inline-block"><div class="btn_wrapper w-variant-5e0ec0ff-49c5-1981-6517-216b7daf5b7d"><div class="t-paragraph-1-rg">Explore LUCI Pin</div><div class="btn_icon is-gray-violet w-variant-5e0ec0ff-49c5-1981-6517-216b7daf5b7d"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1810<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1811</svg> 1812</div></div></div><div class="button-gradient w-variant-5e0ec0ff-49c5-1981-6517-216b7daf5b7d"></div></a></div></div><div class="luci_video"><div class="video_component"><div class="hide w-embed"><style> 1813 .custom-plyr-wrapper { 1814 position: relative; 1815 width: 100%; 1816 overflow: hidden; 1817 background: #000; 1818 } 1819 1820 .custom-plyr-wrapper video, 1821 .custom-plyr-wrapper .plyr { 1822 width: 100%; 1823 height: 100%; 1824 } 1825 1826 .custom-plyr-wrapper video { 1827 object-fit: cover; 1828 } 1829 1830 /* Hide Plyr controls by default */ 1831 .custom-plyr-wrapper .plyr__controls { 1832 opacity: 0; 1833 pointer-events: none; 1834 transform: translateY(10px); 1835 transition: opacity 0.25s ease, transform 0.25s ease; 1836 } 1837 1838 /* Show controls on hover */ 1839 .custom-plyr-wrapper:hover .plyr__controls { 1840 opacity: 1; 1841 pointer-events: auto; 1842 transform: translateY(0); 1843 1844 } 1845 1846 /* Also show controls when keyboard focus is inside */ 1847 .custom-plyr-wrapper:focus-within .plyr__controls { 1848 opacity: 1; 1849 pointer-events: auto; 1850 transform: translateY(0); 1851 } 1852 1853 /* Optional: make video fill a nice ratio */ 1854 .video_component { 1855 width: 100%; 1856 aspect-ratio: 16 / 9; 1857 } 1858 1859 .video_component .custom-plyr-wrapper { 1860 height: 100%; 1861 } 1862</style></div><div class="hide w-embed w-script">
1862<script> 1863 document.addEventListener("DOMContentLoaded", function () { 1864 const players = Array.from(document.querySelectorAll(".js-plyr-video")); 1865 1866 players.forEach(function (video) { 1867 const player = new Plyr(video, { 1868 controls: [ 1869 "play-large", 1870 "play", 1871 "progress", 1872 "current-time", 1873 "mute", 1874 "volume", 1875 "fullscreen" 1876 ], 1877 muted: true, 1878 autoplay: true, 1879 clickToPlay: true, 1880 hideControls: false, 1881 resetOnEnd: false, 1882 fullscreen: { 1883 enabled: true, 1884 fallback: true, 1885 iosNative: true 1886 } 1887 }); 1888 1889 player.muted = true; 1890 player.volume = 0; 1891 1892 const playPromise = player.play(); 1893 1894 if (playPromise !== undefined) { 1895 playPromise.catch(function () { 1896 console.log("Autoplay was blocked by the browser."); 1897 }); 1898 } 1899 }); 1900 }); 1901</script>
1901</div><div class="video_embed w-embed"><div class="custom-plyr-wrapper"> 1902 <video 1903 class="js-plyr-video" 1904 autoplay 1905 muted 1906 loop 1907 playsinline 1908 preload="metadata" 1909 data-poster="" 1910 > 1911 <source data-src="https://resource.memories.ai/portal/0808img/introduction_video.mp4" data-wf-ignore="true"> 1912 Your browser does not support the video tag. 1913 </video> 1914</div></div></div></div></div></div></div></div></section><section class="section_research"><div class="padding-global"><div class="container-large"><div class="research_wrapper"><div class="research_layout"><div class="research_content"><div class="research_bg-container"><div class="research_bg"></div></div><div class="mw-medium"><h2 class="t-heading-2-md">Built on research,<br/>not buzzwords.</h2></div><div class="mw-small"><p class="t-paragraph-1-rg t-heading-5-rg c-gray-700">Memories.ai began at Cambridge with a single thesis: visual memory deserves its own field.</p></div><a data-wf--btn--variant="default" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="/research" class="btn is-default w-inline-block"><div class="btn_wrapper"><div class="t-paragraph-1-rg">Read all Publications</div><div class="btn_icon is-gray-violet"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1915<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1916</svg> 1917</div></div></div><div class="button-gradient"></div></a></div><div class="research_cards-wrapper research-bg_box"><div class="swiper is-research w-dyn-list"><div role="list" class="swiper-wrapper is-research w-dyn-items"><div role="listitem" class="swiper-slide is-research w-dyn-item"><a aria-label="single news" data-w-id="400441a0-ba04-03ea-0c63-05fc8c54f70c" href="/research/magic-video" class="news_card w-inline-block"><div class="news_card-img"><img src="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6ab488b9c06337628c44cc3f_6ab48869de267ce6c7b888da_lilac-mist-16x10-1200.webp" loading="lazy" alt="MAGIC-Video: Structured Memory for Ultra-Long Agentic Video Reasoning" class="card_image"/></div><div class="card_footer"><p class="t-paragraph-1-rg">MAGIC-Video: Structured Memory for Ultra-Long Agentic Video Reasoning</p><div class="btn_icon is-gray-btn"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1918<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1919</svg> 1920</div></div></div></a></div><div role="listitem" class="swiper-slide is-research w-dyn-item"><a aria-label="single news" data-w-id="400441a0-ba04-03ea-0c63-05fc8c54f70c" href="/research/spatialmem" class="news_card w-inline-block"><div class="news_card-img"><img src="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6ab488b9c06337628c44cc47_6ab488691be9bd99bd8a17a6_amethyst-16x10-1200.webp" loading="lazy" alt="SpatialMem: Metric-Aligned Long-Horizon Video Memory for Language Grounding and QA" class="card_image"/></div><div class="card_footer"><p class="t-paragraph-1-rg">SpatialMem: Metric-Aligned Long-Horizon Video Memory for Language Grounding and QA</p><div class="btn_icon is-gray-btn"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1921<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1922</svg> 1923</div></div></div></a></div><div role="listitem" class="swiper-slide is-research w-dyn-item"><a aria-label="single news" data-w-id="400441a0-ba04-03ea-0c63-05fc8c54f70c" href="/research/o-marc" class="news_card w-inline-block"><div class="news_card-img"><img src="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6ab488b9c06337628c44cc3c_6ab48869a5581afb8b3adddf_twilight-16x10-1200.webp" loading="lazy" alt="O-MARC: Omni Memory-Augmented Compression Distillation for Efficient Video Understanding" class="card_image"/></div><div class="card_footer"><p class="t-paragraph-1-rg">O-MARC: Omni Memory-Augmented Compression Distillation for Efficient Video Understanding</p><div class="btn_icon is-gray-btn"><div class="icon-embed-8 w-embed">
1923<svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1924<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1925</svg> 1926</div></div></div></a></div><div role="listitem" class="swiper-slide is-research w-dyn-item"><a aria-label="single news" data-w-id="400441a0-ba04-03ea-0c63-05fc8c54f70c" href="/research/omniretriever" class="news_card w-inline-block"><div class="news_card-img"><img src="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6ab488b9c06337628c44cc44_6ab4886959e0ce7b09f927f9_violet-sage-16x10-1200.webp" loading="lazy" alt="OmniRetriever: Any-to-Any Audio-Video-Text Retrieval via Fusion-as-Teacher Distillation" class="card_image"/></div><div class="card_footer"><p class="t-paragraph-1-rg">OmniRetriever: Any-to-Any Audio-Video-Text Retrieval via Fusion-as-Teacher Distillation</p><div class="btn_icon is-gray-btn"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1927<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1928</svg> 1929</div></div></div></a></div><div role="listitem" class="swiper-slide is-research w-dyn-item"><a aria-label="single news" data-w-id="400441a0-ba04-03ea-0c63-05fc8c54f70c" href="/research/marc" class="news_card w-inline-block"><div class="news_card-img"><img src="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a427739d9a66517e5f82071_Cover-03-min.webp" loading="lazy" alt="MARC: Memory-Augmented RL Token Compression for Efficient Video Understanding" sizes="100vw" srcset="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a427739d9a66517e5f82071_Cover-03-min-p-500.webp 500w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a427739d9a66517e5f82071_Cover-03-min-p-800.webp 800w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a427739d9a66517e5f82071_Cover-03-min-p-1080.webp 1080w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a427739d9a66517e5f82071_Cover-03-min.webp 1400w" class="card_image"/></div><div class="card_footer"><p class="t-paragraph-1-rg">MARC: Memory-Augmented RL Token Compression for Efficient Video Understanding</p><div class="btn_icon is-gray-btn"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1930<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1931</svg> 1932</div></div></div></a></div><div role="listitem" class="swiper-slide is-research w-dyn-item"><a aria-label="single news" data-w-id="400441a0-ba04-03ea-0c63-05fc8c54f70c" href="/research/ugc-videocaptioner" class="news_card w-inline-block"><div class="news_card-img"><img src="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42777045bad9f3476dd718_Cover-07-min.webp" loading="lazy" alt="UGC-VideoCaptioner: An Omni UGC Video Detail Caption Model and New Benchmarks" sizes="100vw" srcset="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42777045bad9f3476dd718_Cover-07-min-p-500.webp 500w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42777045bad9f3476dd718_Cover-07-min-p-800.webp 800w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42777045bad9f3476dd718_Cover-07-min-p-1080.webp 1080w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42777045bad9f3476dd718_Cover-07-min.webp 1400w" class="card_image"/></div><div class="card_footer"><p class="t-paragraph-1-rg">UGC-VideoCaptioner: An Omni UGC Video Detail Caption Model and New Benchmarks</p><div class="btn_icon is-gray-btn"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1933<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1934</svg> 1935</div></div></div></a></div><div role="listitem" class="swiper-slide is-research w-dyn-item"><a aria-label="single news" data-w-id="400441a0-ba04-03ea-0c63-05fc8c54f70c" href="/research/camera" class="news_card w-inline-block"><div class="news_card-img"><img src="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42774bd125ad8126d2986b_Cover-04-min.webp" loading="lazy" alt="Memories-S0: An Efficient and Accurate Framework for Security Video Understanding" sizes="100vw" srcset="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42774bd125ad8126d2986b_Cover-04-min-p-500.webp 500w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42774bd125ad8126d2986b_Cover-04-min-p-800.webp 800w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42774bd125ad8126d2986b_Cover-04-min-p-1080.webp 1080w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a42774bd125ad8126d2986b_Cover-04-min.webp 1400w" class="card_image"/></div><div class="card_footer"><p class="t-paragraph-1-rg">Memories-S0: An Efficient and Accurate Framework for Security Video Understanding</p><div class="btn_icon is-gray-btn"><div class="icon-embed-8 w-embed">
1935<svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1936<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1937</svg> 1938</div></div></div></a></div><div role="listitem" class="swiper-slide is-research w-dyn-item"><a aria-label="single news" data-w-id="400441a0-ba04-03ea-0c63-05fc8c54f70c" href="/research/agentic-video-editing" class="news_card w-inline-block"><div class="news_card-img"><img src="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a4277561c9745153992fcbb_Cover-05-min.webp" loading="lazy" alt="Prompt-Driven Agentic Video Editing System: Autonomous Comprehension of Long-Form, Story-Driven Media" sizes="100vw" srcset="https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a4277561c9745153992fcbb_Cover-05-min-p-500.webp 500w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a4277561c9745153992fcbb_Cover-05-min-p-800.webp 800w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a4277561c9745153992fcbb_Cover-05-min-p-1080.webp 1080w, https://cdn.prod.website-files.com/6a285c529f68b3f8cc485ef9/6a4277561c9745153992fcbb_Cover-05-min.webp 1400w" class="card_image"/></div><div class="card_footer"><p class="t-paragraph-1-rg">Prompt-Driven Agentic Video Editing System: Autonomous Comprehension of Long-Form, Story-Driven Media</p><div class="btn_icon is-gray-btn"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1939<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1940</svg> 1941</div></div></div></a></div></div></div><div class="research_arrows"><a id="research-btn-prev" aria-label="prev-slide" href="#" class="research_link-box w-inline-block"><div class="icon-embed-12 is-nav w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1942<path d="M7 10.823L2.26288 6L7 1.17697L5.84369 0L2.38419e-07 6L5.84369 12L7 10.823Z" fill="currentColor"/> 1943</svg> 1944</div></a><a id="research-btn-next" aria-label="next-slider" href="#" class="research_link-box w-inline-block"><div class="icon-embed-12 is-nav w-embed"><svg width="100%" height="100%" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"> 1945<path d="M5 10.823L9.73712 6L5 1.17697L6.15631 0L12 6L6.15631 12L5 10.823Z" fill="currentColor"/> 1946</svg> 1947</div></a></div><div class="hide w-embed w-script"><style> 1948 .research_link-box.swiper-button-disabled{ 1949 opacity: 50%; 1950 pointer-events: none; 1951 } 1952</style>
1953<script> 1954 document.addEventListener("DOMContentLoaded", function() { 1955 var swiper; 1956 function swiperInit() { 1957 swiper = new Swiper(".swiper.is-research", { 1958 direction: "horizontal", 1959 slidesPerView: 1, 1960 spaceBetween: 8, 1961 speed: 700, 1962 navigation: { 1963 nextEl: '#research-btn-next', //it can allso be class .x or comboclass .x.y 1964 prevEl: '#research-btn-prev', 1965 }, 1966 breakpoints: { 1967 // when window width is >= 320px 1968 320: { 1969 slidesPerView: 1, 1970 spaceBetween: 8 1971 }, 1972 // when window width is >= 480px 1973 480: { 1974 slidesPerView: "auto", 1975 spaceBetween: 16 1976 }, 1977 // when window width is >= 640px 1978 640: { 1979 slidesPerView: "auto", 1980 spaceBetween: 16 1981 } 1982 } 1983 }); 1984 } 1985 swiperInit(); 1986}); 1987</script>
1987</div></div></div></div></div></div></section><section data-wf--section_footer--variant="base" class="section_footer"><div class="footer_bg"></div><div class="padding-global"><div class="container-large"><div class="footer_wrapper"><div class="cta_inner"><div class="footer_cta-top"><div class="mw-medium"><h2 class="t-heading-2-md">Ready to build<br/>with visual memory?</h2></div><div class="cta_top-right"><div class="mw-small"><p class="t-paragraph-1-rg">Whether you are integrating our infrastructure into your platform or exploring LUCI for your team, we are here to help.</p></div><div class="luci_buttons"><a data-wf--btn--variant="default" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="https://memories.ai/app" target="_blank" class="btn is-default w-inline-block"><div class="btn_wrapper"><div class="t-paragraph-1-rg">Try now</div><div class="btn_icon is-gray-violet"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1988<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1989</svg> 1990</div></div></div><div class="button-gradient"></div></a><a data-wf--btn--variant="primary" data-w-id="114a2f09-0bd6-258c-9b1d-72f0a4151594" href="/contact-sales" class="btn is-default w-inline-block"><div class="btn_wrapper w-variant-5e0ec0ff-49c5-1981-6517-216b7daf5b7d"><div class="t-paragraph-1-rg">Contact Sales</div><div class="btn_icon is-gray-violet w-variant-5e0ec0ff-49c5-1981-6517-216b7daf5b7d"><div class="icon-embed-8 w-embed"><svg width="100%" height="100%" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg"> 1991<path d="M4.26196 6.80798H3.36065V4.25535H0.808014V3.35404H3.36065V0.807983H4.26196V3.35404H6.80801V4.25535H4.26196V6.80798Z" fill="currentColor"/> 1992</svg> 1993</div></div></div><div class="button-gradient w-variant-5e0ec0ff-49c5-1981-6517-216b7daf5b7d"></div></a></div></div></div><div class="footer_bottom-part"><div class="footer_main"><div class="footer_brand"><a href="#" class="footer_logo-link w-inline-block"><div class="footer_logo w-embed"><svg width="100%" height="100%" viewBox="0 0 41 48" fill="none" xmlns="http://www.w3.org/2000/svg"> 1994<path d="M41 11.3086V48L22.4566 40.9383L33.9364 8.54795L41 11.3086ZM33.2625 0L22.8123 29.5802L0 29.5308L26.487 0H33.2625Z" fill="currentColor"/> 1995</svg> 1996</div></a><div class="mw-extra-small"><p class="t-heading-5-rg">The multimodal memory infrastructure for AI</p></div></div><div class="footer_nav"><div class="footer_col"><p class="t-label-1-md opacity-70">Solution</p><div class="footer_col-list"><a href="/solution" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Solution Overview</div></a><a href="/media" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Media & Entertainment</div></a><a href="/security" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Security & Safety</div></a><a href="/robot" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Robotics & Physical AI</div></a></div></div><div class="footer_col"><p class="t-label-1-md opacity-70">Developers</p><div class="footer_col-list"><a href="https://memories.ai/app/login?redirectUrl=https://api-platform.memories.ai/?utm_source%3Dheader%26_gl%3D1*1aznpr9*_gcl_au*MTY1NTkwMzQ3Ny4xNzgwMDQwMzMx*_ga*MTgzMjQyMjE3Ni4xNzgwMDQwMzMx*_ga_Q3L9MFWM5F*czE3ODMwOTE4MzckbzYxJGcxJHQxNzgzMDkyMDkyJGo2MCRsMCRoOTgyMzQzNjg5" target="_blank" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">API Platform</div><div class="icon-embed-5 is-abs w-embed"><svg width="100%" height="100%" viewBox="0 0 5 5" fill="none" xmlns="http://www.w3.org/2000/svg"> 1997<line x1="4.5" y1="2.18557e-08" x2="4.5" y2="5" stroke-width="1" stroke="currentColor"/> 1998<line x1="5" y1="0.5" x2="-2.68229e-08" y2="0.499999" stroke-width="1" stroke="currentColor"/> 1999</svg> 2000</div></a><a href="https://docs.memories.ai/" target="_blank" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">API Docs</div><div class="icon-embed-5 is-abs w-embed">
2000<svg width="100%" height="100%" viewBox="0 0 5 5" fill="none" xmlns="http://www.w3.org/2000/svg"> 2001<line x1="4.5" y1="2.18557e-08" x2="4.5" y2="5" stroke-width="1" stroke="currentColor"/> 2002<line x1="5" y1="0.5" x2="-2.68229e-08" y2="0.499999" stroke-width="1" stroke="currentColor"/> 2003</svg> 2004</div></a><a href="/pricing" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Pricing</div></a></div></div><div class="footer_col"><p class="t-label-1-md opacity-70">Resources</p><div class="footer_col-list"><a href="/blogs" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Blog</div></a><a href="/research" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Publications</div></a><a href="https://github.com/Memories-ai-labs" target="_blank" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">GitHub</div><div class="icon-embed-5 is-abs w-embed"><svg width="100%" height="100%" viewBox="0 0 5 5" fill="none" xmlns="http://www.w3.org/2000/svg"> 2005<line x1="4.5" y1="2.18557e-08" x2="4.5" y2="5" stroke-width="1" stroke="currentColor"/> 2006<line x1="5" y1="0.5" x2="-2.68229e-08" y2="0.499999" stroke-width="1" stroke="currentColor"/> 2007</svg> 2008</div></a><a href="/tools" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Tools</div></a><a href="/luci" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Project LUCI</div></a></div></div><div class="footer_col"><p class="t-label-1-md opacity-70">Company</p><div class="footer_col-list"><a href="/about" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">About Us</div></a><a href="/careers" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Careers</div></a><a href="/press" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Press</div></a><a href="/contact-sales" class="footer_link w-inline-block"><div class="t-paragraph-1-rg">Contact Sales</div></a><a href="https://trust.memories.ai/" target="_blank" class="footer_link w-inline-block"><div he="https://trust.memories.ai/" class="t-paragraph-1-rg">Trust Center</div></a></div></div></div></div><div class="footer_bottom"><p class="t-label-1-md c-white">© memories.ai</p><div class="footer_left-part"><div class="footer_legal"><a href="/legal/privacy" class="footer_link w-inline-block"><div class="t-label-1-md c-white">Privacy Policy</div></a><a href="/legal/terms-of-service" class="footer_link w-inline-block"><div class="t-label-1-md c-white">Terms of Service</div></a><a href="/legal/api-use-policy" class="footer_link w-inline-block"><div class="t-label-1-md c-white">API Use Policy</div></a></div></div></div></div></div></div></div></div></section></main></div>
2008<script src="https://d3e54v103j8qbb.cloudfront.net/js/jquery-3.5.1.min.dc5e7f18c8.js?site=6a26a66c0461307a4feed480" type="text/javascript" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
2008<script src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/js/webflow.schunk.b36de0610a35aa79.js" type="text/javascript" integrity="sha384-bOZ0zosqGRfOla7kqUultK9km3dXI3K5kOn6mDnozBPY/ZGl9/GKllrjZ0EdPONC" crossorigin="anonymous"></script>
2008<script src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/js/webflow.schunk.3140c3e327c01c20.js" type="text/javascript" integrity="sha384-vuz7dDECI+HszEpB8wrezonU63Qd8tILX+TIgwTf3Ay2Erbtmv69a/8wnlYyIOy9" crossorigin="anonymous"></script>
2008<script src="https://cdn.prod.website-files.com/6a26a66c0461307a4feed480/js/webflow.10d865dd.0e1972ba4b9ce8f5.js" type="text/javascript" integrity="sha384-Z/uSXJs6SJdY22ol3JMx82QceNvs3CkEQ48pZgWpq91MKuq3LwRadSpG+HLJ0/hL" crossorigin="anonymous"></script>
2008<script src="https://cdn.prod.website-files.com/gsap/3.15.0/gsap.min.js" type="text/javascript"></script>
2008<script src="https://cdn.prod.website-files.com/gsap/3.15.0/ScrollTrigger.min.js" type="text/javascript"></script>
2008<script src="https://cdn.prod.website-files.com/gsap/3.15.0/SplitText.min.js" type="text/javascript"></script>
2008<script type="text/javascript">gsap.registerPlugin(ScrollTrigger,SplitText);</script>
2008<script defer src="https://cdn.jsdelivr.net/npm/swiper@12/swiper-bundle.min.js"></script>
2008 2009<!-- Flowbase Booster [Count Up] -->
2010<script src="https://cdn.jsdelivr.net/npm/@flowbase-co/[email protected]/dist/countup.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 2010
2010
2011<script> 2012document.addEventListener("DOMContentLoaded", function () { 2013 const navbar = document.querySelector(".navbar_component"); 2014 const announcementBar = document.querySelector(".announcemnet-bar-wrapper"); 2015 2016 if (!navbar) return; 2017 2018 let isScrolled = null; 2019 2020 function updateNavbar() { 2021 const shouldBeScrolled = window.scrollY > 50; 2022 2023 // Zapobiega ponownemu uruchamianiu animacji przy każdym pikselu scrolla 2024 if (shouldBeScrolled === isScrolled) return; 2025 2026 isScrolled = shouldBeScrolled; 2027 navbar.classList.toggle("scrolled", shouldBeScrolled); 2028 2029 // Announcement bar jest opcjonalny 2030 if (!announcementBar) return; 2031 2032 gsap.to(announcementBar, { 2033 height: shouldBeScrolled ? 0 : "auto", 2034 opacity: shouldBeScrolled ? 0 : 1, 2035 duration: 0.35, 2036 ease: "power2.inOut", 2037 overwrite: true 2038 }); 2039 } 2040 2041 updateNavbar(); 2042 2043 window.addEventListener("scroll", updateNavbar, { 2044 passive: true 2045 }); 2046}); 2047</script>
vendor: 1 bytes, line 2047
2047
2048<script> 2049(() => { 2050 let initialized = false; 2051 2052 function initLettersAnimation() { 2053 // Prevent double initialization 2054 if (initialized) return; 2055 2056 // Wait until GSAP + ScrollTrigger are available 2057 if ( 2058 typeof gsap === "undefined" || 2059 typeof ScrollTrigger === "undefined" 2060 ) { 2061 setTimeout(initLettersAnimation, 50); 2062 return; 2063 } 2064 2065 initialized = true; 2066 2067 gsap.registerPlugin(ScrollTrigger); 2068 2069 // Add required CSS 2070 if (!document.querySelector("#letters-animation-styles")) { 2071 const style = document.createElement("style"); 2072 2073 style.id = "letters-animation-styles"; 2074 2075 style.textContent = ` 2076 [text-letters-animation] .word { 2077 display: inline-block; 2078 white-space: nowrap; 2079 } 2080 2081 [text-letters-animation] .char { 2082 display: inline-block; 2083 } 2084 `; 2085 2086 document.head.appendChild(style); 2087 } 2088 2089 function createWord(wordText) { 2090 const wordSpan = document.createElement("span"); 2091 wordSpan.classList.add("word"); 2092 2093 wordText.split("").forEach((char) => { 2094 const charSpan = document.createElement("span"); 2095 2096 charSpan.classList.add("char"); 2097 charSpan.textContent = char; 2098 2099 wordSpan.appendChild(charSpan); 2100 }); 2101 2102 return wordSpan; 2103 } 2104 2105 function splitTextNodeIntoWords(node) { 2106 const fragment = document.createDocumentFragment(); 2107 2108 const parts = node.textContent.split(/(\s+)/); 2109 2110 parts.forEach((part) => { 2111 if (part.trim() === "") { 2112 fragment.appendChild( 2113 document.createTextNode(part) 2114 ); 2115 } else { 2116 fragment.appendChild( 2117 createWord(part) 2118 ); 2119 } 2120 }); 2121 2122 node.replaceWith(fragment); 2123 } 2124 2125 function splitElementTextIntoWords(el) { 2126 const text = el.textContent; 2127 2128 el.textContent = ""; 2129 2130 const parts = text.split(/(\s+)/); 2131 2132 parts.forEach((part) => { 2133 if (part.trim() === "") { 2134 el.appendChild( 2135 document.createTextNode(part) 2136 ); 2137 } else { 2138 el.appendChild( 2139 createWord(part) 2140 ); 2141 } 2142 }); 2143 } 2144 2145 function splitTextIntoChars(el) { 2146 // Don't split element twice 2147 if (el.dataset.lettersSplit === "true") { 2148 return; 2149 } 2150 2151 const nodes = Array.from(el.childNodes); 2152 2153 nodes.forEach((node) => { 2154 // Normal text node 2155 if (node.nodeType === Node.TEXT_NODE) { 2156 splitTextNodeIntoWords(node); 2157 } 2158 2159 // Preserve basic nested formatting 2160 if ( 2161 node.nodeType === Node.ELEMENT_NODE && 2162 ["EM", "I", "STRONG", "B", "SPAN"].includes( 2163 node.tagName 2164 ) 2165 ) { 2166 splitElementTextIntoWords(node); 2167 } 2168 }); 2169 2170 el.dataset.lettersSplit = "true"; 2171 } 2172 2173 function getAnimationConfig(el) { 2174 const variant = el.getAttribute( 2175 "text-letters-animation" 2176 ); 2177 2178 // Dark version 2179 if (variant === "dark") { 2180 return { 2181 initialColor: "#FFFFFF", 2182 finalColor: "#FFFFFF", 2183 2184 colorSteps: [ 2185 "#FFFFFF", 2186 "#F6FFC3", 2187 "#FFDB88", 2188 "#DE7341", 2189 "#6F2E0A", 2190 "#000000", 2191 "#FFFFFF", 2192 ], 2193 }; 2194 } 2195 2196 // Default / light version 2197 return { 2198 initialColor: "#DDDDDD", 2199 finalColor: "#231D2E", 2200 2201 colorSteps: [ 2202 "#E1D6C9", 2203 "#B5D996", 2204 "#85CDC9", 2205 "#7A7BDC", 2206 "#3A167B", 2207 "#231D2E", 2208 ], 2209 }; 2210 } 2211 2212 function animateLetters(el) { 2213 // Split text first 2214 splitTextIntoChars(el); 2215 2216 const chars = Array.from( 2217 el.querySelectorAll(".char") 2218 ); 2219 2220 if (!chars.length) return; 2221 2222 /** 2223 * Animation controls 2224 */ 2225 const totalInitialAnimationTime = 1.5; 2226 const stepDuration = 0.05; 2227 2228 const config = getAnimationConfig(el); 2229 2230 const totalStepsTime = 2231 config.colorSteps.length * 2232 stepDuration; 2233 2234 const stagger = 2235 chars.length > 1 2236 ? Math.max( 2237 0, 2238 ( 2239 totalInitialAnimationTime - 2240 totalStepsTime 2241 ) / 2242 (chars.length - 1) 2243 ) 2244 : 0; 2245 2246 /** 2247 * Initial state 2248 */ 2249 gsap.set(chars, { 2250 opacity: 0.3, 2251 2252 color: config.initialColor, 2253 2254 backgroundImage: "none", 2255 backgroundClip: "border-box",
2256 WebkitBackgroundClip: "border-box", 2257 2258 WebkitTextFillColor: "currentColor", 2259 }); 2260 2261 /** 2262 * Animation timeline 2263 */ 2264 const tl = gsap.timeline({ 2265 scrollTrigger: { 2266 trigger: el, 2267 start: "top 80%", 2268 once: true, 2269 }, 2270 }); 2271 2272 chars.forEach((char, i) => { 2273 const offset = i * stagger; 2274 2275 config.colorSteps.forEach( 2276 (color, stepIndex) => { 2277 tl.to( 2278 char, 2279 { 2280 opacity: 1, 2281 2282 color: color, 2283 2284 WebkitTextFillColor: 2285 "currentColor", 2286 2287 duration: stepDuration, 2288 2289 ease: "power2.out", 2290 }, 2291 2292 offset + 2293 stepIndex * 2294 stepDuration 2295 ); 2296 } 2297 ); 2298 }); 2299 } 2300 2301 /** 2302 * Find and initialize all elements 2303 */ 2304 document 2305 .querySelectorAll( 2306 "[text-letters-animation]" 2307 ) 2308 .forEach((el) => { 2309 animateLetters(el); 2310 }); 2311 2312 /** 2313 * Refresh ScrollTrigger after fonts load 2314 */ 2315 if ( 2316 document.fonts && 2317 document.fonts.ready 2318 ) { 2319 document.fonts.ready.then(() => { 2320 ScrollTrigger.refresh(); 2321 }); 2322 } else { 2323 ScrollTrigger.refresh(); 2324 } 2325 } 2326 2327 /** 2328 * Safe initialization 2329 * 2330 * If window.load already happened, 2331 * run immediately. 2332 * 2333 * Otherwise wait for window.load. 2334 */ 2335 if (document.readyState === "complete") { 2336 initLettersAnimation(); 2337 } else { 2338 window.addEventListener( 2339 "load", 2340 initLettersAnimation, 2341 { 2342 once: true, 2343 } 2344 ); 2345 } 2346})(); 2347</script>
vendor: 1 bytes, line 2347
2347
2348<script defer src="https://cdn.prod.website-files.com/6a602d2cbb7b4ed31c6e46e1%2F689e5ba67671442434f3ca35%2F6a61c92f853e51295de45c0a%2Fpseo_navbar_hide_on_scroll-1.0.3.js"></script>
vendor: 1 bytes, line 2348
2348
2349<script src="https://cdn.plyr.io/3.7.8/plyr.polyfilled.js"></script>
vendor: 1 bytes, line 2349
2349
2350<script> 2351 document.addEventListener('DOMContentLoaded', function() { 2352 const isDesktop = window.matchMedia('(min-width: 768px)').matches; 2353 if (!isDesktop) return; 2354 2355 gsap.registerPlugin(ScrollTrigger); 2356 2357 function initLazyPlayPauseVideoSections() { 2358 const sections = document.querySelectorAll('[data-video-section="true"]'); 2359 if (!sections.length) return; 2360 2361 const loadVideo = (video) => { 2362 if (video.dataset.loaded === 'true') return; 2363 2364 const sources = video.querySelectorAll('source[data-src]'); 2365 2366 sources.forEach(source => { 2367 source.src = source.dataset.src; 2368 }); 2369 2370 video.load(); 2371 video.dataset.loaded = 'true'; 2372 }; 2373 2374 const playVideo = (video) => { 2375 loadVideo(video); 2376 2377 video.play().catch(() => { 2378 // Autoplay can be blocked in some cases 2379 }); 2380 }; 2381 2382 const pauseVideo = (video) => { 2383 video.pause(); 2384 }; 2385 2386 sections.forEach(section => { 2387 const videos = section.querySelectorAll('video'); 2388 if (!videos.length) return; 2389 2390 const playSectionVideos = () => { 2391 videos.forEach(video => { 2392 playVideo(video); 2393 }); 2394 }; 2395 2396 const pauseSectionVideos = () => { 2397 videos.forEach(video => { 2398 pauseVideo(video); 2399 }); 2400 }; 2401 2402 ScrollTrigger.create({ 2403 trigger: section, 2404 start: '0% 100%', 2405 end: '100% 0%', 2406 onEnter: playSectionVideos, 2407 onEnterBack: playSectionVideos, 2408 onLeave: pauseSectionVideos, 2409 onLeaveBack: pauseSectionVideos, 2410 }); 2411 }); 2412 } 2413 2414 initLazyPlayPauseVideoSections(); 2415 }); 2416</script>
vendor: 1 bytes, line 2416
2416
2417<script> 2418/* Mobile assets animation */ 2419 2420(function () { 2421 const SELECTOR = '[data-mobile-scroll]'; // elements to watch 2422 const ATTR_CLASS = 'data-active-class'; // combo class to add (read per element) 2423 const MQ = '(max-width: 991px)'; // smaller than 992px only 2424 const LINE = 0.7; // trigger when element top hits 70% of viewport 2425 const ONCE = true; // add once and stop (set false to toggle on scroll out) 2426 2427 const els = Array.from(document.querySelectorAll(SELECTOR)); 2428 if (!els.length) return; 2429 2430 const mq = window.matchMedia(MQ); 2431 let observer = null; 2432 2433 const classesOf = (el) => (el.getAttribute(ATTR_CLASS) || '').trim().split(/\s+/).filter(Boolean); 2434 2435 function enable() { 2436 if (observer) return; 2437 observer = new IntersectionObserver((entries) => { 2438 entries.forEach((entry) => { 2439 const cls = classesOf(entry.target); 2440 if (!cls.length) return; 2441 if (entry.isIntersecting) { 2442 entry.target.classList.add(...cls); 2443 if (ONCE) observer.unobserve(entry.target); 2444 } else if (!ONCE) { 2445 entry.target.classList.remove(...cls); 2446 } 2447 }); 2448 }, { 2449 root: null, 2450 // bottom margin pulls the trigger line up to 70% of viewport height 2451 rootMargin: '0px 0px -' + Math.round((1 - LINE) * 100) + '% 0px', 2452 threshold: 0, 2453 }); 2454 els.forEach((el) => observer.observe(el)); 2455 } 2456 2457 function disable() { 2458 if (observer) { observer.disconnect(); observer = null; } 2459 // strip the class above the breakpoint so desktop is never affected 2460 els.forEach((el) => { const c = classesOf(el); if (c.length) el.classList.remove(...c); }); 2461 } 2462 2463 const sync = () => (mq.matches ? enable() : disable()); 2464 sync(); 2465 mq.addEventListener ? mq.addEventListener('change', sync) : mq.addListener(sync); // react to resize/rotate 2466})(); 2467</script>
vendor: 1 bytes, line 2467
2467
2468<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a40a8f21885298b8',t:'MTc5MDM0NDg2OA=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
2468</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.