CINXE.COM

Redis for AI - Redis

<!doctype html> <html lang="en"> <head> <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> <style>img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px }</style> <!-- This site is optimized with the Yoast SEO plugin v24.1 - https://yoast.com/wordpress/plugins/seo/ --> <title>Redis for AI - Redis</title> <link rel="canonical" href="https://redis.io/redis-for-ai/" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Redis for AI - Redis" /> <meta property="og:description" content="Improve RAG &amp; search with the world’s fastest vector database Get more accurate answers using retrieval-augmented generation (RAG), get the fastest responses on the market, and work with top ecosystem partners like LangChain and LlamaIndex. See our benchmarks Personalize AI responses with long-term memory LLMs don’t retain recent history, which can cause awkward interactions. We [&hellip;]" /> <meta property="og:url" content="https://redis.io/redis-for-ai/" /> <meta property="og:site_name" content="Redis" /> <meta property="article:publisher" content="https://www.facebook.com/Redisinc" /> <meta property="article:modified_time" content="2025-04-03T21:33:21+00:00" /> <meta property="og:image" content="https://redis.io/wp-content/uploads/2024/04/Redis_Website_PreviewCard_920x612px.png" /> <meta property="og:image:width" content="920" /> <meta property="og:image:height" content="612" /> <meta property="og:image:type" content="image/png" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@Redisinc" /> <script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://redis.io/redis-for-ai/","url":"https://redis.io/redis-for-ai/","name":"Redis for AI - Redis","isPartOf":{"@id":"https://redis.io/#website"},"primaryImageOfPage":{"@id":"https://redis.io/redis-for-ai/#primaryimage"},"image":{"@id":"https://redis.io/redis-for-ai/#primaryimage"},"thumbnailUrl":"https://redis.io/wp-content/uploads/2025/02/Redis-for-AI_hero_1440x644px-1.svg","datePublished":"2024-08-23T13:52:03+00:00","dateModified":"2025-04-03T21:33:21+00:00","breadcrumb":{"@id":"https://redis.io/redis-for-ai/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://redis.io/redis-for-ai/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https://redis.io/redis-for-ai/#primaryimage","url":"https://redis.io/wp-content/uploads/2025/02/Redis-for-AI_hero_1440x644px-1.svg","contentUrl":"https://redis.io/wp-content/uploads/2025/02/Redis-for-AI_hero_1440x644px-1.svg"},{"@type":"BreadcrumbList","@id":"https://redis.io/redis-for-ai/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://redis.io/"},{"@type":"ListItem","position":2,"name":"Redis for AI"}]},{"@type":"WebSite","@id":"https://redis.io/#website","url":"https://redis.io/","name":"Redis","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://redis.io/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}</script> <!-- / Yoast SEO plugin. --> <link rel='dns-prefetch' href='//code.jquery.com' /> <link rel='dns-prefetch' href='//redis.io' /> <link rel='dns-prefetch' href='//cdn.jsdelivr.net' /> <link rel='dns-prefetch' href='//cdnjs.cloudflare.com' /> <link rel='stylesheet' id='wp-block-library-css' href='https://redis.io/wp-includes/css/dist/block-library/style.min.css?ver=6.7.1' type='text/css' media='all' /> <style id='wp-block-library-theme-inline-css' type='text/css'> .wp-block-audio :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-audio :where(figcaption){color:#ffffffa6}.wp-block-audio{margin:0 0 1em}.wp-block-code{border:1px solid #ccc;border-radius:4px;font-family:Menlo,Consolas,monaco,monospace;padding:.8em 1em}.wp-block-embed :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-embed :where(figcaption){color:#ffffffa6}.wp-block-embed{margin:0 0 1em}.blocks-gallery-caption{color:#555;font-size:13px;text-align:center}.is-dark-theme .blocks-gallery-caption{color:#ffffffa6}:root :where(.wp-block-image figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme :root :where(.wp-block-image figcaption){color:#ffffffa6}.wp-block-image{margin:0 0 1em}.wp-block-pullquote{border-bottom:4px solid;border-top:4px solid;color:currentColor;margin-bottom:1.75em}.wp-block-pullquote cite,.wp-block-pullquote footer,.wp-block-pullquote__citation{color:currentColor;font-size:.8125em;font-style:normal;text-transform:uppercase}.wp-block-quote{border-left:.25em solid;margin:0 0 1.75em;padding-left:1em}.wp-block-quote cite,.wp-block-quote footer{color:currentColor;font-size:.8125em;font-style:normal;position:relative}.wp-block-quote:where(.has-text-align-right){border-left:none;border-right:.25em solid;padding-left:0;padding-right:1em}.wp-block-quote:where(.has-text-align-center){border:none;padding-left:0}.wp-block-quote.is-large,.wp-block-quote.is-style-large,.wp-block-quote:where(.is-style-plain){border:none}.wp-block-search .wp-block-search__label{font-weight:700}.wp-block-search__button{border:1px solid #ccc;padding:.375em .625em}:where(.wp-block-group.has-background){padding:1.25em 2.375em}.wp-block-separator.has-css-opacity{opacity:.4}.wp-block-separator{border:none;border-bottom:2px solid;margin-left:auto;margin-right:auto}.wp-block-separator.has-alpha-channel-opacity{opacity:1}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:100px}.wp-block-separator.has-background:not(.is-style-dots){border-bottom:none;height:1px}.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots){height:2px}.wp-block-table{margin:0 0 1em}.wp-block-table td,.wp-block-table th{word-break:normal}.wp-block-table :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table :where(figcaption){color:#ffffffa6}.wp-block-video :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-video :where(figcaption){color:#ffffffa6}.wp-block-video{margin:0 0 1em}:root :where(.wp-block-template-part.has-background){margin-bottom:0;margin-top:0;padding:1.25em 2.375em} </style> <style id='filebird-block-filebird-gallery-style-inline-css' type='text/css'> ul.filebird-block-filebird-gallery{margin:auto!important;padding:0!important;width:100%}ul.filebird-block-filebird-gallery.layout-grid{display:grid;grid-gap:20px;align-items:stretch;grid-template-columns:repeat(var(--columns),1fr);justify-items:stretch}ul.filebird-block-filebird-gallery.layout-grid li img{border:1px solid #ccc;box-shadow:2px 2px 6px 0 rgba(0,0,0,.3);height:100%;max-width:100%;-o-object-fit:cover;object-fit:cover;width:100%}ul.filebird-block-filebird-gallery.layout-masonry{-moz-column-count:var(--columns);-moz-column-gap:var(--space);column-gap:var(--space);-moz-column-width:var(--min-width);columns:var(--min-width) var(--columns);display:block;overflow:auto}ul.filebird-block-filebird-gallery.layout-masonry li{margin-bottom:var(--space)}ul.filebird-block-filebird-gallery li{list-style:none}ul.filebird-block-filebird-gallery li figure{height:100%;margin:0;padding:0;position:relative;width:100%}ul.filebird-block-filebird-gallery li figure figcaption{background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.3) 70%,transparent);bottom:0;box-sizing:border-box;color:#fff;font-size:.8em;margin:0;max-height:100%;overflow:auto;padding:3em .77em .7em;position:absolute;text-align:center;width:100%;z-index:2}ul.filebird-block-filebird-gallery li figure figcaption a{color:inherit} </style> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--gray: #6d7278;--wp--preset--color--dark-gray: #494c4d;--wp--preset--color--light-gray: #a2a8a8;--wp--preset--color--ui: #dfdfdf;--wp--preset--color--ui-light: #f8f8f8;--wp--preset--color--cloudy: #e6e5e5;--wp--preset--color--smoke: #a7a7a7;--wp--preset--color--chill: #e3ebed;--wp--preset--color--ice: #f7f9fc;--wp--preset--color--navy: #354253;--wp--preset--color--light-navy: #5a697d;--wp--preset--color--red: #CD5D57;--wp--preset--color--orange: #CF5815;--wp--preset--color--dark-orange: #E98125;--wp--preset--color--neon-blue: #1969FF;--wp--preset--color--neon-blue-light: #10BBFE;--wp--preset--color--neon-green: #79e5a6;--wp--preset--color--teal: #14708D;--wp--preset--color--teal-light: #1CA9AB;--wp--preset--color--sky: #54bcfd;--wp--preset--color--baby: #8aa1ee;--wp--preset--color--purple: #5961ff;--wp--preset--color--purple-dark: #282550;--wp--preset--color--violet: #3e41a0;--wp--preset--color--light-violet: #465282;--wp--preset--color--brown: #726a5c;--wp--preset--color--gold: #777436;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 14px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 24px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-size--normal: 18px;--wp--preset--font-size--huge: 36px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} </style> <link rel='prefetch' as='style' id='wp-pagenavi-css' href='https://redis.io/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all' /> <link rel='stylesheet' id='child-theme-style-css' href='https://redis.io/wp-content/themes/redislabs-glide/assets/dist/css/main.min.css?ver=1743802433' type='text/css' media='all' /> <link rel='stylesheet' id='single-css' href='https://redis.io/wp-content/themes/wpx/assets/dist/css/critical/single.css?ver=1743802433' type='text/css' media='all' /> <script type="text/javascript" src="https://code.jquery.com/jquery-3.6.4.min.js?ver=3.6.5" id="jquery-js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/chart.js?ver=4.4.3" id="chartjs-scripts-js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.9.1/gsap.min.js?ver=3.9.1" id="gsap-scripts-js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/ScrollMagic/2.0.8/ScrollMagic.min.js?ver=2.0.8" id="scrollmagic-scripts-js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/ScrollMagic/2.0.8/plugins/animation.gsap.min.js?ver=2.0.8" id="scrollmagic-animation-scripts-js"></script> <script type="text/javascript" src="https://redis.io/wp-content/themes/redislabs-glide/assets/dist/js/benchmark.min.js?ver=1743802433" id="benchmark-scripts-js"></script> <link rel="https://api.w.org/" href="https://redis.io/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://redis.io/wp-json/wp/v2/pages/157889" /><link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://redis.io/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fredis.io%2Fredis-for-ai%2F" /> <link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://redis.io/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fredis.io%2Fredis-for-ai%2F&#038;format=xml" /> <!-- Stream WordPress user activity plugin v4.0.2 --> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-TKZ6J9R');</script> <!-- End Google Tag Manager --> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"><script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"NRJS-1fedf62d6f1beddfa04",applicationID:"650495667"};;/*! For license information please see nr-loader-rum-1.286.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{fn:()=>s,x1:()=>c});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=function(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},5217:(e,t,r)=>{"use strict";r.d(t,{gD:()=>h,xN:()=>m});r(860).K7.genericEvents;const n="experimental.marks",i="experimental.measures",o="experimental.resources",a=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var s=r(2614),c=r(944),u=r(384),d=r(8122);const l="[data-nr-mask]",f=()=>{const e={feature_flags:[],experimental:{marks:!1,measures:!1,resources:!1},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{get capture_marks(){return e.feature_flags.includes(n)||e.experimental.marks},set capture_marks(t){e.experimental.marks=t},get capture_measures(){return e.feature_flags.includes(i)||e.experimental.measures},set capture_measures(t){e.experimental.measures=t},capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:s.wk,inactiveMs:s.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){a(t)?e.mask_selector="".concat(t,",").concat(l):""===t||null===t?e.mask_selector=l:(0,c.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){a(t)?e.block_selector+=",".concat(t):""!==t&&(0,c.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,c.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},spa:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]}}},g={},p="All configuration objects require an agent identifier!";function m(e,t){if(!e)throw new Error(p);g[e]=(0,d.a)(t,f());const r=(0,u.nY)(e);r&&(r.init=g[e])}function h(e,t){if(!e)throw new Error(p);var r=function(e){if(!e)throw new Error(p);if(!g[e])throw new Error("Configuration for ".concat(e," was never set"));return g[e]}(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0,harvester:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,xv:()=>n});const n="1.286.0",i="PROD",o="CDN"},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>c,RI:()=>i,WN:()=>d,bv:()=>o,gm:()=>a,mw:()=>s,sb:()=>u});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s=Boolean("hidden"===a?.document?.visibilityState),c=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=c&&"undefined"==typeof SharedWorker,d=((()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)())},3241:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(6154);const i="newrelic";function o(e={}){try{n.gm.dispatchEvent(new CustomEvent(i,{detail:e}))}catch(e){}}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return g(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),g(e,t)})))}function g(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=g(n),c=m(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:h,listeners:m,context:g,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=m(e).concat(t)}function m(e){return n[e]||[]}function h(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5701:(e,t,r)=>{"use strict";r.d(t,{B:()=>a,t:()=>s});var n=r(7836),i=r(3241);const o=new Set,a={};function s(e,t){const r=n.ee.get(t);a[t]??={},e&&"object"==typeof e&&(o.has(t)||(r.emit("rumresp",[e]),a[t]=e,o.add(t),(0,i.W)({agentIdentifier:t,loaded:!0,drained:!0,type:"lifecycle",name:"load",feature:void 0,data:e})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},993:(e,t,r)=>{"use strict";r.d(t,{A$:()=>o,ET:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o={OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},a="log";n.K7.logging},8154:(e,t,r)=>{"use strict";r.d(t,{z_:()=>o,XG:()=>s,TZ:()=>n,rs:()=>i,xV:()=>a});r(6154),r(9566),r(384);const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{G4:()=>i});var n=r(2614);r(860).K7.sessionReplay;const i={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"};n.g.ERROR,n.g.FULL,n.g.OFF},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7603:(e,t,r)=>{"use strict";r.d(t,{j:()=>V});var n=r(860),i=r(2555),o=r(9908),a=r(1687),s=r(5289),c=r(6154),u=r(944),d=r(8154),l=r(384),f=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","recordCustomEvent","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",f.G4.RECORD,f.G4.PAUSE,"log","wrapLogger"],p=["setErrorHandler","finished","addToTrace","addRelease"];var m=r(1863),h=r(2614),v=r(993);var b=r(7836),y=r(2646),w=r(3434);const R=new Map;function A(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,u.R)(29);const i=function(e){return(e||b.ee).get("logger")}(e),o=(0,w.YM)(i),a=new y.y(b.P);a.level=n.level,a.customAttributes=n.customAttributes;const s=t[r]?.[w.Jt]||t[r];return R.set(s,a),o.inPlace(t,[r],"wrap-logger-",(()=>R.get(s))),i}var E=r(3241),_=r(5701);function x(){const e=(0,l.pV)();g.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.runtime?e.exposed&&e[t]&&"micro-agent"!==e.runtime.loaderType&&n.push(e[t](...r)):(0,u.R)(38,t)})),n[0]}(t,...r)}))}const N={};function I(e,t){t||(0,a.Ak)(e.agentIdentifier,"api");const l=e.ee.get("tracer");N[e.agentIdentifier]=h.g.OFF,e.ee.on(f.G4.REPLAY_RUNNING,(t=>{N[e.agentIdentifier]=t}));const g="api-",b=g+"ixn-";function y(t,r,n,o){const a=e.info;return null===r?delete a.jsAttributes[t]:(0,i.x1)(e.agentIdentifier,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),x(g,n,!0,o||null===r?"session":void 0)(t,r)}function w(){}e.log=function(t,{customAttributes:r={},level:i=v.p_.INFO}={}){(0,o.p)(d.xV,["API/log/called"],void 0,n.K7.metrics,e.ee),function(e,t,r={},i=v.p_.INFO){(0,o.p)(d.xV,["API/logging/".concat(i.toLowerCase(),"/called")],void 0,n.K7.metrics,e),(0,o.p)(v.ET,[(0,m.t)(),t,r,i],void 0,n.K7.logging,e)}(e.ee,t,r,i)},e.wrapLogger=(t,r,{customAttributes:i={},level:a=v.p_.INFO}={})=>{(0,o.p)(d.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,e.ee),A(e.ee,t,r,{customAttributes:i,level:a})},p.forEach((t=>{e[t]=x(g,t,!0,"api")})),e.addPageAction=x(g,"addPageAction",!0,n.K7.genericEvents),e.recordCustomEvent=x(g,"recordCustomEvent",!0,n.K7.genericEvents),e.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),e.runtime.customTransaction=(r||"http://custom.transaction")+t,x(g,"setPageViewName",!0)()},e.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return y(e,t,"setCustomAttribute",r);(0,u.R)(40,typeof t)}else(0,u.R)(39,typeof e)},e.setUserId=function(e){if("string"==typeof e||null===e)return y("enduser.id",e,"setUserId",!0);(0,u.R)(41,typeof e)},e.setApplicationVersion=function(e){if("string"==typeof e||null===e)return y("application.version",e,"setApplicationVersion",!1);(0,u.R)(42,typeof e)},e.start=()=>{try{(0,o.p)(d.xV,["API/start/called"],void 0,n.K7.metrics,e.ee),e.ee.emit("manual-start-all")}catch(e){(0,u.R)(23,e)}},e[f.G4.RECORD]=function(){(0,o.p)(d.xV,["API/recordReplay/called"],void 0,n.K7.metrics,e.ee),(0,o.p)(f.G4.RECORD,[],void 0,n.K7.sessionReplay,e.ee)},e[f.G4.PAUSE]=function(){(0,o.p)(d.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,e.ee),(0,o.p)(f.G4.PAUSE,[],void 0,n.K7.sessionReplay,e.ee)},e.interaction=function(e){return(new w).get("object"==typeof e?e:{})};const R=w.prototype={createTracer:function(t,r){var i={},a=this,s="function"==typeof r;return(0,o.p)(d.xV,["API/createTracer/called"],void 0,n.K7.metrics,e.ee),e.runSoftNavOverSpa||(0,o.p)(b+"tracer",[(0,m.t)(),t,i],a,n.K7.spa,e.ee),function(){if(l.emit((s?"":"no-")+"fn-start",[(0,m.t)(),a,s],i),s)try{return r.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw l.emit("fn-err",[arguments,this,t],i),t}finally{l.emit("fn-end",[(0,m.t)()],i)}}}};function x(t,r,i,a){return function(){return(0,o.p)(d.xV,["API/"+r+"/called"],void 0,n.K7.metrics,e.ee),(0,E.W)({agentIdentifier:e.agentIdentifier,drained:!!_.B?.[e.agentIdentifier],type:"data",name:"api",feature:t+r,data:{notSpa:i,bufferGroup:a}}),a&&(0,o.p)(t+r,[i?(0,m.t)():performance.now(),...arguments],i?null:this,a,e.ee),i?void 0:this}}function I(){r.e(296).then(r.bind(r,8778)).then((({setAsyncAPI:t})=>{t(e),(0,a.Ze)(e.agentIdentifier,"api")})).catch((t=>{(0,u.R)(27,t),e.ee.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((t=>{R[t]=x(b,t,void 0,e.runSoftNavOverSpa?n.K7.softNav:n.K7.spa)})),e.setCurrentRouteName=e.runSoftNavOverSpa?x(b,"routeName",void 0,n.K7.softNav):x(g,"routeName",!0,n.K7.spa),e.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,o.p)(d.xV,["API/noticeError/called"],void 0,n.K7.metrics,e.ee),(0,o.p)("err",[t,(0,m.t)(),!1,r,!!N[e.agentIdentifier]],void 0,n.K7.jserrors,e.ee)},c.RI?(0,s.GG)((()=>I()),!0):I(),!0}var k=r(5217),S=r(8122);const T={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},O={};var j=r(3371);const P=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e},K=new Set;function V(e,t={},r,n){let{init:o,info:a,loader_config:s,runtime:u={},exposed:d=!0}=t;u.loaderType=r;const f=(0,l.pV)();a||(o=f.init,a=f.info,s=f.loader_config),(0,k.xN)(e.agentIdentifier,o||{}),function(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");O[e]=(0,S.a)(t,T);const r=(0,l.nY)(e);r&&(r.loader_config=O[e])}(e.agentIdentifier,s||{}),a.jsAttributes??={},c.bv&&(a.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,a);const g=e.init,p=[a.beacon,a.errorBeacon];K.has(e.agentIdentifier)||(g.proxy.assets&&(P(g.proxy.assets),p.push(g.proxy.assets)),g.proxy.beacon&&p.push(g.proxy.beacon),x(),(0,l.US)("activatedFeatures",_.B),e.runSoftNavOverSpa&&=!0===g.soft_navigations.enabled&&g.feature_flags.includes("soft_nav")),u.denyList=[...g.ajax.deny_list||[],...g.ajax.block_internal?p:[]],u.ptid=e.agentIdentifier,(0,j.V)(e.agentIdentifier,u),K.has(e.agentIdentifier)||(e.ee=b.ee.get(e.agentIdentifier),e.exposed=d,I(e,n),(0,E.W)({agentIdentifier:e.agentIdentifier,drained:!!_.B?.[e.agentIdentifier],type:"lifecycle",name:"initialize",feature:void 0,data:e.config})),K.add(e.agentIdentifier)}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>d,K7:()=>c,P3:()=>u,XX:()=>i,Yy:()=>s,df:()=>o,qY:()=>n,v4:()=>a});const n="events",i="jserrors",o="browser/blobs",a="rum",s="browser/logs",c={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},u={[c.pageViewEvent]:1,[c.pageViewTiming]:2,[c.metrics]:3,[c.jserrors]:4,[c.spa]:5,[c.ajax]:6,[c.sessionTrace]:7,[c.softNav]:8,[c.sessionReplay]:9,[c.logging]:10,[c.genericEvents]:11},d={[c.pageViewEvent]:a,[c.pageViewTiming]:n,[c.ajax]:n,[c.spa]:n,[c.softNav]:n,[c.metrics]:i,[c.jserrors]:i,[c.sessionTrace]:o,[c.sessionReplay]:o,[c.logging]:s,[c.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"nr-rum-1.286.0.min.js",i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.286.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={296:"sha512-+MkNp41sKZ0iYMHsept2X5HfDqyTLnDR9rprfuuxTRn6FVcYOei0L1PleWwmSuU2wrJDnMXcNYjTfSPQ3xYU/w=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={374:0,840:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.286.0.PROD"]=self["webpackChunk:NRBA-1.286.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(){this.agentIdentifier=(0,r.LA)(16)}#e(t,...r){if(this[t]!==n.prototype[t])return this[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}recordCustomEvent(e,t){return this.#e("recordCustomEvent",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if(this[t]!==o.prototype[t]&&this[t]!==n.prototype[t])return this[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(5217);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(7603);var l=i(1687),f=i(4234),g=i(5289),p=i(6154),m=i(384);const h=e=>p.RI&&!0===(0,s.gD)(e,"privacy.cookies_enabled");function v(e){return!!(0,m.dV)().o.MO&&h(e)&&!0===(0,s.gD)(e,"session_trace.enabled")}var b=i(6389);class y extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,b.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if(h(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(296).then(i.bind(i,3861));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(296).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),t.runtime.harvester.initializedAggregates.push(this.featAggregate),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,g.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return v(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var w=i(6630);class R extends y{static featureName=w.T;constructor(e,t=!0){super(e,w.T,t),this.importAggregator(e)}}var A=i(9908),E=i(2843),_=i(3878),x=i(782),N=i(1863);class I extends y{static featureName=x.T;constructor(e,t=!0){super(e,x.T,t),p.RI&&((0,E.u)((()=>(0,A.p)("docHidden",[(0,N.t)()],void 0,x.T,this.ee)),!0),(0,_.sp)("pagehide",(()=>(0,A.p)("winPagehide",[(0,N.t)()],void 0,x.T,this.ee))),this.importAggregator(e))}}var k=i(8154);class S extends y{static featureName=k.TZ;constructor(e,t=!0){super(e,k.TZ,t),p.RI&&document.addEventListener("securitypolicyviolation",(e=>{(0,A.p)(k.xV,["Generic/CSPViolation/Detected"],void 0,this.featureName,this.ee)})),this.importAggregator(e)}}new class extends o{constructor(t){super(),p.gm?(this.features={},(0,m.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(R),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,m.Zm)();delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[R,I,S],loaderType:"lite"})})()})();</script> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="apple-touch-icon" sizes="180x180" href="/wp-content/themes/wpx/assets/images/favicons/apple-touch-icon.png?v=1720078588"> <link rel="icon" type="image/png" sizes="32x32" href="/wp-content/themes/wpx/assets/images/favicons/favicon-32x32.png?v=1720078588"> <link rel="icon" type="image/png" sizes="16x16" href="/wp-content/themes/wpx/assets/images/favicons/favicon-16x16.png?v=1720078588"> <link rel="icon" type="image/png" sizes="192x192" href="/wp-content/themes/wpx/assets/images/favicons/android-chrome-192x192.png?v=1720078588"> <link rel="manifest" href="/wp-content/themes/wpx/assets/images/favicons/site.webmanifest?v=1720078588"> <link rel="mask-icon" href="/wp-content/themes/wpx/assets/images/favicons/safari-pinned-tab.svg?v=1720078588" color="#ff4438"> <link rel="shortcut icon" type="image/x-icon" href="/wp-content/themes/wpx/assets/images/favicons/favicon.ico?v=1720078588"> <meta name="msapplication-TileColor" content="#da532c"> <meta name="msapplication-TileImage" content="/wp-content/themes/wpx/assets/images/favicons/mstile-144x144.png?v=1720078588"> <meta name="msapplication-config" content="/wp-content/themes/wpx/assets/images/favicons/browserconfig.xml?v=1720078588"> <meta name="theme-color" content="#ffffff"> <!-- TrustArc --> <script async="async" src="https://consent.trustarc.com/notice?domain=redis.com&c=teconsent&js=nj&noticeType=bb&text=true&gtm=1"></script> <script>var __dispatched__ = {}; var __i__ = self.postMessage && setInterval(function(){ if(self.PrivacyManagerAPI && __i__){ var apiObject = {PrivacyManagerAPI: {action:"getConsentDecision", timestamp: new Date().getTime(), self: self.location.host}}; self.top.postMessage(JSON.stringify(apiObject),"*"); __i__ = clearInterval(__i__); }},50); self.addEventListener("message", function(e, d){ try{ if(e.data && (d= JSON.parse(e.data)) && (d = d.PrivacyManagerAPI) && d.capabilities && d.action=="getConsentDecision"){ var newDecision = self.PrivacyManagerAPI.callApi("getGDPRConsentDecision", self.location.host).consentDecision; newDecision && newDecision.forEach(function(label){ if(!__dispatched__[label]){ self.dataLayer && self.dataLayer.push({"event":"GDPR Pref Allows "+label}); __dispatched__[label] = 1; } }); } } catch(xx){} });</script> <!-- Mutiny ABM --> <script> (function(){var a=window.mutiny=window.mutiny||{};if(!window.mutiny.client){a.client={_queue:{}};var b=["identify","trackConversion"];var c=[].concat(b,["defaultOptOut","optOut","optIn"]);var d=function factory(c){return function(){for(var d=arguments.length,e=new Array(d),f=0;f<d;f++){e[f]=arguments[f]}a.client._queue[c]=a.client._queue[c]||[];if(b.includes(c)){return new Promise(function(b,d){a.client._queue[c].push({args:e,resolve:b,reject:d});setTimeout(d,500)})}else{a.client._queue[c].push({args:e})}}};c.forEach(function(b){a.client[b]=d(b)})}})(); </script> <script> window.mutiny.client.defaultOptOut(); </script> <script src="https://client-registry.mutinycdn.com/personalize/client/bfbc97d1462e0101.js"></script> <link rel='dns-prefetch' href='//client-registry.mutinycdn.com' ><link rel='preconnect' href='//client-registry.mutinycdn.com' crossorigin><link rel='dns-prefetch' href='//connect.facebook.net' ><link rel='preconnect' href='//connect.facebook.net' crossorigin><link rel='dns-prefetch' href='//www.googletagmanager.com' ><link rel='preconnect' href='//www.googletagmanager.com' crossorigin><link rel='dns-prefetch' href='//script.hotjar.com' ><link rel='preconnect' href='//script.hotjar.com' crossorigin> <script type="text/javascript"> if ('function' !== typeof getCookie) { function getCookie(name) { let value = `; ${document.cookie}`; let parts = value.split(`; ${name}=`); if (parts.length === 2) return parts.pop().split(';').shift(); } } </script> <link rel="alternate" hreflang="x-default" href="https://redis.io/redis-for-ai/"> <link rel="alternate" hreflang="en" href="https://redis.io/redis-for-ai/"> <link rel="icon" href="https://redis.io/wp-content/uploads/2024/07/android-chrome-512x512-1-100x100.png" sizes="32x32" /> <link rel="icon" href="https://redis.io/wp-content/uploads/2024/07/android-chrome-512x512-1-512x508.png" sizes="192x192" /> <link rel="apple-touch-icon" href="https://redis.io/wp-content/uploads/2024/07/android-chrome-512x512-1-512x508.png" /> <meta name="msapplication-TileImage" content="https://redis.io/wp-content/uploads/2024/07/android-chrome-512x512-1.png" /> <style type="text/css" id="wp-custom-css"> html body .absolute { position: absolute !important; z-index: -1; } html body .bottom-0 { bottom: 0; } html body .left-0 { left: 0; } html body .margin-bottom-0 { margin-bottom: 0 !important; } @media (max-width: 1166px) { html body.alert-bar.mobile-nav-open .nav-primary .menu-nav-primary-container { top: 177px; } } body .wp-block-group.alignfull.new-m-spacing >.wp-block-group__inner-container { padding: 0 2.444rem; } .completely-different-m .red-arrow-hover .cta-txt-black:before, .completely-different-m .red-arrow-hover h3.cta-txt-black:after { background-image: none!important; } @media (max-width: 1024px) { body.page-template-glide-template.page-template .bounds .bounds-inner, body .wp-block-group.alignfull.new-m-spacing >.wp-block-group__inner-container { padding: 0 33px; } .completely-different-m .red.red-arrow-hover { padding: 0!important; } .completely-different-m .wp-block-rediscustom-linkwrapper.redislink-wrapper { align-items: center; display: flex; justify-content: space-around; padding: 1rem 1rem 1rem .5rem; } .completely-different-m .wp-block-rediscustom-linkwrapper.redislink-wrapper .wp-block-image.size-full img { height: 48px; width: 48px; } .completely-different-m .wp-block-rediscustom-linkwrapper.redislink-wrapper .wp-block-image.size-full { flex-basis: 25%: } .completely-different-m .wp-block-rediscustom-linkwrapper.redislink-wrapper .wp-block-image.show-on-tablet { flex-basis: 20%: } .completely-different-m .wp-block-rediscustom-linkwrapper.redislink-wrapper .wp-block-image.show-on-tablet img { margin-bottom: 50%; } .completely-different-m .red-arrow-hover h3.cta-txt-black:before { background-image: url(https://redis.io/wp-content/uploads/2025/02/arrow.svg)!important; background-size: 14px 14px; height: 14px; width: 14px; top: 50%; transform: translate(10px, -50%); } .completely-different-m .red-arrow-hover:hover h3.cta-txt-black:before { background-image: url(https://redis.io/wp-content/uploads/2025/02/arrow.svg)!important; background-size: 14px 14px; height: 14px; width: 14px; opacity: 1; top: 50%; transform: translate(0, -50%); background-position: unset!important; } .completely-different-m .red-arrow-hover:hover h3.cta-txt-black:after { background-size: 14px 14px; height: 14px; width: 14px; opacity: 0; top: 50%; transform: translate(10px, -50%) background-position: unset!important; } .completely-different-m .red-arrow-hover h3.cta-txt-black:after { background-image: url(https://redis.io/wp-content/themes/redislabs-glide/assets/dist/images/arrow-black.svg)!important; background-size: 14px 14px; height: 14px; width: 14px; opacity: 1; top: 50%; transform: translate(0, -50%) } .redis-is-free s { text-decoration: none!important; } .mb-33-m { margin-bottom: 15px!important; } .completely-different-m .wp-block-rediscustom-linkwrapper.redislink-wrapper .wp-block-image.show-on-tablet img { width: 11.49px; height: 9.89px; } .completely-different-m .wp-block-rediscustom-linkwrapper.redislink-wrapper h3.cta-txt-black { font-size: 18.057px !important; flex-basis: 68%; padding-right: 30px; margin-bottom: 0 !important; font-family: "Space Grotesk"; height: 49px; display: flex ; align-items: center; } .hide-on-tablet { display: none!important; } .show-on-tablet.wp-block-image, .show-on-tablet.wp-block-spacer { display: block!important; } .mr-30-m { margin-right: 34px!important; } .mb-m-26 { margin-bottom: 19px!important; } .only-48-m { width: 48px!important; flex-basis: 48px!important; } .shadow-single-card h3.shadow-card-title.wp-block-heading, .font-20-m { font-size: 20px!important; font-weight: 500; } .margin-bottom-0.mt-19-m.has-text-color.has-link-color { margin-top: 19px!important; } .shadow-single-card h2.shadow-card-title, h2.wp-block-heading.shadow-card-title.margin-bottom-0, .shadow-card-title.mb-42.wp-block-heading, .shadow-card-title.left-align-m.wp-block-heading { font-size: 32px; line-height: 38.4px; } .shadow-card-title.left-align-m.has-text-align-center { text-align: left; } .shadow-single-card .wp-block-separator.has-text-color.has-alpha-channel-opacity.has-background.is-style-wide { width: 202px; margin-left: 0; } .shadow-card-title.mb-42.wp-block-heading { margin-bottom: 32px; } .mobile-23 { height: 14px!important; } .mobile-64 { height: 64px!important; } .mobile-29 { height: 29px!important; } .mobile-21 { height: 16px!important; } .center-link-m { display: block!important; width: max-content; margin: auto; } .font-18-m { font-size: 18px!important; text-align: center; } .mobile-46 { height: 46px!important; } .mobile-166 { width: 166px!important; } html body.page-template-glide-template p.margin-bottom-0:last-child, .mb-0-m { margin-bottom: 0!important; } .mobile-full-width { width: 100%; } } .show-on-tablet { display: none!important; } .alertbar-container img { margin-right: 5px; } .redis-experts-block .partner-section .partner-grid .partner-logo img { height: auto; width: auto; } .header-hero-title, .header-hero-subtitle { text-align: center; } @media (min-width: 1280px) { .cloud-tabbing-section.tabsection.variation-2 .tab-content .col .box .number { font-size: 4.278rem; } } .customer-stories .story-cards .card .card-content .detail { min-height: 4.5rem; } html body.page-template-glide-template .bounds-inner p.arrow-btn a { text-decoration: none } html body.page-template-glide-template .bounds-inner p.cta-txt-black a:hover { color: #ff4438; } body.page-template-glide-template .bounds-inner p.cta-txt-white a { color: #fff; display: inline-block; font-family: "Space Mono"; font-size: .833rem; line-height: 1rem; overflow: hidden; padding-right: 20px; position: relative; } body.page-template-glide-template .bounds-inner p.cta-txt-white.arrow-btn a { padding-right: 0; } body.page-template-glide-template .bounds-inner p.cta-txt-white a:hover { color: #dcff1e; } html body .max-five { margin-left: auto; margin-right: auto; } html body .max-nine-fifty { margin-left: auto; margin-right: auto; max-width: 950px; } .space-mono, .space-mono .syntaxhighlighter code, .space-mono .syntaxhighlighter textarea { font-family: "Space Mono"!important; line-height: 2rem!important;} .red-border-top { border-top: 11px solid #FF4438!important; outline: .056rem solid #8A99A0; border-right: none!important; border-left: none!important; border-bottom: none!important; border-radius: 10px!important; } .blue-border-top { border-top: 11px solid #80DBFF!important; outline: .056rem solid #8A99A0; border-right: none!important; border-left: none!important; border-bottom: none!important; border-radius: 10px!important; } .purple-border-top { border-top: 11px solid #2D4754!important; outline: .056rem solid #8A99A0; border-right: none!important; border-left: none!important; border-bottom: none!important; border-radius: 10px!important; } .border-right { border-right: 1px solid rgba(185, 194, 198, 0.50); } .border-radius-border-right { border-radius: 5px 0px 0px 5px; border-right: 2px solid var(--Dusk-Dusk, #163341); } .gap-0 { gap: 0!important; } .wp-block-cover.alignfull { display: block; width: 100vw; height: auto; max-width: 1000% !important; min-height: unset; margin-left: 50%; transform: translateX(-50%) !important; } .tab-controls .next-arrow, .prev-arrow { display: none; } body.page-template-glide-template .bounds-inner .bgmidnight p.red-arrow a, body.page-template-glide-template a.red-arrow, body.page-template-glide-template p.cta-txt-black.red-arrow a { color: #E4291E; height: 19px; line-height: 16px!important; font-size: 16px!important; } body.page-template-glide-template .bounds-inner .bgmidnight p.red-arrow-2 a, body.page-template-glide-template a.red-arrow-2, body.page-template-glide-template p.cta-txt-black.red-arrow-2 a { color: #FF4438; height: 19px; line-height: 16px!important; font-size: 16px!important; } body.page-template-glide-template .bounds-inner .bgmidnight p.red-arrow-2 a:hover, body.page-template-glide-template a.red-arrow-2:hover, body.page-template-glide-template p.cta-txt-black.red-arrow-2 a:hover, body.page-template-glide-template p.cta-txt-black.red-arrow-2:hover a, html body .bgmidnight .red-arrow-2.cta-txt-black:hover, html body.page-template-glide-template .bounds-inner .bgmidnight p.red-arrow-2.cta-txt-black:hover a { color: #FD736A!important; height: 19px; } html body .cta-txt-black.red-arrow-2:hover:before, html body .red-arrow.cta-txt-black:hover:before { background-position: unset!important; } body.page-template-glide-template .bounds-inner .bgmidnight p.red-arrow a:hover, body.page-template-glide-template a.red-arrow:hover, body.page-template-glide-template p.cta-txt-black.red-arrow a:hover, html body .bgmidnight .red-arrow.cta-txt-black:hover, html body.page-template-glide-template .bounds-inner .bgmidnight p.red-arrow.cta-txt-black:hover a { color: #8A221C!important; height: 19px; } body.page-template-glide-template .bounds-inner .bgmidnight p.red-arrow-2:after, body.page-template-glide-template a.red-arrow-2:after, body.page-template-glide-template p.cta-txt-black.red-arrow-2:after, body.page-template-glide-template p.cta-txt-black.red-arrow.arrow-btn:after{ background-image: url(https://redis.io/wp-content/uploads/2025/02/arrow.svg); background-size: 14px 14px; height: 14px; width: 14px; } body.page-template-glide-template .bounds-inner .bgmidnight p.red-arrow-2:before, body.page-template-glide-template a.red-arrow-2:before, body.page-template-glide-template p.cta-txt-black.red-arrow-2:before, body.page-template-glide-template p.cta-txt-black.red-arrow.arrow-btn:before { background-image: url(https://redis.io/wp-content/uploads/2025/02/arrow-2.svg); background-size: 14px 14px; height: 14px; width: 14px; } body.page-template-glide-template .bounds-inner .bgmidnight p.red-arrow:before, body.page-template-glide-template a.red-arrow:before, body.page-template-glide-template p.cta-txt-black.red-arrow:before, body.page-template-glide-template .red-arrow-hover p.cta-txt-black.red-arrow:before { background-image: url(https://redis.io/wp-content/uploads/2025/02/arrow-1.svg)!important; background-size: 14px 14px; height: 14px; width: 14px; } html body div:not(.bgmidnight) .cta-txt-black.red-arrow:after, html body .cta-txt-black.red-arrow:before { top: 50%; transform: translate(-10px, -50%); } html body .cta-txt-black.red-arrow:hover:before, body.page-template-glide-template .red-arrow-hover:hover p.cta-txt-black.red-arrow:before { top: 50%; transform: translate(0, -50%); opacity: 1; } body.page-template-glide-template .red-arrow-hover:hover p.cta-txt-black.red-arrow:after, body.page-template-glide-template .red-arrow-hover p.cta-txt-black.red-arrow:before { opacity: 0; transform: translate(-10px, -50%); top: 50%; } html body div:not(.bgmidnight) .cta-txt-black.red-arrow:after, html body .cta-txt-black.red-arrow:after { top: 50%; transform: translate(0, -50%); } body.page-template-glide-template .red-arrow-hover:hover p.cta-txt-black.red-arrow, body.page-template-glide-template a.red-arrow:hover { color: #8A221C!important; } body.page-template-glide-template .red-arrow-hover p.cta-txt-black.red-arrow, body.page-template-glide-template a.red-arrow { height: 19px; } body.page-template-glide-template .red-arrow-hover:hover { box-shadow: 0px 36px 10px 0px rgba(0, 0, 0, 0.00), 0px 23px 9px 0px rgba(0, 0, 0, 0.01), 0px 13px 8px 0px rgba(0, 0, 0, 0.02), 0px 6px 6px 0px rgba(0, 0, 0, 0.03), 0px 1px 3px 0px rgba(0, 0, 0, 0.04); } html body.page-template-glide-template p.cta-txt-black.red-arrow:after, html body.page-template-glide-template a.cta-txt-black.red-arrow:after { background-image: url(https://redis.io/wp-content/uploads/2025/02/arrow.svg); background-size: 14px 14px; height: 14px; width: 14px; } html body.page-template-gsap-animation-template.glide-bg-light-blue { background-color: white; } .three-card-block .column { border: 1px solid var(--dusk-dusk-30, #B9C2C6); } .border-none a, .border-none { border: none!important; } html body.page-template-glide-template .alignfull.wp-block-group.has-background.py-108 { padding-top: 6rem; padding-bottom: 6rem; } html body.page-template-glide-template .font-space-grotesk, html body.page-template-gsap-animation-template .font-space-grotesk a, html body .wp-block-buttons .wp-block-button.font-space-grotesk .wp-element-button.wp-block-button__link{ font-family: "Space Grotesk"!important; } .wp-block-group.button-flex-group.button-gap-24.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-3.wp-block-group-is-layout-flex, .wp-block-group.button-flex-group.button-gap-24.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-1.wp-block-group-is-layout-flex{ gap: 30px; } @media (max-width: 781px) { html body.page-template-glide-template .hero-banner-wrap.solutions-banner.newest-banner .wp-block-image.show-on-tablet img { max-width: unset; width: 100%; } .wp-block-group.button-flex-group.button-gap-24.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-3.wp-block-group-is-layout-flex .wp-block-group, .wp-block-group.button-flex-group.button-gap-24.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-3.wp-block-group-is-layout-flex .wp-block-buttons, .wp-block-group.button-flex-group.button-gap-24.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-3.wp-block-group-is-layout-flex .wp-block-button, .wp-block-group.button-flex-group.button-gap-24.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-1.wp-block-group-is-layout-flex .wp-block-buttons, .wp-block-group.button-flex-group.button-gap-24.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-1.wp-block-group-is-layout-flex .wp-block-button { width: 100%; } .wp-block-heading.page-title.mb-32.md-mb-32.has-none-font-family { font-size: 40px!important; } .wp-block-cover .cta-txt-black.red-arrow-2.arrow-btn.margin-top-0.font-space-grotesk { margin: auto; } .wp-block-cover .wp-block-columns.column-gap-32.column-grid.mb-0.hero-banner-wrap.solutions-banner.newest-banner.is-layout-flex.wp-container-core-columns-is-layout-1.wp-block-columns-is-layout-flex { padding-bottom: 0; } .wp-block-group.shadow-single-card { margin: -176px auto; padding: 23px 21px!important; } .random-badge.size-full { bottom: unset; right: -30px; top: 114px; } } html body .accordion-content.acc-cont.show .acc-con-space .info-content a:hover { color: #E4291E; } h3.ttl { font-weight: 500; } html body.page-template-gsap-animation-template .font-space-grotesk a, html body.page-template-gsap-animation-template .font-space-grotesk .red-arrow { font-family: "Space Grotesk"!important; height: 19px; line-height: 16px!important; font-size: 16px!important; } .new-cards .three-card-block .column { border-radius: 10px; padding: 32px 32px 28px 32px; } .new-cards .three-card-block.three-plus { justify-content: center; flex-wrap: wrap!important; } .new-cards .three-card-block.three-plus .column { flex-basis: 30%; max-width: 347px; } .new-cards h3.wp-block-heading.ttl { display: flex; align-items: flex-end; } .new-cards p.cta-txt-black.red-arrow.margin-bottom-0 { margin-bottom: 0!important; line-height: 16px; } .new-cards .three-card-block .column .wp-block-image.size-full { margin-bottom: 2.43px!important; min-height: 0; } .new-cards .three-card-block .column .content-area { min-height: 100px!important; margin-bottom: 0; } .backandforth h2 { line-height: 38.4px!important; } .wp-block-group.button-flex-group.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-2.wp-block-group-is-layout-flex { gap: 32px; } @media (min-width: 798px) and (max-width: 1600px) { .wp-block-cover.over-sized-desktop:not(.a-bit-smaller-though) img.wp-block-cover__image-background { width: 112%; } } .wp-block-cover.over-sized-desktop { background: var(--Gradient, linear-gradient(180deg, #163341 0.05%, #091A23 118.36%)); } .wp-block-cover.over-sized-desktop:not(.a-bit-smaller-though) img.wp-block-cover__image-background { max-width: 2103px; margin: auto; } .wp-block-cover.over-sized-desktop.a-bit-smaller-though img.wp-block-cover__image-background { max-width: 1480px; margin: auto; } @media (max-width: 798px) { .wp-block-cover:not(.center-mobile) img { object-position: left top; } html body .giant-title.rdi-page-heading br { display: block; } .newest-banner h2.wp-block-heading.margin-bottom-0 { font-size: 20px!important; line-height: 24px!important; margin-bottom: 31px!important; } .newest-banner .font-space-grotesk.margin-top-0.has-white-color.has-text-color.has-link-color { margin-bottom: 0; } } @media (max-width: 1255px) { h1.giant-title { font-size: 100px!important; line-height: 85px!important; } } .shadow-single-card { border-radius: 10px; border: 1px solid var(--dusk-dusk-10, #D9D9D9); background: var(--Redis-White, #FFF); box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.10); max-width: 428px; padding: 42px!important; position: relative; } .shadow-single-card h3.shadow-card-title { color: var(--Redis-Ink, #091A23); font-size: 24px; font-weight: 600; line-height: 26px; margin-bottom: 0; } .shadow-single-card h2.shadow-card-title, h2.wp-block-heading.shadow-card-title { font-size: 40px; font-weight: 500; line-height: 50px; } .regular-cards h3.board-heading-title { color: var(--Base-Midnight, #091A23); font-feature-settings: 'liga' off, 'clig' off; font-size: 20px; font-style: normal; font-weight: 500; line-height: 24px; } .regular-cards .board-content { color: var(--Midnight, #091A23); font-family: "Space Grotesk"; font-size: 16px!important; line-height: 25.6px; } .regular-cards .wp-block-column { display: flex; flex-direction: column; justify-content: space-around; } .regular-cards .wp-block-column .red-arrow { width: max-content; } .shadow-single-card h2.shadow-card-title strong { font-size: 16px; font-weight: 400; line-height: 160%; } .shadow-single-card p sub { color: var(--dusk-dusk-90, #2D4754); font-size: 12px; font-style: normal; font-weight: 400; line-height: 18px; } .gap-19 { gap: 19px!important; } .gap-14 { gap: 14px!important; } .max-1114 { margin: auto; max-width: 1114px; } .redis-is-free { cursor: pointer; width: max-content; } .redis-is-free s { text-decoration-line: underline; text-decoration-style: solid; text-decoration-skip-ink: auto; text-decoration-thickness: auto; text-underline-offset: auto; text-underline-position: from-font; } .tooltip-content { opacity: 0; position: absolute; padding: 13.5px 26.5px; border-radius:4px; top: 104px; transition: all .3s; left: 80px; } .redis-is-free:hover .tooltip-content { opacity: 1; } .tooltip-content::before { content: ""; position: absolute; top: -8px; left: 50%; transform: translateX(-50%); border-left: 10px solid transparent; border-right: 10px solid transparent; border-bottom: 10px solid white; } html body.page-template-glide-template p.margin-bottom-0.margin-top-0:last-child { margin-top: 0!important; margin-bottom: 0!important; } .gap-8 { gap: 8px!important; } .tooltip-content .wp-block-column p { color: var(--Redis-Midnight, #163341); font-size: 16px; font-style: normal; font-weight: 400; line-height: 25.6px; } h5.dark-back-superscript { color: var(--dusk-dusk-30, #B9C2C6); font-feature-settings: 'liga' off, 'clig' off; font-family: "Space Mono"; font-size: 14px; font-style: normal; font-weight: 400; line-height: 16.8px; letter-spacing: 1.5px; text-transform: uppercase; } html body .cta-txt-black.red-arrow { font-family: "Space Grotesk"!important; } .random-badge { position: absolute; bottom: 115px; height: 147px; right: -75px; width: 147px; } .random-badge img { width: 100%; } html body.page-template-glide-template .accordion-with-logo-content .acc-container .wp-block-column.acc-logo-grid .logo-kicker { margin-top: 0 !important; } #star-top, #star-bottom { transform-origin: center; transition: transform 0.5s; } html body header.header-main .header-main-outer ul#menu-nav-primary li.special-menu-link:hover span.inner { font-weight: 400; transition: all .5s!important; } html body header.header-main .header-main-outer ul#menu-nav-primary li.special-menu-link:hover span.inner a { font-weight: 400; } @media (max-width: 1166px) { .nav-primary .special-menu-link .inner { border: none!important; display: flex!important ; flex-direction: row-reverse; } .header-main-outer ul#menu-nav-primary li:hover span.inner { border: none!important; } } html body header.header-main .header-main-outer ul#menu-nav-primary li span.inner a { transition: all .5s!important; } .nav-primary .special-menu-link:hover .inner { border: 1px solid var(--Base-Hyper, #ff4438); } .nav-primary .special-menu-link .inner { border-radius: 20px; border: 1px solid var(--Base-Midnight, #091a23); padding: 4px 16px 4px 36px; padding-bottom: 4px !important; transition: all .5s; } h1.wp-block-heading.has-text-align-center.max-one-thousand { font-size: 180px; } @media (max-width: 1166px) { h1.wp-block-heading.has-text-align-center.max-one-thousand { font-size: 90px; } html body header.header-main .header-main-outer ul#menu-nav-primary li { width: calc(100% - 32px); display: block; } .nav-primary .special-menu-link .inner svg { position: unset; margin-left: 11px; } html body header.header-main .header-main-outer ul#menu-nav-primary li.special-menu-link span.inner span { width: max-content!important } } html[lang="fr"] .nav-primary .special-menu-link .inner svg { left: -138px; } .slug-try-free .sso-link, .slug-try-free .wp-block-button__link.has-white-background-color.has-background.wp-element-button.no-shuffle { border-color: #B9C2C6!important; color: #091A23!important; } .slug-try-free .sso-link, .slug-try-free .wp-block-button__link.has-white-background-color.has-background.wp-element-button.no-shuffle:hover { border-color: #B9C2C6!important; color: white!important; } html body.page-template-glide-template a.cta-txt-black.red-arrow:after, html body.page-template-glide-template p.cta-txt-black.red-arrow:after { filter: unset!important; } html body:not(.slug-try-free) .wp-block-buttons .wp-block-button:not(.full-width__mobile) .wp-element-button.no-shuffle.wp-block-button__link { display: unset; } html body:not(.slug-try-free) .wp-block-buttons .wp-block-button.full-width__mobile .wp-element-button.no-shuffle.wp-block-button__link { display: block; } html body .red-arrow.cta-txt-black:before { background-position: unset!important; visibility: visible!important; } html body header.header-main .header-main-outer nav.nav-utility .wp-block-columns .wp-block-column .wp-block-button a.wp-block-button__link.try-free-header { -moz-transition: none; background-color: #e4291e; border: 0; border-radius: 0; color: white !important; padding: 1.25rem 1.5rem 1.43rem !important; -webkit-transition: none; transition: none; } html body.page-template-glide-template p.max-six-fifty { line-height: 120%; } html body .bookmark a img { position: relative; top: 5px; margin-right: 24px; } html body .wp-block-buttons .bookmark .wp-element-button.wp-block-button__link.no-shuffle:hover { color: #8A221C!important; background-color: #FFDAD8CC!important; } html body .wp-block-buttons .secondary-button .wp-element-button.wp-block-button__link.no-shuffle { border: 1px solid #FF4438!important; color: #FF4438!important; background-color: transparent!important; } html body .wp-block-buttons .secondary-button .wp-element-button.wp-block-button__link.no-shuffle:hover { border: 1px solid #FD736A!important; color: #FD736A!important; background-color: #8A221C80!important; } </style> <link rel="preload" href="https://redis.io/wp-content/themes/redislabs-glide/assets/dist/fonts/TTTrailers-Bd.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://redis.io/wp-content/themes/redislabs-glide/assets/dist/fonts/TTTrailers-Bd.woff" as="font" type="font/woff" crossorigin> <link rel="preload" href="https://redis.io/wp-content/themes/redislabs-glide/assets/dist/fonts/SpaceMono-Regular.woff" as="font" type="font/woff" crossorigin> <link rel="preload" href="https://redis.io/wp-content/themes/redislabs-glide/assets/dist/fonts/SpaceMono-Regular.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://redis.io/wp-content/themes/redislabs-glide/assets/dist/fonts/SpaceGrotesk-Regular.woff" as="font" type="font/woff" crossorigin> <link rel="preload" href="https://redis.io/wp-content/themes/redislabs-glide/assets/dist/fonts/SpaceGrotesk-Regular.woff2" as="font" type="font/woff" crossorigin> <style type="text/css"> :root { --white-paper: #ff2828; --data-sheet: #5925e8; --e-book: #e7ea25; --blog: #dcff1e; --case-study: #ff2828; --partners: #5925e8; --press: #c795e3; --documents: #80dbff; --page: #163341; --eventwebinar: #ff4438; } </style> </head> <body style="" class="page-template page-template-templates page-template-gsap-animation-template page-template-templatesgsap-animation-template-php page page-id-157889 wp-embed-responsive alert-bar rcplan-nones slug-redis-for-ai page-template-glide-template page-template-glide-template-php glide-bg-light-blue"> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-TKZ6J9R" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <!-- alert bar --> <div id="alert-bar" class="alert"> <!-- wp:rediscustom/linkwrapper {"url":"/resources/mit-report-genai/","isNewTab":false,"className":"full-width"} --> <a href="/resources/mit-report-genai/" class="wp-block-rediscustom-linkwrapper redislink-wrapper full-width" target="" rel="noopener"><!-- wp:group {"style":{"color":{"background":"#163341"}},"className":"alertbar-container"} --> <div class="wp-block-group alertbar-container has-background" style="background-color:#163341"><!-- wp:spacer {"height":"12px"} --> <div style="height:12px" aria-hidden="true" class="wp-block-spacer"></div> <!-- /wp:spacer --> <!-- wp:columns {"verticalAlignment":"center","className":"max-nine-fifty justify-center margin-bottom-0"} --> <div class="wp-block-columns are-vertically-aligned-center max-nine-fifty justify-center margin-bottom-0"><!-- wp:column {"verticalAlignment":"center","width":"79%","className":"margin-bottom-0"} --> <div class="wp-block-column is-vertically-aligned-center margin-bottom-0" style="flex-basis:79%"><!-- wp:paragraph {"style":{"typography":{"fontSize":"15px"}},"textColor":"white","className":"margin-top-0 margin-bottom-0"} --> <p class="margin-top-0 margin-bottom-0 has-white-color has-text-color" style="font-size:15px"><img class="wp-image-157089" style="width: 11px;" src="https://redis.io/wp-content/uploads/2022/12/Ellipse-47.svg" alt="dot"> Stop testing, start deploying your AI apps. See how with MIT Technology Review’s latest research.</p> <!-- /wp:paragraph --></div> <!-- /wp:column --> <!-- wp:column {"verticalAlignment":"center","width":"12%"} --> <div class="wp-block-column is-vertically-aligned-center" style="flex-basis:12%"><!-- wp:paragraph {"style":{"color":{"text":"#dcff1e"},"typography":{"fontSize":"15px"}},"className":"cta green no-format margin-top-0 margin-bottom-0"} --> <p class="cta green no-format margin-top-0 margin-bottom-0 has-text-color" style="color:#dcff1e;font-size:15px">Download now</p> <!-- /wp:paragraph --></div> <!-- /wp:column --></div> <!-- /wp:columns --> <!-- wp:spacer {"height":"12px"} --> <div style="height:12px" aria-hidden="true" class="wp-block-spacer"></div> <!-- /wp:spacer --></div> <!-- /wp:group --></a> <!-- /wp:rediscustom/linkwrapper --> </div> <header class="header-main"> <div class="header-main-outer"> <div class="header-main-wrap"> <a href="https://redis.io/" class="logo-primary"> <img class="logo-full" width="117px" height="40px" src="https://redis.io/wp-content/uploads/2024/04/Logotype.svg?auto=webp&quality=85,75&width=120" alt="White Redis Logo"> </a> <a id="mobile-sub-menu-back-btn" class="desktop-hidden" href="javascript:void(0);">Back</a> <nav class="nav-primary"> <!-- Primary navigation menu --> <div class="menu-nav-primary-container"> <ul id="menu-nav-primary" class="menu"> <!-- Top-level menu item --> <li id="menu-item-167779" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-167779 special-menu-link sub-menu-toggler current-active"> <span class="inner"> <!-- Menu item title --> <span title="Redis for AI"><a href="/redis-for-ai/">Redis for AI</a></span> </span> </li> <!-- Top-level menu item --> <li id="menu-item-163976" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163976 sub-menu-toggler "> <span class="inner"> <!-- Menu item title --> <span title="Products">Products</span> </span> <ul class="sub-menu"> <!-- First column of megamenu --> <!-- Second column of megamenu --> <!-- Third column of megamenu --> <!-- First column of megamenu --> <!-- Second column of megamenu --> <!-- Third column of megamenu --> <!-- First column of megamenu --> <!-- Second column of megamenu --> <!-- Third column of megamenu --> <div class="column-1"> <!-- First column of megamenu --> <li id="menu-item-163977" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163977 col-1 two-grid subcustom"> <span>Products</span><ul class="sub-menu"><li id="menu-item-163978" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163978 "> <a href="/cloud/"> Redis Cloud<span class="subcontent">Fully managed and integrated with Google Cloud, Azure, and AWS.</span></a> <ul class="sub-menu"></ul> </li><li id="menu-item-163984" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163984 current-active"> <a href="/redis-for-ai"> Redis for AI<span class="subcontent">Build the fastest, most reliable GenAI apps with our advanced vector database.</span></a> <ul class="sub-menu"></ul> </li><li id="menu-item-163983" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163983 "> <a href="/software/"> Redis Software<span class="subcontent">Self-managed software with enterprise-grade compliance and reliability.</span></a> <ul class="sub-menu"></ul> </li><li id="menu-item-163980" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163980 "> <a href="/data-integration/"> Redis Data Integration (RDI)<span class="subcontent">Synchronize data in near-real time to make data fast—without writing code.</span></a> <ul class="sub-menu"></ul> </li><li id="menu-item-163982" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163982 "> <a href="/community-edition/"> Community Edition<span class="subcontent">In-memory database for caching &#038; streaming.</span></a> <ul class="sub-menu"></ul> </li></ul> </li> </div> <div class="column-3"> <!-- Third column of megamenu --> <li id="menu-item-163985" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163985 col-3"> <span>Tools</span><ul class="sub-menu"><li id="menu-item-163986" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163986 "> <a href="/insight/"> Redis Insight</a> <ul class="sub-menu"></ul> </li><li id="menu-item-163987" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163987 "> <a href="/clients/"> Clients and connectors</a> <ul class="sub-menu"></ul> </li></ul> </li><li id="menu-item-163988" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163988 col-3"> <span>Get Redis</span><ul class="sub-menu"><li id="menu-item-163989" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163989 submenu-btn"> <a href="/downloads/"> Downloads</a> <ul class="sub-menu"></ul> </li></ul> </li> </div> </ul> </li> <!-- Top-level menu item --> <li id="menu-item-163990" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163990 sub-menu-toggler "> <span class="inner"> <!-- Menu item title --> <span title="Resources">Resources</span> </span> <ul class="sub-menu"> <!-- First column of megamenu --> <!-- Second column of megamenu --> <!-- Third column of megamenu --> <!-- First column of megamenu --> <!-- Second column of megamenu --> <!-- Third column of megamenu --> <!-- First column of megamenu --> <!-- Second column of megamenu --> <!-- Third column of megamenu --> <!-- First column of megamenu --> <!-- Second column of megamenu --> <!-- Third column of megamenu --> <div class="column-1"> <!-- First column of megamenu --> <li id="menu-item-163991" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163991 col-1 three-grid"> <span>CONNECT</span><ul class="sub-menu"><li id="menu-item-163992" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163992 "> <a href="/customers/"> Customer Stories</a> <ul class="sub-menu"></ul> </li><li id="menu-item-163996" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163996 "> <a href="https://redis.io/partners/"> Partners</a> <ul class="sub-menu"></ul> </li><li id="menu-item-163993" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163993 "> <a href="/support/"> Support</a> <ul class="sub-menu"></ul> </li><li id="menu-item-163994" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163994 "> <a href="/community/"> Community</a> <ul class="sub-menu"></ul> </li><li id="menu-item-163995" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163995 "> <a href="/events/"> Events & Webinars</a> <ul class="sub-menu"></ul> </li><li id="menu-item-163997" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163997 "> <a href="https://redis.io/services/professional-services/"> Professional Services</a> <ul class="sub-menu"></ul> </li></ul> </li><li id="menu-item-163998" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-163998 col-1 three-grid"> <span>Learn</span><ul class="sub-menu"><li id="menu-item-163999" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-163999 "> <a href="/docs/"> Docs</a> <ul class="sub-menu"></ul> </li><li id="menu-item-164000" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-164000 "> <a href="/commands/"> Commands</a> <ul class="sub-menu"></ul> </li><li id="menu-item-164001" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-164001 "> <a href="/docs/get-started/"> Quick starts</a> <ul class="sub-menu"></ul> </li><li id="menu-item-164002" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-164002 "> <a href="/learn/"> Tutorials</a> <ul class="sub-menu"></ul> </li><li id="menu-item-164003" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-164003 "> <a href="/university/"> University</a> <ul class="sub-menu"></ul> </li><li id="menu-item-164004" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-164004 "> <a href="/kb/"> Knowledge base</a> <ul class="sub-menu"></ul> </li><li id="menu-item-164005" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-164005 "> <a href="/resources/"> Resources</a> <ul class="sub-menu"></ul> </li><li id="menu-item-164006" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-164006 "> <a href="/blog/"> Blog</a> <ul class="sub-menu"></ul> </li></ul> </li> </div> <div class="column-3"> <!-- Third column of megamenu --> <li id="menu-item-164007" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164007 col-3"> <span>LATEST</span><ul class="sub-menu"><li id="menu-item-164008" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164008 "> <a href="/release/"> Releases</a> <ul class="sub-menu"></ul> </li><li id="menu-item-164009" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164009 "> <a href="/company/news/"> News & updates</a> <ul class="sub-menu"></ul> </li></ul> </li><li id="menu-item-164010" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164010 col-3"> <span>See how it works</span><ul class="sub-menu"><li id="menu-item-164011" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164011 submenu-btn"> <a href="/demo-center/"> Visit Demo Center</a> <ul class="sub-menu"></ul> </li></ul> </li> </div> </ul> </li> <!-- Top-level menu item --> <li id="menu-item-164012" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-164012 center-submenu sub-menu-toggler "> <span class="inner"> <!-- Menu item title --> <span title="Docs"><a href="/docs/">Docs</a></span> </span> </li> <!-- Top-level menu item --> <li id="menu-item-164013" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-164013 sub-menu-toggler "> <span class="inner"> <!-- Menu item title --> <span title="Pricing"><a href="/pricing/">Pricing</a></span> </span> </li> </ul> <!-- Mobile buttons --> <div class="mobile-buttons"> <!-- wp:columns {"verticalAlignment":"center","className":"margin-bottom-0"} --> <div class="wp-block-columns are-vertically-aligned-center margin-bottom-0"><!-- wp:column {"verticalAlignment":"center","width":"140px"} --> <div class="wp-block-column is-vertically-aligned-center" style="flex-basis:140px"><!-- wp:buttons --> <div class="wp-block-buttons"><!-- wp:button {"textColor":"white","className":"menu-primary-btn"} --> <div class="wp-block-button menu-primary-btn"><a class="wp-block-button__link has-white-color has-text-color wp-element-button" href="/try-free/">Try Redis</a></div> <!-- /wp:button --></div> <!-- /wp:buttons --></div> <!-- /wp:column --> <!-- wp:column {"verticalAlignment":"center","width":"130px"} --> <div class="wp-block-column is-vertically-aligned-center" style="flex-basis:130px"><!-- wp:rediscustom/linkwrapper {"id":"nav-contact","url":"/meeting/"} --> <a href="/meeting/" id="nav-contact" class="wp-block-rediscustom-linkwrapper redislink-wrapper undefined" target="" rel="noopener"><!-- wp:paragraph {"className":"menu-secondary-btn"} --> <p class="menu-secondary-btn">Book a meeting</p> <!-- /wp:paragraph --></a> <!-- /wp:rediscustom/linkwrapper --></div> <!-- /wp:column --> <!-- wp:column {"verticalAlignment":"center","width":"80px"} --> <div class="wp-block-column is-vertically-aligned-center" style="flex-basis:80px"><!-- wp:paragraph {"className":"menu-txt-cta "} --> <p class="menu-txt-cta"><a href="https://app.redislabs.com/" target="_blank" rel="noreferrer noopener">Login</a></p> <!-- /wp:paragraph --></div> <!-- /wp:column --></div> <!-- /wp:columns --> </div> </div> <!-- Mobile menu --> <div class="mobile-sub-menu" style="display:none;"> <div class="mobile-sub-menu-content"></div> </div> </nav> <nav class="nav-utility" data-header="nav-utility"> <a href="javascript:void(0);" class="header-search" href="#"> <img alt="search" width="21px" height="21px" src="/wp-content/themes/redislabs-glide/assets/src/images/search-icon.svg"> </a> <!-- wp:columns {"verticalAlignment":"center","className":"margin-bottom-0"} --> <div class="wp-block-columns are-vertically-aligned-center margin-bottom-0"><!-- wp:column {"verticalAlignment":"center","width":"80px"} --> <div class="wp-block-column is-vertically-aligned-center" style="flex-basis:80px"><!-- wp:paragraph {"className":"margin-top-0 margin-bottom-0"} --> <p class="margin-top-0 margin-bottom-0"><a href="https://cloud.redis.io">Login</a></p> <!-- /wp:paragraph --></div> <!-- /wp:column --> <!-- wp:column {"verticalAlignment":"center","width":"130px"} --> <div class="wp-block-column is-vertically-aligned-center" style="flex-basis:130px"><!-- wp:rediscustom/linkwrapper {"id":"nav-contact","url":"/meeting/"} --> <a href="/meeting/" id="nav-contact" class="wp-block-rediscustom-linkwrapper redislink-wrapper undefined" target="" rel="noopener"> <!-- wp:paragraph {"className":"margin-top-0 margin-bottom-0"} --> <p class="margin-top-0 margin-bottom-0">Book a meeting</p> <!-- /wp:paragraph --> </a> <!-- /wp:rediscustom/linkwrapper --></div> <!-- /wp:column --> <!-- wp:column {"verticalAlignment":"center","width":"140px"} --> <div class="wp-block-column is-vertically-aligned-center" style="flex-basis:140px"><!-- wp:buttons --> <div class="wp-block-buttons"><!-- wp:button {"textColor":"white"} --> <div class="wp-block-button"><a class="try-free-header wp-block-button__link has-white-color has-text-color wp-element-button" href="/try-free/">Try Redis</a></div> <!-- /wp:button --></div> <!-- /wp:buttons --></div> <!-- /wp:column --></div> <!-- /wp:columns --> <a href="#" class="toggle-tablet-menu" data-header="toggle-tablet-menu"> <div class="responsive-menu hide"></div> <span></span> <span></span> <span></span> </a> <div class="nav-mobile-close"> <div class="nav-mobile-close-inner"> <a class="close-nav-mobile" data-mobile="close-nav-mobile"> <img alt="close" src="/wp-content/themes/redislabs-glide/assets/dist/images/close-icon.svg"> </a> </div> </div> </nav> <div class="search-model-main"> <div class="search-model-inner"> <div class="search-model-close-btn"><img decoding="async" src="/wp-content/uploads/2023/11/UI-Flexible.svg?auto=webp&quality=85,75&width=80" alt="" style="object-fit:cover;width:20px;height:20px" loading="lazy"></div> <div class="search-model-wrap" data-header="search-wrap"> <div class="pop-up-content-wrap"> <div class="header-search-title">Search</div> <form id="searchForm" action="https://redis.io" method="get"> <div class="searchbox"> <label for="searchInput">Search:</label> <input type="text" name="s" placeholder="Search" id="search-field" maxlength="100" data-header="search-field"> <button type="submit"><img src="/wp-content/themes/redislabs-glide/assets/src/images/search-icon.svg"></button> </div> </form> </div> </div> </div> </div> </div> </div> </header> <div class="bounds"> <div class="bounds-inner"> <div class="wp-block-cover alignfull is-light over-sized-desktop has-white-color has-text-color has-link-color wp-elements-f60c48674e4fcbcd0b9ccf84baf53fc7"><span aria-hidden="true" class="wp-block-cover__background has-background-dim-0 has-background-dim" style="background-color:#acb8a2"></span><img decoding="async" class="wp-block-cover__image-background wp-image-165837" alt="" src="https://redis.io/wp-content/uploads/2025/02/Redis-for-AI_hero_1440x644px-1.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" data-object-fit="cover" loading="eager"><div class="wp-block-cover__inner-container is-layout-constrained wp-block-cover-is-layout-constrained"> <div class="wp-block-columns column-gap-32 column-grid mb-0 hero-banner-wrap solutions-banner newest-banner is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex"> <div class="wp-block-column is-vertically-aligned-center column-grid-5 mb-0 lft-block is-layout-flow wp-block-column-is-layout-flow"> <figure class="wp-block-image size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/icon-redis-for-AI-64-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165297" loading="lazy"></figure> <h1 class="wp-block-heading page-title mb-32 md-mb-32 has-none-font-family" style="font-size:64px">Redis for AI</h1> <h3 class="wp-block-heading mb-0 mt-0">Build AI apps with speed, memory, and accuracy</h3> <p class="mb-0" style="font-size:16px">Redis for AI is our integrated package of features and services designed to get your GenAI apps into production faster with the fastest vector database, robust integrations, and worldwide scale.</p> <div style="height:32px" aria-hidden="true" class="wp-block-spacer"></div> <div class="wp-block-group button-flex-group button-gap-24 is-nowrap is-layout-flex wp-container-core-group-is-layout-3 wp-block-group-is-layout-flex"> <div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-2 wp-block-group-is-layout-flex"> <div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex"> <div class="wp-block-button has-custom-font-size wp-shuffle is-style-fill font-space-grotesk" style="font-size:16px"><a class="wp-block-button__link wp-element-button" href="https://redis.io/docs/latest/develop/get-started/vector-database/">Try it yourself</a></div> </div> </div> <p class="cta-txt-black red-arrow-2 arrow-btn margin-top-0 font-space-grotesk" style="font-size:16px"><a href="/docs/latest/develop/ai/">Read our AI docs</a></p> </div> </div> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> <div class="wp-block-column column-grid-6 mb-0 rft-block is-layout-flow wp-block-column-is-layout-flow"> <figure class="wp-block-image size-full show-on-tablet"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/Redis-for-AI_hero-illustration.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165585" loading="lazy"></figure> </div> </div> <p class="has-text-align-center has-large-font-size"></p> </div></div> <div class="wp-block-group bgmidnight pricing-banner alignfull padd-x-43"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained"></div></div> <div class="wp-block-group space-64 backandforth font-space-grotesk"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained"> <div class="wp-block-columns are-vertically-aligned-center space-b-108 mb-0 is-layout-flex wp-container-core-columns-is-layout-3 wp-block-columns-is-layout-flex"> <div class="wp-block-column is-vertically-aligned-center hard-img-col column-grid-4 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"><div class="wp-block-image mb-0"> <figure class="aligncenter size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/Frame-1.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165300" loading="lazy"></figure></div></div> <div class="wp-block-column is-vertically-aligned-center hard-img-col column-grid-4 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:8%"></div> <div class="wp-block-column is-vertically-aligned-center content-col column-grid-5 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"> <div class="wp-block-group gap-0 is-vertical is-layout-flex wp-container-core-group-is-layout-5 wp-block-group-is-layout-flex"> <h2 class="wp-block-heading section-heading mb-20 has-text-color has-link-color wp-elements-aa13f9c08cafad21ef3a54d91719aab6" style="color:#1e1e1e;font-size:32px">Improve RAG &amp; search with the world’s fastest vector database<gwmw style="display:none;"></gwmw></h2> <div class="wp-block-columns mb-30 is-layout-flex wp-container-core-columns-is-layout-2 wp-block-columns-is-layout-flex"> <div class="wp-block-column mb-0 is-layout-flow wp-block-column-is-layout-flow"> <p class="mb-20 mt-0" style="font-size:16px">Get more accurate answers using retrieval-augmented generation (RAG), get the fastest responses on the market, and work with top ecosystem partners like LangChain and LlamaIndex.</p> </div> </div> <a href="/blog/benchmarking-results-for-vector-databases/" class="red-arrow cta-txt-black arrow-btn">See our benchmarks</a> </div> </div> </div> <div class="wp-block-columns are-vertically-aligned-center space-b-108 mb-0 flex-col-sm-reverse is-layout-flex wp-container-core-columns-is-layout-6 wp-block-columns-is-layout-flex"> <div class="wp-block-column is-vertically-aligned-center content-col column-grid-5 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"> <div class="wp-block-group gap-0 is-vertical is-layout-flex wp-container-core-group-is-layout-6 wp-block-group-is-layout-flex"> <div class="wp-block-columns justify-start column-grid mb-0 is-layout-flex wp-container-core-columns-is-layout-4 wp-block-columns-is-layout-flex"> <div class="wp-block-column mb-0 column-grid-10 is-layout-flow wp-block-column-is-layout-flow"> <h2 class="wp-block-heading section-heading mb-20 has-text-color has-link-color wp-elements-9eb760e0e4fcfd8a5a3b9947e00cb0f0" style="color:#1e1e1e;font-size:32px">Personalize AI responses with long-term memory<gwmw style="display:none;"></gwmw><gwmw style="display:none;"></gwmw><gwmw style="display:none;"></gwmw></h2> </div> <div class="wp-block-column column-grid column-grid-2 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> </div> <div class="wp-block-columns mb-30 is-layout-flex wp-container-core-columns-is-layout-5 wp-block-columns-is-layout-flex"> <div class="wp-block-column mb-0 is-layout-flow wp-block-column-is-layout-flow"> <p class="mb-20 mt-0" style="font-size:16px">LLMs don’t retain recent history, which can cause awkward interactions. We store all previous interactions between an LLM and a user to deliver personalized GenAI experiences.<gwmw style="display:none;"></gwmw></p> </div> </div> <a href="/blog/using-redis-for-real-time-rag-goes-beyond-a-vector-database/" class="cta-txt-black arrow-btn red-arrow">Learn more</a> </div> </div> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:8%"></div> <div class="wp-block-column is-vertically-aligned-center hard-img-col column-grid-4 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"><div class="wp-block-image mb-0"> <figure class="aligncenter size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/Frame-2b.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165301" style="object-fit:cover" loading="lazy"></figure></div></div> </div> <div class="wp-block-columns are-vertically-aligned-center space-b-108 mb-0 is-layout-flex wp-container-core-columns-is-layout-8 wp-block-columns-is-layout-flex"> <div class="wp-block-column is-vertically-aligned-center hard-img-col column-grid-4 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"><div class="wp-block-image mb-0"> <figure class="aligncenter size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/Frame-3a.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165302" loading="lazy"></figure></div></div> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:8%"></div> <div class="wp-block-column is-vertically-aligned-center content-col column-grid-5 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"> <div class="wp-block-group gap-0 is-vertical is-layout-flex wp-container-core-group-is-layout-7 wp-block-group-is-layout-flex"> <h2 class="wp-block-heading section-heading mb-20 has-text-color has-link-color wp-elements-d1d732429410c6b4c57360bb1a9bf76b" style="color:#1e1e1e;font-size:32px">Short-term memory for faster
AI agents<gwmw style="display:none;"></gwmw></h2> <div class="wp-block-columns mb-30 is-layout-flex wp-container-core-columns-is-layout-7 wp-block-columns-is-layout-flex"> <div class="wp-block-column mb-0 is-layout-flow wp-block-column-is-layout-flow"> <p class="mb-20 mt-0" style="font-size:16px">As GenAI systems get more complex, they use multiple agents, data retrievals, and LLM calls to complete tasks. Every step adds lag. We make agents faster, so you get higher-performing apps.</p> </div> </div> <a href="https://github.com/redis-developer/redis-ai-resources/blob/main/python-recipes/agents/00_langgraph_redis_agentic_rag.ipynb/" class="cta-txt-black arrow-btn red-arrow">Build AI agents with LangGraph</a> </div> </div> </div> <div class="wp-block-columns are-vertically-aligned-center space-b-108 mb-0 flex-col-sm-reverse is-layout-flex wp-container-core-columns-is-layout-11 wp-block-columns-is-layout-flex"> <div class="wp-block-column is-vertically-aligned-center content-col column-grid-5 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"> <div class="wp-block-group gap-0 is-vertical is-layout-flex wp-container-core-group-is-layout-8 wp-block-group-is-layout-flex"> <div class="wp-block-columns justify-start column-grid mb-0 is-layout-flex wp-container-core-columns-is-layout-9 wp-block-columns-is-layout-flex"> <div class="wp-block-column mb-0 column-grid-10 is-layout-flow wp-block-column-is-layout-flow"> <h2 class="wp-block-heading section-heading mb-20 has-text-color has-link-color wp-elements-0777f5f06f3acac57b91a66083ca868f" style="color:#1e1e1e;font-size:32px">Reduce redundant LLM calls with semantic caching<gwmw style="display:none;"></gwmw><gwmw style="display:none;"></gwmw><gwmw style="display:none;"></gwmw></h2> </div> <div class="wp-block-column column-grid column-grid-2 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> </div> <div class="wp-block-columns mb-30 is-layout-flex wp-container-core-columns-is-layout-10 wp-block-columns-is-layout-flex"> <div class="wp-block-column mb-0 is-layout-flow wp-block-column-is-layout-flow"> <p class="mb-20 mt-0" style="font-size:16px">Store the semantic meaning of frequent calls to LLMs so apps can answer commonly asked questions more quickly and lower LLM inference costs.<gwmw style="display:none;"></gwmw></p> </div> </div> <a href="/blog/what-is-semantic-caching/" class="cta-txt-black arrow-btn red-arrow">Learn more</a> </div> </div> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:8%"></div> <div class="wp-block-column is-vertically-aligned-center hard-img-col column-grid-4 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"><div class="wp-block-image mb-0"> <figure class="aligncenter size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/Redis_EditorialIllustration_Saving_Spot_01_20241001.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165303" style="object-fit:cover" loading="lazy"></figure></div></div> </div> <div class="wp-block-columns are-vertically-aligned-center space-b-108 mb-0 is-layout-flex wp-container-core-columns-is-layout-13 wp-block-columns-is-layout-flex"> <div class="wp-block-column is-vertically-aligned-center hard-img-col column-grid-4 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"><div class="wp-block-image mb-0"> <figure class="aligncenter size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/Frame-4.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165304" loading="lazy"></figure></div></div> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:8%"></div> <div class="wp-block-column is-vertically-aligned-center content-col column-grid-5 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"> <div class="wp-block-group gap-0 is-vertical is-layout-flex wp-container-core-group-is-layout-9 wp-block-group-is-layout-flex"> <h2 class="wp-block-heading section-heading mb-20 has-text-color has-link-color wp-elements-95877a1c5f62b3cbcd2e9fe7f111b592" style="color:#1e1e1e;font-size:32px">Choose the right tool with semantic routing<gwmw style="display:none;"></gwmw></h2> <div class="wp-block-columns mb-30 is-layout-flex wp-container-core-columns-is-layout-12 wp-block-columns-is-layout-flex"> <div class="wp-block-column mb-0 is-layout-flow wp-block-column-is-layout-flow"> <p class="mb-20 mt-0" style="font-size:16px">Route queries based on meaning to provide precise, intent-driven results for chatbots, knowledge bases, and agents. Semantic routing classifies requests across multiple tools to quickly find the most relevant answers.</p> </div> </div> <a href="https://github.com/redis/redis-vl-python/blob/main/docs/user_guide/08_semantic_router.ipynb/" class="cta-txt-black arrow-btn red-arrow">See how it works</a> </div> </div> </div> <div class="wp-block-columns are-vertically-aligned-center space-b-108 mb-0 flex-col-sm-reverse is-layout-flex wp-container-core-columns-is-layout-16 wp-block-columns-is-layout-flex"> <div class="wp-block-column is-vertically-aligned-center content-col column-grid-5 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"> <div class="wp-block-group gap-0 is-vertical is-layout-flex wp-container-core-group-is-layout-10 wp-block-group-is-layout-flex"> <div class="wp-block-columns justify-start column-grid mb-0 is-layout-flex wp-container-core-columns-is-layout-14 wp-block-columns-is-layout-flex"> <div class="wp-block-column mb-0 column-grid-10 is-layout-flow wp-block-column-is-layout-flow"> <h2 class="wp-block-heading section-heading mb-20 has-text-color has-link-color wp-elements-e8e45e86234b99ba253d040aafc0a1a3" style="color:#1e1e1e;font-size:32px">Faster predictions with ML 
feature store<gwmw style="display:none;"></gwmw><gwmw style="display:none;"></gwmw><gwmw style="display:none;"></gwmw></h2> </div> <div class="wp-block-column column-grid column-grid-2 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> </div> <div class="wp-block-columns mb-30 is-layout-flex wp-container-core-columns-is-layout-15 wp-block-columns-is-layout-flex"> <div class="wp-block-column mb-0 is-layout-flow wp-block-column-is-layout-flow"> <p class="mb-20 mt-0" style="font-size:16px">We store ML features for fast data retrieval to power timely predictions. Our feature store connects seamlessly with offline feature stores like Tecton and Feast at the scale companies need for instant decisions worldwide.<gwmw style="display:none;"></gwmw></p> </div> </div> <a href="/solutions/feature-stores/" class="cta-txt-black arrow-btn red-arrow">Learn more</a> </div> </div> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:8%"></div> <div class="wp-block-column is-vertically-aligned-center hard-img-col column-grid-4 mb-0 is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:46%"><div class="wp-block-image mb-0"> <figure class="aligncenter size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/Frame-5.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165305" style="object-fit:cover" loading="lazy"></figure></div></div> </div> </div></div> <div class="wp-block-group alignfull has-background" style="background:linear-gradient(180deg,rgb(255,255,255) 0%,rgb(248,248,248) 100%)"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained"> <section id="logo-list-block_02047a71336778a1bdf13d878b11a187" class="logo-align-center margin-top-0 padding-top-0 wp-block-group alignfull space-108 bglight"> <div class="wrapper"> <div class="stack-logos text-center"> <h3 class="ttl">Companies that trust Redis for AI</h3> <div class="logo-list justify-center"> <div class="logo"><img decoding="async" src="https://redis.io/wp-content/uploads/2024/04/langchain-logo-black-1.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=200" width="200" height="40" alt="" loading="lazy"></div> <div class="logo"><img decoding="async" src="https://redis.io/wp-content/uploads/2023/05/ifood-logo.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=200" width="200" height="40" alt="" loading="lazy"></div> <div class="logo"><img decoding="async" src="https://redis.io/wp-content/uploads/2023/09/docugami-case-study-logo-customers-page-card.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=200" width="200" height="40" alt="" loading="lazy"></div> <div class="logo"><img decoding="async" src="https://redis.io/wp-content/uploads/2024/07/Superlinked.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=200" width="200" height="40" alt="" loading="lazy"></div> </div> </div> </div> </section> </div></div> <div class="wp-block-group alignfull padd-x-43 space-108 new-cards"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained"> <div class="wp-block-columns column-gap-32 column-grid mb-0 is-layout-flex wp-container-core-columns-is-layout-19 wp-block-columns-is-layout-flex"> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> <div class="wp-block-column column-grid-10 mb-0 is-layout-flow wp-block-column-is-layout-flow"> <div class="wp-block-group gap-0 is-vertical is-layout-flex wp-container-core-group-is-layout-13 wp-block-group-is-layout-flex"> <div class="wp-block-columns three-card-block variation-2 three-column-gap mb-39 is-layout-flex wp-container-core-columns-is-layout-17 wp-block-columns-is-layout-flex"> <div class="wp-block-column column red red-arrow-hover is-layout-flow wp-block-column-is-layout-flow"> <a href="/try-free/" class="wp-block-rediscustom-linkwrapper redislink-wrapper font-space-grotesk" target=""> <figure class="wp-block-image size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/icon-redis-CLI-64-duotone.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165308" style="object-fit:cover" loading="lazy"></figure> <h3 class="wp-block-heading ttl has-text-color has-link-color wp-elements-db69668aee31882d5c42a80210aed9d6" style="color:#091a23;font-size:24px">Built on Redis</h3> <p class="content-area has-text-color has-link-color wp-elements-f47968f1030d760997a89d50e3c8353b" style="color:#091a23;font-size:14px">Use the Redis you know and love.<br>No additional contracts or security reviews.</p> <p class="cta-txt-black red-arrow margin-bottom-0 has-text-color has-link-color wp-elements-d072fbaef8ae7aa3be97820bb284ada0" style="color:#ff4438">Try Redis for free</p> </a> </div> <div class="wp-block-column column red red-arrow-hover is-layout-flow wp-block-column-is-layout-flow"> <a href="/docs/latest/develop/ai/" class="wp-block-rediscustom-linkwrapper redislink-wrapper font-space-grotesk" target=""> <figure class="wp-block-image size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/icon-AI-48-duotone.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165309" loading="lazy"></figure> <h3 class="wp-block-heading ttl has-text-color has-link-color wp-elements-7bb6bf05d39914edd93e81174d307f95" style="color:#091a23;font-size:24px">Connects to GenAI ecosystem</h3> <p class="content-area has-text-color has-link-color wp-elements-9e2a4e223081a00ca1ee67dc86f97563" style="color:#091a23;font-size:14px">Integrate with top GenAI tools so you can build how you want.</p> <p class="cta-txt-black red-arrow margin-bottom-0 has-text-color has-link-color wp-elements-38e7efbcfb2492059d0694c8c50b8f4f" style="color:#ff4438">See our integrations</p> </a> </div> <div class="wp-block-column column red red-arrow-hover is-layout-flow wp-block-column-is-layout-flow"> <a href="https://docs.redisvl.com/en/latest/" class="wp-block-rediscustom-linkwrapper redislink-wrapper font-space-grotesk" target=""> <figure class="wp-block-image size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/icon-developers-48-duotone.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165310" loading="lazy"></figure> <h3 class="wp-block-heading ttl has-text-color has-link-color wp-elements-d4415746c80220cbf30a3875c4af6c2e" style="color:#091a23;font-size:24px">Pre-built libraries</h3> <p class="content-area has-text-color has-link-color wp-elements-fb54329107a4532bded57c0cf42a20a4" style="color:#091a23;font-size:14px">Don’t start from scratch. RedisVL automates core functionality for you.</p> <p class="cta-txt-black red-arrow margin-bottom-0 has-text-color has-link-color wp-elements-fc839af1c268fc74e77a4623db655d36" style="color:#ff4438">Learn more</p> </a> </div> </div> <div class="wp-block-columns three-card-block variation-2 three-column-gap mb-0 is-layout-flex wp-container-core-columns-is-layout-18 wp-block-columns-is-layout-flex"> <div class="wp-block-column column red red-arrow-hover is-layout-flow wp-block-column-is-layout-flow"> <a href="/blog/benchmarking-results-for-vector-databases/" class="wp-block-rediscustom-linkwrapper redislink-wrapper font-space-grotesk" target=""> <figure class="wp-block-image size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/icon-built-for-speed-64-duotone.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165311" style="object-fit:cover" loading="lazy"></figure> <h3 class="wp-block-heading ttl has-text-color has-link-color wp-elements-7d93fefd19f5e9e7f4381217c971c0a4" style="color:#091a23;font-size:24px">Benchmarked speed</h3> <p class="content-area has-text-color has-link-color wp-elements-f633fb104c959e1114205244c8a66d2e" style="color:#091a23;font-size:14px">You know us for speed. Now we’re the fastest for GenAI, too.</p> <p class="cta-txt-black red-arrow margin-bottom-0 has-text-color has-link-color wp-elements-185fd7f28d70c0a6b0198ba81ffd1083" style="color:#ff4438">See our benchmarks</p> </a> </div> <div class="wp-block-column column red red-arrow-hover is-layout-flow wp-block-column-is-layout-flow"> <a href="https://github.com/redis-developer/redis-ai-resources" class="wp-block-rediscustom-linkwrapper redislink-wrapper font-space-grotesk" target="_blank"> <figure class="wp-block-image size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/icon-ecosystem-48-duotone.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165312" loading="lazy"></figure> <h3 class="wp-block-heading ttl has-text-color has-link-color wp-elements-fd878ba0eae150e805bd62f31dff781c" style="color:#091a23;font-size:24px">Sample notebooks</h3> <p class="content-area has-text-color has-link-color wp-elements-0b7aed1dda1760fee3544859c9c61731" style="color:#091a23;font-size:14px">Explore our use cases with ecosystem integrations to start building faster.</p> <p class="cta-txt-black red-arrow margin-bottom-0 has-text-color has-link-color wp-elements-89ee3fd14bdadab81802f78bfc538529" style="color:#ff4438">Clone our dev repo</p> </a> </div> <div class="wp-block-column column red red-arrow-hover is-layout-flow wp-block-column-is-layout-flow"> <a href="/customers/" class="wp-block-rediscustom-linkwrapper redislink-wrapper font-space-grotesk" target=""> <figure class="wp-block-image size-full"><img decoding="async" src="https://redis.io/wp-content/uploads/2025/02/icon-geospatial-48-duotone.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" alt="" class="wp-image-165314" loading="lazy"></figure> <h3 class="wp-block-heading ttl has-text-color has-link-color wp-elements-57c7c988da3b40dc7dd818c085a245d9" style="color:#091a23;font-size:24px">Worldwide scale</h3> <p class="content-area has-text-color has-link-color wp-elements-68656b93fb27bdd3e64fd098f1eaca3c" style="color:#091a23;font-size:14px">The world’s biggest companies use us to build smarter, faster apps.</p> <p class="cta-txt-black red-arrow margin-bottom-0 has-text-color has-link-color wp-elements-02ea78466e7548da9fb72b9b19541ec0" style="color:#ff4438">See our customers</p> </a> </div> </div> </div> </div> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> </div> </div></div> <div id="getstarted" class="wp-block-group alignfull bgcover-img"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained"> <div class="wp-block-group alignfull padd-x-43"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained"> <div class="wp-block-cover min-h-465"><span aria-hidden="true" class="wp-block-cover__background has-background-dim-100 has-background-dim" style="background-color:#163341"></span><img decoding="async" class="wp-block-cover__image-background wp-image-157661" alt="" src="https://redis.io/wp-content/uploads/2024/08/text-bg-cta.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=500" data-object-fit="cover" loading="lazy"><div class="wp-block-cover__inner-container is-layout-constrained wp-block-cover-is-layout-constrained"> <div class="wp-block-columns column-gap-32 column-grid mb-0 is-layout-flex wp-container-core-columns-is-layout-20 wp-block-columns-is-layout-flex"> <div class="wp-block-column column-grid column-grid-3 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> <div class="wp-block-column column-grid-6 mb-0 is-layout-flow wp-block-column-is-layout-flow"> <div class="wp-block-group lft-block"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained"> <h2 class="wp-block-heading has-text-align-center mb-20 has-none-font-family">Get started</h2> <p class="has-text-align-center heading-3 max-one-thousand mt-0 mb-0">Meet with an expert and start using<br>Redis for AI today.</p> <div class="wp-block-group two-row-button two-btn-gap button-gap-36 is-content-justification-center is-layout-flex wp-container-core-group-is-layout-15 wp-block-group-is-layout-flex"> <div class="wp-block-buttons is-horizontal is-content-justification-center is-nowrap is-layout-flex wp-container-core-buttons-is-layout-2 wp-block-buttons-is-layout-flex"> <div class="wp-block-button has-custom-font-size wp-shuffle is-style-fill font-space-grotesk" style="font-size:16px"><a class="wp-block-button__link has-text-align-center wp-element-button" href="/try-free/">Try for free</a></div> </div> <p class="cta-txt-black red-arrow-2 arrow-btn margin-top-0"><a href="/meeting/">Talk to sales</a></p> </div> </div></div> </div> <div class="wp-block-column column-grid column-grid-3 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> </div> </div></div> </div></div> </div></div> <div class="wp-block-group space-108 alignfull padd-x-43 customer-landing-banner-section"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained"> <div class="wp-block-columns column-gap-32 column-grid mb-0 is-layout-flex wp-container-core-columns-is-layout-22 wp-block-columns-is-layout-flex"> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> <div class="wp-block-column cl-left-col mb-0 column-grid-10 is-layout-flow wp-block-column-is-layout-flow"> <div class="wp-block-columns column-gap-32 column-grid mb-0 is-layout-flex wp-container-core-columns-is-layout-21 wp-block-columns-is-layout-flex"> <div class="wp-block-column column-grid-5 mb-0 is-layout-flow wp-block-column-is-layout-flow"> <h2 class="wp-block-heading has-text-align-left content mb-0">Frequently asked questions<gwmw style="display:none;"></gwmw></h2> </div> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> <div class="wp-block-column column-grid-6 mb-0 right-block is-layout-flow wp-block-column-is-layout-flow"> <div id="faq-block_d564d7c887f48a47e49093a1b09aac08" class=" "> <div class="wp-block-accordion accordion-full-width variation2"> <div class="accordion-listing"> <div class="accordion-container acc-container"> <div class="accordion-row acc-row"> <h3 class="accordion-title acc-title"> Why use Redis over traditional databases for AI? <i class="icon-plus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/plus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="plus-white" width="12" height="12" loading="lazy"> </i> <i class="icon-minus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/minus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="minus-white" width="12" height="12" loading="lazy"> </i> </h3> <div class="accordion-content acc-cont"> <div class="acc-con-space"> <div class="info-content"> <p>Traditional databases often introduce latency due to disk-based storage and complex indexing. Redis, being in-memory, drastically reduces query times and supports real-time AI apps by efficiently handling searches, caching results, and maintaining performance at scale.</p> </div> <div class="accordion-col-row"> </div> </div> </div> </div> <div class="accordion-row acc-row"> <h3 class="accordion-title acc-title"> How does Redis compare to specialized vector databases for AI? <i class="icon-plus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/plus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="plus-white" width="12" height="12" loading="lazy"> </i> <i class="icon-minus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/minus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="minus-white" width="12" height="12" loading="lazy"> </i> </h3> <div class="accordion-content acc-cont"> <div class="acc-con-space"> <div class="info-content"> <p>Unlike dedicated vector databases, Redis offers multi-modal capabilities—handling vector search, real-time caching, feature storage, and pub/sub messaging in a single system. This eliminates the need for multiple tools, reducing complexity and cost.</p> </div> <div class="accordion-col-row"> </div> </div> </div> </div> <div class="accordion-row acc-row"> <h3 class="accordion-title acc-title"> What indexing methods does Redis use for vector search? <i class="icon-plus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/plus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="plus-white" width="12" height="12" loading="lazy"> </i> <i class="icon-minus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/minus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="minus-white" width="12" height="12" loading="lazy"> </i> </h3> <div class="accordion-content acc-cont"> <div class="acc-con-space"> <div class="info-content"> <p>Redis supports HNSW (Hierarchical Navigable Small World) for fast approximate nearest neighbor (ANN) search and Flat indexing for exact search. This flexibility allows AI applications to balance speed and accuracy based on their needs.</p> </div> <div class="accordion-col-row"> </div> </div> </div> </div> <div class="accordion-row acc-row"> <h3 class="accordion-title acc-title"> How does Redis ensure data persistence for AI workloads? <i class="icon-plus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/plus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="plus-white" width="12" height="12" loading="lazy"> </i> <i class="icon-minus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/minus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="minus-white" width="12" height="12" loading="lazy"> </i> </h3> <div class="accordion-content acc-cont"> <div class="acc-con-space"> <div class="info-content"> <p>Redis offers RDB (snapshotting) and AOF (Append-Only File) persistence options, ensuring AI-related data remains available even after restarts. Redis on Flex further enables larger data sets to persist cost-effectively.</p> </div> <div class="accordion-col-row"> </div> </div> </div> </div> <div class="accordion-row acc-row"> <h3 class="accordion-title acc-title"> Where can I learn more about how to use Redis for AI? <i class="icon-plus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/plus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="plus-white" width="12" height="12" loading="lazy"> </i> <i class="icon-minus accordion-control"> <img decoding="async" src="/wp-content/themes/redislabs-glide/assets/dist/images/minus-white.svg?format=pjpg&amp;auto=webp&amp;quality=1&amp;width=12" alt="minus-white" width="12" height="12" loading="lazy"> </i> </h3> <div class="accordion-content acc-cont"> <div class="acc-con-space"> <div class="info-content"> <p>You can see <a href="https://university.redis.io/learningpath/hbykf3qrnhwccy">AI training courses on Redis University</a>. <a href="/docs/latest/develop/ai/">Our Docs page for AI</a> explains concepts, resources, and includes many howtos for building GenAI apps like AI assistants with RAG and AI agents.</p> </div> <div class="accordion-col-row"> </div> </div> </div> </div> </div> </div> </div> </div></div> </div> </div> <div class="wp-block-column column-grid column-grid-1 mb-0 is-layout-flow wp-block-column-is-layout-flow"></div> </div> </div></div> </div> </div> <div id="consent_blackbar"></div> <div class="footer-main"> <div class="footer-main-wrap"> <div class="footer-row"> <footer> <div class="wrapper"> <div class="footer-columns"> <div class="col-one"> <div class="logo-social-links"> <div class="footer-logo"> <a href="/"> <img alt="redis logo" loading="lazy" class="footer-logo-img" src="https://redis.io/wp-content/uploads/2024/04/footlogo.svg"> </a> </div> <div class="col-three"> <div class=" sociallinks"> <a href="https://www.facebook.com/Redisinc" target="_blank" rel="noopener"> <img src="/wp-content/themes/redislabs-glide/assets/dist/images/facebook.svg" width="11" height="20" alt="facebook-icon"> </a> <a href="https://www.youtube.com/c/redisinc" target="_blank" rel="noopener"> <img src="/wp-content/themes/redislabs-glide/assets/dist/images/Vector.svg" width="20" height="16" alt="Vector-icon"> </a> <a href="https://www.linkedin.com/company/redisinc/" target="_blank" rel="noopener"> <img src="/wp-content/themes/redislabs-glide/assets/dist/images/LinkedIn.svg" width="20" height="21" alt="LinkedIn-icon"> </a> <a href="https://www.instagram.com/redisinc/" target="_blank" rel="noopener"> <img src="/wp-content/themes/redislabs-glide/assets/dist/images/Instagram.svg" width="19" height="20" alt="Instagram-icon"> </a> <a href="https://twitter.com/Redisinc" target="_blank" rel="noopener"> <img src="/wp-content/themes/redislabs-glide/assets/dist/images/X.svg" width="19" height="20" alt="X-icon"> </a> </div> </div> </div> <div class="link-right"> <ul class="footer-copyright hidem"> <li id="menu-item-153805" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-153805"> <a href="https://trust.redis.io">Trust</a> </li> <li id="menu-item-153807" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-153807"> <a href="/legal/privacy-policy/">Privacy</a> </li> <li id="menu-item-153806" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-153806"> <a href="/legal/redis-website-terms-of-use/">Terms of use</a> </li> <li id="menu-item-164057" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164057"> <a href="/legal/">Legal notices</a> </li> </ul> <div class="language-selector languageop hidem"> <label for="language-selector" class="hide">Select Language:</label> <select id="language-selector" class="language-select"> <option disabled="" selected="">Language</option> <option value="">English</option> <option value="es">Español</option> <option value="fr">Français</option> <option value="de">Deutsch</option> <option value="ko">한국어</option> <option value="pt">Português</option> </select> </div> </div> </div> <div class="col-two sitelinks"> <div class="cl-left"> <div class="usecase-menu"> <div class="link-title">USE CASES</div> <ul> <li id="menu-item-164049" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164049"> <a href="https://redis.io/solutions/vector-database/">Vector database</a> </li> <li id="menu-item-165225" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-165225"> <a href="https://redis.io/solutions/feature-stores/">Feature stores</a> </li> <li id="menu-item-164047" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164047"> <a href="/redis-for-ai/">Semantic cache</a> </li> <li id="menu-item-164048" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164048"> <a href="https://redis.io/solutions/caching/">Caching</a> </li> <li id="menu-item-164051" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164051"> <a href="/nosql/what-is-nosql/">NoSQL database</a> </li> <li id="menu-item-164052" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164052"> <a href="https://redis.io/solutions/leaderboards/">Leaderboards</a> </li> <li id="menu-item-164053" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164053"> <a href="https://redis.io/solutions/deduplication/">Data deduplication</a> </li> <li id="menu-item-164054" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164054"> <a href="https://redis.io/solutions/messaging/">Messaging</a> </li> <li id="menu-item-164056" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164056"> <a href="https://redis.io/solutions/authentication-token-storage/">Authentication token storage</a> </li> <li id="menu-item-164050" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164050"> <a href="https://redis.io/solutions/fast-data-ingest/">Fast data ingest</a> </li> <li id="menu-item-164055" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164055"> <a href="/solutions/query-caching-with-redis-enterprise/">Query caching</a> </li> <li id="menu-item-164044" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164044"> <a href="https://redis.io/solutions/">All solutions</a> </li> </ul> </div> </div> <div class="cl-right"> <div class="menu-col-item"> <div class="link-title">INDUSTRIES</div> <ul> <li id="menu-item-164028" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164028"> <a href="https://redis.io/industries/financial-services/">Financial Services</a> </li> <li id="menu-item-164029" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164029"> <a href="https://redis.io/industries/gaming/">Gaming</a> </li> <li id="menu-item-164030" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164030"> <a href="https://redis.io/industries/healthcare/">Healthcare</a> </li> <li id="menu-item-164033" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164033"> <a href="/industries/retail/">Retail</a> </li> <li id="menu-item-164032" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164032"> <a href="/industries/">All industries</a> </li> </ul> </div> <div class="menu-col-item"> <div class="link-title">COMPARE</div> <ul> <li id="menu-item-164035" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164035"> <a href="https://redis.io/compare/elasticache/">Redis vs. ElastiCache</a> </li> <li id="menu-item-164036" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164036"> <a href="https://redis.io/compare/memcached/">Redis vs. Memcached</a> </li> <li id="menu-item-164034" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164034"> <a href="https://redis.io/compare/memorystore/">Redis vs. Memorystore</a> </li> <li id="menu-item-164037" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164037"> <a href="/compare/community-edition/">Redis vs. Source Available</a> </li> </ul> </div> <div class="menu-col-item"> <div class="link-title">COMPANY</div> <ul> <li id="menu-item-164014" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164014"> <a href="/company/">Mission &amp; values</a> </li> <li id="menu-item-164015" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164015"> <a href="https://redis.io/company/team/">Leadership</a> </li> <li id="menu-item-164016" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164016"> <a href="https://redis.io/careers/">Careers</a> </li> <li id="menu-item-164017" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164017"> <a href="https://redis.io/company/news/">News</a> </li> </ul> </div> <div class="menu-col-item"> <div class="link-title">CONNECT</div> <ul> <li id="menu-item-164038" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164038"> <a href="/community/">Community</a> </li> <li id="menu-item-164039" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164039"> <a href="https://redis.io/events/">Events &amp; Webinars</a> </li> </ul> </div> <div class="menu-col-item"> <div class="link-title">PARTNERS</div> <ul> <li id="menu-item-164023" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164023"> <a href="/cloud-partners/aws/">Amazon Web Services</a> </li> <li id="menu-item-164024" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164024"> <a href="/cloud-partners/google/">Google Cloud</a> </li> <li id="menu-item-164059" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164059"> <a href="/cloud-partners/azure/">Azure</a> </li> <li id="menu-item-164027" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164027"> <a href="/partners/">All partners</a> </li> </ul> </div> <div class="menu-col-item"> <div class="link-title">SUPPORT</div> <ul> <li id="menu-item-164042" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164042"> <a href="https://redis.io/services/professional-services/">Professional Services</a> </li> <li id="menu-item-164043" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164043"> <a href="https://redis.io/support/">Support</a> </li> </ul> </div> </div> </div> <div class="footer-bottom"> <ul class="footer-copyright"> <li id="menu-item-153805" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-153805"> <a href="https://trust.redis.io">Trust</a> </li> <li id="menu-item-153807" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-153807"> <a href="/legal/privacy-policy/">Privacy</a> </li> <li id="menu-item-153806" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-153806"> <a href="/legal/redis-website-terms-of-use/">Terms of use</a> </li> <li id="menu-item-164057" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-164057"> <a href="/legal/">Legal notices</a> </li> </ul> <div class="language-selector languageop"> <label for="language-selector" class="hide">Select Language:</label> <select id="language-selector" class="language-select"> <option disabled="" selected="">Language</option> <option value="">English</option> <option value="es">Español</option> <option value="fr">Français</option> <option value="de">Deutsch</option> <option value="ko">한국어</option> <option value="pt">Português</option> </select> </div> </div> </div> </footer> </div> </div> </div> <script> var SITE_ROOT = 'https://redis.io'; </script> <script> var SITE_ASSETS = 'https://redis.io/wp-content/themes/wpx/assets'; </script> <script> var SITE_THEME = 'https://redis.io/wp-content/themes/wpx'; </script> <!-- Link to stylesheet --> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/layout/single.css?ver=1743802433" media="print" onload="this.media='all'; this.onload=null;"> <!-- Fallback --> <noscript> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/layout/single.css?ver=1743802433" media="all"> </noscript> <!-- Link to stylesheet --> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/cover.css?ver=1743802433" media="print" onload="this.media='all'; this.onload=null;"> <!-- Fallback --> <noscript> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/cover.css?ver=1743802433" media="all"> </noscript> <!-- Link to stylesheet --> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/image.css?ver=1743802433" media="print" onload="this.media='all'; this.onload=null;"> <!-- Fallback --> <noscript> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/image.css?ver=1743802433" media="all"> </noscript> <!-- Link to stylesheet --> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/buttons.css?ver=1743802433" media="print" onload="this.media='all'; this.onload=null;"> <!-- Fallback --> <noscript> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/buttons.css?ver=1743802433" media="all"> </noscript> <!-- Link to stylesheet --> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/columns.css?ver=1743802433" media="print" onload="this.media='all'; this.onload=null;"> <!-- Fallback --> <noscript> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/columns.css?ver=1743802433" media="all"> </noscript> <!-- Link to stylesheet --> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/group.css?ver=1743802433" media="print" onload="this.media='all'; this.onload=null;"> <!-- Fallback --> <noscript> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/group.css?ver=1743802433" media="all"> </noscript> <!-- Link to stylesheet --> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/paragraph.css?ver=1743802433" media="print" onload="this.media='all'; this.onload=null;"> <!-- Fallback --> <noscript> <link rel="stylesheet" href="https://redis.io/wp-content/themes/wpx/assets/dist/css/globals/refresh/components/blocks/paragraph.css?ver=1743802433" media="all"> </noscript> <!-- Link to stylesheet --> <link rel="stylesheet" href="/wp-content/themes/wpx/assets/dist/css/globals/refresh/footer/footer.css?ver=1743802433" media="print" onload="this.media='all'; this.onload=null;"> <!-- Fallback --> <noscript> <link rel="stylesheet" href="/wp-content/themes/wpx/assets/dist/css/globals/refresh/footer/footer.css?ver=1743802433" media="all"> </noscript> <!-- Link to stylesheet --> <link rel="stylesheet" href="/wp-content/themes/redislabs-glide/assets/dist/css/footer.min.css?ver=1743802433" media="print" onload="this.media='all'; this.onload=null;"> <!-- Fallback --> <noscript> <link rel="stylesheet" href="/wp-content/themes/redislabs-glide/assets/dist/css/footer.min.css?ver=1743802433" media="all"> </noscript> <style id='core-block-supports-inline-css' type='text/css'> .wp-elements-aa13f9c08cafad21ef3a54d91719aab6 a:where(:not(.wp-element-button)){color:#1e1e1e;}.wp-elements-9eb760e0e4fcfd8a5a3b9947e00cb0f0 a:where(:not(.wp-element-button)){color:#1e1e1e;}.wp-elements-d1d732429410c6b4c57360bb1a9bf76b a:where(:not(.wp-element-button)){color:#1e1e1e;}.wp-elements-0777f5f06f3acac57b91a66083ca868f a:where(:not(.wp-element-button)){color:#1e1e1e;}.wp-elements-95877a1c5f62b3cbcd2e9fe7f111b592 a:where(:not(.wp-element-button)){color:#1e1e1e;}.wp-elements-e8e45e86234b99ba253d040aafc0a1a3 a:where(:not(.wp-element-button)){color:#1e1e1e;}.wp-elements-f60c48674e4fcbcd0b9ccf84baf53fc7 a:where(:not(.wp-element-button)){color:var(--wp--preset--color--white);}.wp-container-core-group-is-layout-2{flex-direction:column;align-items:flex-start;}.wp-container-core-group-is-layout-3{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-1{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-2{flex-wrap:nowrap;}.wp-container-core-group-is-layout-5{flex-direction:column;align-items:flex-start;}.wp-container-core-columns-is-layout-3{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-4{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-5{flex-wrap:nowrap;}.wp-container-core-group-is-layout-6{flex-direction:column;align-items:flex-start;}.wp-container-core-columns-is-layout-6{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-7{flex-wrap:nowrap;}.wp-container-core-group-is-layout-7{flex-direction:column;align-items:flex-start;}.wp-container-core-columns-is-layout-8{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-9{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-10{flex-wrap:nowrap;}.wp-container-core-group-is-layout-8{flex-direction:column;align-items:flex-start;}.wp-container-core-columns-is-layout-11{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-12{flex-wrap:nowrap;}.wp-container-core-group-is-layout-9{flex-direction:column;align-items:flex-start;}.wp-container-core-columns-is-layout-13{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-14{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-15{flex-wrap:nowrap;}.wp-container-core-group-is-layout-10{flex-direction:column;align-items:flex-start;}.wp-container-core-columns-is-layout-16{flex-wrap:nowrap;}.wp-elements-db69668aee31882d5c42a80210aed9d6 a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-f47968f1030d760997a89d50e3c8353b a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-d072fbaef8ae7aa3be97820bb284ada0 a:where(:not(.wp-element-button)){color:#ff4438;}.wp-elements-7bb6bf05d39914edd93e81174d307f95 a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-9e2a4e223081a00ca1ee67dc86f97563 a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-38e7efbcfb2492059d0694c8c50b8f4f a:where(:not(.wp-element-button)){color:#ff4438;}.wp-elements-d4415746c80220cbf30a3875c4af6c2e a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-fb54329107a4532bded57c0cf42a20a4 a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-fc839af1c268fc74e77a4623db655d36 a:where(:not(.wp-element-button)){color:#ff4438;}.wp-container-core-columns-is-layout-17{flex-wrap:nowrap;}.wp-elements-7d93fefd19f5e9e7f4381217c971c0a4 a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-f633fb104c959e1114205244c8a66d2e a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-185fd7f28d70c0a6b0198ba81ffd1083 a:where(:not(.wp-element-button)){color:#ff4438;}.wp-elements-fd878ba0eae150e805bd62f31dff781c a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-0b7aed1dda1760fee3544859c9c61731 a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-89ee3fd14bdadab81802f78bfc538529 a:where(:not(.wp-element-button)){color:#ff4438;}.wp-elements-57c7c988da3b40dc7dd818c085a245d9 a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-68656b93fb27bdd3e64fd098f1eaca3c a:where(:not(.wp-element-button)){color:#091a23;}.wp-elements-02ea78466e7548da9fb72b9b19541ec0 a:where(:not(.wp-element-button)){color:#ff4438;}.wp-container-core-columns-is-layout-18{flex-wrap:nowrap;}.wp-container-core-group-is-layout-13{flex-direction:column;align-items:flex-start;}.wp-container-core-columns-is-layout-19{flex-wrap:nowrap;}.wp-container-core-buttons-is-layout-2{flex-wrap:nowrap;justify-content:center;}.wp-container-core-group-is-layout-15{justify-content:center;}.wp-container-core-columns-is-layout-20{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-21{flex-wrap:nowrap;}.wp-container-core-columns-is-layout-22{flex-wrap:nowrap;} </style> <script type="text/javascript" id="wpx-js-js-extra"> /* <![CDATA[ */ var redisJS = {"ajaxUrl":"https:\/\/redis.io\/wp-admin\/admin-ajax.php"}; /* ]]> */ </script> <script type="text/javascript" defer='defer' src="https://redis.io/wp-content/themes/wpx/assets/dist/js/app.min.js" id="wpx-js-js"></script> <script type="text/javascript" defer='defer' src="https://redis.io/wp-content/themes/redislabs-glide/assets/dist/js/bundle.min.js?ver=1743802438" id="child-theme-scripts-js"></script> <script type="text/javascript" src="https://redis.io/wp-content/themes/wpx/assets/dist/js/front-ui.min.js?ver=1743927712" id="redis-front-ui-js"></script> <script type="text/javascript" id="redis-front-ui-js-after"> /* <![CDATA[ */ const redisAjaxURL = "https://redis.io/wp-admin/admin-ajax.php"; const redisNonce = "719795c595"; const redisPostid = "157889"; /* ]]> */ </script> <script type="text/javascript" src="https://redis.io/wp-content/themes/wpx/assets/dist/js/vendor/query-script.js?ver=1743802434" id="query-script-js"></script> <script type="text/javascript" src="https://fast.wistia.com/assets/external/E-v1.js?ver=E-v1" id="wistia-scripts-js"></script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-1fedf62d6f1beddfa04","applicationID":"650495667","transactionName":"MlFUN0IDCBEEVRZZWgsbdwBECwkMSlERUUVIVVgKXQMSCwpYT0RQCERaAkQH","queueTime":0,"applicationTime":322,"atts":"HhZXQQoZGx8=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10