Now you can entry the AI search stream builder on OpenSearch 2.19+ domains with Amazon OpenSearch Service and start innovating AI search purposes quicker. By a visible designer, you may configure customized AI search flows—a collection of AI-driven information enrichments carried out throughout ingestion and search. You’ll be able to construct and run these AI search flows on OpenSearch to energy AI search purposes on OpenSearch with out you having to construct and preserve customized middleware.
Functions are more and more utilizing AI and search to reinvent and enhance consumer interactions, content material discovery, and automation to uplift enterprise outcomes. These improvements run AI search flows to uncover related data by way of semantic, cross-language, and content material understanding; adapt data rating to particular person behaviors; and allow guided conversations to pinpoint solutions. Nonetheless, engines like google are restricted in native AI-enhanced search assist, so builders develop middleware to enrich engines like google to fill in practical gaps. This middleware consists of customized code that runs information flows to sew information transformations, search queries, and AI enrichments in various combos tailor-made to make use of instances, datasets, and necessities.
With the brand new AI search stream builder for OpenSearch, you might have a collaborative surroundings to design and run AI search flows on OpenSearch. Yow will discover the visible designer inside OpenSearch Dashboards underneath AI Search Flows, and get began rapidly by launching preconfigured stream templates for common use instances like semantic, multimodal or hybrid search, and retrieval augmented technology (RAG). By configurations, you may create customise flows to complement search and index processes by way of AI suppliers like Amazon Bedrock, Amazon SageMaker, Amazon Comprehend, OpenAI, DeepSeek, and Cohere. Flows may be programmatically exported, deployed, and scaled on any OpenSearch 2.19+ cluster by way of OpenSearch’s present ingest, index, workflow and search APIs.
Within the the rest of the publish, we’ll stroll by way of a few situations to display the stream builder. First, we’ll allow semantic search in your outdated keyword-based OpenSearch software with out client-side code modifications. Subsequent, we’ll create a multi-modal RAG stream, to showcase how one can redefine picture discovery inside your purposes.
AI search stream builder key ideas
Earlier than we get began, let’s cowl some key ideas. You need to use the stream builder by way of APIs or a visible designer. The visible designer is really useful for serving to you handle workflow tasks. Every venture accommodates a minimum of one ingest or search stream. Flows are a pipeline of processor assets. Every processor applies a kind of knowledge rework comparable to encoding textual content into vector embeddings, or summarizing search outcomes with a chatbot AI service.
Ingest flows are created to complement information because it’s added to an index. They include:
- An information pattern of the paperwork you wish to index.
- A pipeline of processors that apply transforms on ingested paperwork.
- An index constructed from the processed paperwork.
Search flows are created to dynamically enrich search request and outcomes. They include:
- A question interface based mostly on the search API, defining how the stream is queried and ran.
- A pipeline of processors that rework the request context or search outcomes.
Typically, the trail from prototype to manufacturing begins with deploying your AI connectors, designing flows from an information pattern, then exporting your flows from a improvement cluster to a preproduction surroundings for testing at-scale.
State of affairs 1: Allow semantic search on an OpenSearch software with out client-side code modifications
On this situation, we have now a product catalog that was constructed on OpenSearch a decade in the past. We intention to enhance its search high quality, and in flip, uplift purchases. The catalog has search high quality points, as an example, a seek for “NBA,” doesn’t floor basketball merchandise. The appliance can also be untouched for a decade, so we intention to keep away from modifications to client-side code to scale back threat and implementation effort.
An answer requires the next:
- An ingest stream to generate textual content embeddings (vectors) from textual content in an present index.
- A search stream that encodes search phrases into textual content embeddings, and dynamically rewrites keyword-type match queries right into a k-NN (vector) question to run a semantic search on the encoded phrases. The rewrite permits your software to transparently run semantic-type queries by way of keyword-type queries.
We will even consider a second-stage reranking stream, which makes use of a cross-encoder to rerank outcomes as it may possibly probably increase search high quality.
We’ll accomplish our activity by way of the stream builder. We start by navigating to AI Search Flows within the OpenSearch Dashboard, and deciding on Semantic Search from the template catalog.
This template requires us to pick out a textual content embedding mannequin. We’ll use Amazon Bedrock Titan Textual content, which was deployed as a prerequisite. As soon as the template is configured, we enter the designer’s important interface. From the preview, we will see that the template consists of a preset ingestion and search stream.
The ingest stream requires us to supply an information pattern. Our product catalog is presently served by an index containing the Amazon product dataset, so we import an information pattern from this index.
The ingest stream features a ML Inference Ingest Processor, which generates machine studying (ML) mannequin outputs comparable to embeddings (vectors) as your information is ingested into OpenSearch. As beforehand configured, the processor is ready to make use of Amazon Titan Textual content to generate textual content embeddings. We map the information area that holds our product descriptions to the mannequin’s inputText area to allow embedding technology.
We are able to now run our ingest stream, which builds a brand new index containing our information pattern embeddings. We are able to examine the index’s contents to verify that the embeddings had been efficiently generated.
As soon as we have now an index, we will configure our search stream. We’ll begin with updating the question interface, which is preset to a fundamental match question. The placeholder my_text
must be changed with the product descriptions. With this replace, our search stream can now reply to queries from our legacy software.
The search stream contains an ML Inference Search Processor. As beforehand configured, it’s set to make use of Amazon Titan Textual content. Because it’s added underneath Rework question, it’s utilized to question requests. On this case, it’s going to rework search phrases into textual content embeddings (a question vector). The designer lists the variables from the question interface, permitting us to map the search phrases (question.match.textual content.question
), to the mannequin’s inputText area. Textual content embeddings will now be generated from the search phrases every time our index is queried.
Subsequent, we replace the question rewrite configurations, which is preset to rewrite the match question right into a k-NN question. We substitute the placeholder my_embedding
with the question area assigned to your embeddings. Observe that we may rewrite this to a different question kind, together with a hybrid question, which can enhance search high quality.
Let’s examine our semantic and key phrase options from the search comparability software. Each options are capable of finding basketball merchandise once we seek for “basketball.”
However what occurs if we seek for “NBA?” Solely our semantic search stream returns outcomes as a result of it detects the semantic similarities between “NBA” and “basketball.”
We’ve managed enhancements, however we would be capable to do higher. Let’s see if reranking our search outcomes with a cross-encoder helps. We’ll add a ML Inference Search Processor underneath Rework response, in order that the processor applies to go looking outcomes, and choose Cohere Rerank. From the designer, we see that Cohere Rerank requires a listing of paperwork and the question context as enter. Information transformations are wanted to bundle the search outcomes right into a format that may be processed by Cohere Rerank. So, we apply JSONPath expressions to extract the question context, flatten information buildings, and pack the product descriptions from our paperwork into a listing.
Let’s return to the search comparability software to match our stream variations. We don’t observe any significant distinction in our earlier seek for “basketball” and “NBA.” Nevertheless, enhancements are noticed once we search, “sizzling climate.” On the fitting, we see that the second and fifth search hit moved 32 and 62 spots up, and returned “sandals” which are properly suited to “sizzling climate.”
We’re able to proceed to manufacturing, so we export our flows from our improvement cluster into our preproduction surroundings, use the workflow APIs to combine our flows into automations, and scale our check processes by way of the majority, ingest and search APIs.
State of affairs 2: Use generative AI to redefine and elevate picture search
On this situation, we have now photographs of hundreds of thousands of trend designs. We’re on the lookout for a low-maintenance picture search answer. We are going to use generative multimodal AI to modernize picture search, eliminating the necessity for labor to keep up picture tags and different metadata.
Our answer requires the next:
- An ingest stream which makes use of a multimodal mannequin like Amazon Titan Multimodal Embeddings G1 to generate picture embeddings.
- A search stream which generates textual content embeddings with a multimodal mannequin, runs a k-NN question for textual content to picture matching, and sends matching photos to a generative mannequin like Anthropic’s Claude Sonnet 3.7 that may function on textual content and pictures.
We’ll begin from the RAG with Vector Retrieval template. With this template, we will rapidly configure a fundamental RAG stream. The template requires an embedding and enormous language mannequin (LLM) that may course of textual content and picture content material. We use Amazon Bedrock Titan Multimodal G1 and Anthropic’s Claude Sonnet 3.7, respectively.
From the designer’s preview panel, we will see similarities between this template and the semantic search template. Once more, we seed the ingest stream with an information pattern. Just like the earlier instance, we use the Amazon product dataset besides we substitute the manufacturing descriptions with base64 encoded photos as a result of our fashions require base64 photos, and this answer doesn’t require textual content. We map the base64 picture information to the corresponding Amazon Titan G1 inputs to generate embeddings. We then run our ingest stream and ensure that our index accommodates base64 photos and corresponding embeddings.
The preliminary steps for configuring this search stream are much like the earlier situation: we replace the question interface, map the question textual content fields to the mannequin inputs for the ML Inference Search Processor, and revise the question rewrite settings. The principle distinction with this stream is the extra response processor set to make use of Anthropic’s Claude Sonnet 3.7 to course of photos.
We have to configure an LLM immediate that features the question context and directions for the LLM to play the position of a trend advisor, and supply commentary in regards to the picture payload.
Subsequent, we map the immediate and the base64 picture information area to the mannequin’s inputs accordingly.
Let’s check our multimodal RAG stream by looking for “sundown coloured attire.” We observe the next outcomes.
![]() |
This lovely gown completely captures the essence of a sundown with its attractive ombre colour gradient. Beginning with a smooth peachy pink on the prime, it transitions right into a vibrant orange within the center, and finishes with a vivid yellow on the hem – similar to the colours of the sky because the solar dips under the horizon. The gown encompasses a easy, informal silhouette with brief cap sleeves and seems to have a cushty, relaxed match that might flatter many physique sorts. The tie-dye impact provides it a bohemian, carefree vibe that’s good for summer time outings, seashore holidays, or informal night occasions. I like to recommend this sunset-colored gown as a result of it’s eye-catching, versatile, and embodies that magical sundown glow that may brighten any event. The colours would complement heat pores and skin tones significantly properly, and you could possibly simply gown it up with gold equipment or hold it informal with easy sandals. |
![]() |
This vibrant tie-dye gown completely captures the essence of a sundown with its lovely gradient of colours. The gown options bands of golden yellow, fiery orange, and wealthy pink that mix collectively seamlessly, paying homage to the sky at nightfall. The strapless design showcases the shoulders elegantly, whereas the gathered waist creates a flattering silhouette that flows into a cushty, knee-length skirt. This gown can be a superb alternative for summer time occasions, seashore holidays, or informal outings. The sundown colour palette is just not solely on-trend but additionally versatile sufficient to pair with impartial equipment. I like to recommend this piece for its eye-catching colours, comfy match, and the way in which it embodies the nice and cozy, relaxed feeling of watching a gorgeous sundown. |
With none picture metadata, OpenSearch finds photos of sunset-colored attire, and responds with correct and colourful commentary.
Conclusion
The AI search stream builder is out there in all AWS Areas that assist OpenSearch 2.19+ on OpenSearch Service. To study extra, confer with Constructing AI search workflows in OpenSearch Dashboards, and the obtainable tutorials on GitHub, which display find out how to combine numerous AI fashions from Amazon Bedrock, SageMaker, and different AWS and third-party AI providers.
In regards to the authors
Dylan Tong is a Senior Product Supervisor at Amazon Internet Companies. He leads the product initiatives for AI and machine studying (ML) on OpenSearch together with OpenSearch’s vector database capabilities. Dylan has a long time of expertise working straight with prospects and creating merchandise and options within the database, analytics and AI/ML area. Dylan holds a BSc and MEng diploma in Pc Science from Cornell College.
Tyler Ohlsen is a software program engineer at Amazon Internet Companies focusing totally on the OpenSearch Anomaly Detection and Move Framework plugins.
Mingshi Liu is a Machine Studying Engineer at OpenSearch, primarily contributing to OpenSearch, ML Commons and Search Processors repo. Her work focuses on growing and integrating machine studying options for search applied sciences and different open-source tasks.
Ka Ming Leung (Ming)Â is a Senior UX designer at OpenSearch, specializing in ML-powered search developer experiences in addition to designing observability and cluster administration options.