How Handmade.com modernizes product image and description handling with Amazon Bedrock and Amazon OpenSearch Service


Handmade.com is a leading hand-crafts product marketplace, offering unique, seller-contributed items to customers around the world. With over 60,000 products in the catalog and some percentage of listings containing basic descriptions that could be improved for better search and search engine optimization (SEO) performance, the need for automation became evident. Manual processing, consuming on average 10 hours per week, required a team of several people to maintain baseline quality. As their marketplace scaled, so did the need to automate and enhance the quality of product descriptions and metadata at scale.

Handmade.com supports a wide range of hand-crafted goods, each with distinct attributes and presentation needs, making it essential to move beyond one-size-fits-all descriptions. The diversity of product types—from textiles to sculpture—requires content reflecting each item’s unique characteristics. In addition, minimizing the time from seller submission to product publication is critical, especially as sellers expect real-time feedback and go-live timelines of under an hour. To support international growth, Handmade.com also needs to generate high-quality content across multiple languages and regions, facilitating discoverability and relevance for a global audience.

This post focuses on the challenge of generating rich, scalable product descriptions for hand-crafted goods uploaded by a distributed seller base. We explore how Handmade.com designed and implemented a hybrid AI and vector search solution using Amazon Bedrock and Amazon OpenSearch Service for semantic content retrieval.

Solution overview

Handmade.com implemented an end-to-end AI-driven pipeline to automate and enrich product descriptions. The process begins with image and metadata ingestion, followed by initial description generation using Anthropic’s Claude 3.7 Sonnet large language model (LLM). These descriptions are embedded with the Amazon Titan Text Embeddings V2 model and stored in Amazon OpenSearch Service, enabling vector-based semantic search. Retrieval Augmented Generation (RAG) then contextualizes results to produce refined, SEO-optimized outputs tailored to each product.

The following diagram illustrates the high-level architecture.

The solution includes the following components:

Product image upload and initial processing:

  • Product images and metadata are fetched from the Handmade.com product data repository and Elasticsearch index
  • Anthropic’s Claude in Amazon Bedrock is used to generate an initial description for each uploaded image

Vector embedding and storage:

  • The generated description is embedded using Amazon Titan Text Embeddings V2
  • The embeddings are stored in an OpenSearch Service vector index, enabling semantic search capabilities

User-uploaded product enrichment:

  • When a user uploads a product image, Anthropic’s Claude generates a draft description
  • The draft description is embedded with Amazon Titan and compared against existing entries in the OpenSearch Service vector store

Retrieval Augmented Generation:

  • Retrieved context from OpenSearch Service is sent along with the new image to Anthropic’s Claude in Amazon Bedrock
  • A refined, enriched product description is generated using the RAG pattern

Search engine optimization:

  • Anthropic Claude 3.7 Sonnet is used to generate SEO metadata, including terms and enhanced product narratives
  • Prompts to the model follow the pattern: “Analyze this product image and provide a detailed SEO response containing seoTerms, product-description, etc.”

User interaction and API handling:

  • Sellers interact through the Handmade.com interface
  • A Node.js API handles image ingestion, model invocation, and search workflows using the AWS SDK and OpenSearch packages

Data handling and system integration:

  • Product and image data are continuously ingested from the Handmade.com index
  • Amazon Bedrock, OpenSearch Service, and custom APIs coordinate embedding, vector search, and contextual inference

The solution also incorporates customer interaction data to continuously improve description generation and product discovery. The system analyzes user engagement metrics including click-through rates, time-on-page, and conversion events. These behavioral signals are used to refine the prompt engineering for Anthropic’s Claude, optimizing description generation for enhanced customer engagement.

Additionally, the system uses customer review data as a valuable input for the RAG pipeline. Natural language processing extracts specific product attributes and craftsmanship details from review text (e.g., “unique glazing technique” or “color variation characteristics”). These insights are embedded alongside product descriptions in the OpenSearch Service vector store, enabling more nuanced semantic search capabilities. By combining review-derived context with behavioral data, the system can more effectively match customers with relevant artisan products based on both visual and qualitative attributes.

Description and metadata sample prompts

To generate consistent and high-quality outputs, Handmade.com crafted structured prompts for Anthropic’s Claude to process images and metadata. These prompts guide the model to generate product descriptions, contextual enhancements, and metadata. The following are sample roles given to Anthropic’s Claude to produce a variety of output text:

[
  { "role": "Material Enthusiast" },
  { "role": "Sustainability Advocate" },
  { "role": "Heritage Historian" },
  { "role": "Functionality Reviewer" },
  { "role": "Maker Advocate" },
  { "role": "Visual Poet" }
]

The process then uses AI and a vector store to enhance product descriptions for SEO and user engagement. We discuss the key steps in the following section.

Image analysis

The image analysis workflow consists of the following steps:

  1. A user uploads a product image.
  2. Anthropic Claude processes the image and generates a structured description, identifying details and potential uses:
"AI Request": [
    {
        "type": "image",
        "source": {
            "type": "uploaded_file",
            "data": "user_image"
        }
    },
    {
        "type": "text",
        "text": "Create a simple title and description for this product."
    }
]

Vector search for similar products

The vector search process consists of the following steps:

  1. The uploaded image is compared against a curated dataset containing descriptions of approximately 1 million handmade products that have been acquired for over 20 years.
  2. This dataset is stored in an OpenSearch Service index, structured as stored vectors—a digital system where product descriptions are encoded as numerical representations of the text and its relationships rather than plain text.
  3. The image description from Anthropic’s Claude is converted into a vector using Amazon Titan Text Embeddings V2, enabling an efficient similarity search within the index:
const aiResponse = "AI-generated text from Claude"; 
// The product description generated by Claude AI const requestParams = {
  modelId: "amazon.titan-embed-text-v2:0",
   // AI model used to process the text
   body: {{aiResponse }}
   // Formatting Claude's response for Amazon Titan
};

Context-enriched description generation

The description generation process consists of the following steps:

  1. The system retrieves products with descriptions closely resembling the uploaded image. These descriptions, crafted by experts, serve as contextual references.
  2. Anthropic Claude incorporates this contextual data—such as style, material insights, and historical relevance—to generate an enhanced, optimized product description tailored for engagement and discoverability.

The following code is the sample final RAG request to AI, in which we pass the contextDocs as the product records of the prompt from our existing product:

const productAnalysisRequest = `                 
Analyze the uploaded product image.
Use the provided context below to improve your response:
${contextDocs} Generate a clear and structured response in JSON format:
{
"title": "A short product title",
"productDescription": "Describe the product, including details about materials used and unique features."
}
`;

This structured approach makes sure AI-generated product descriptions are not only accurate and context-aware, but also optimized for search visibility, improving user experience and conversion rates.

Conclusion

Handmade.com successfully modernized its content generation workflow by using AI-powered components to automate product descriptions and optimize search. They chose Amazon Bedrock because it was quick and straightforward to integrate with their current architecture and provided multiple options for the model and embeddings used on the back-end for a respectable price point. The architecture incorporates foundation models from Amazon Bedrock, semantic retrieval with Amazon OpenSearch Service, and a lightweight API layer using Amazon API Gateway for seamless orchestration. These innovations have streamlined seller interactions and enabled consistent content quality across a large and growing catalog:

  • Modular orchestration – Handmade.com’s design integrates Anthropic Claude for generation and Amazon Titan for embedding, enabling flexible enrichment and real-time contextual search
  • Scalable inference – Amazon Bedrock handles concurrent multi-modal prompts and SEO requests without infrastructure overhead
  • Search optimization – Vector-based search improves product discoverability and reduces friction in seller content workflows

The system has laid the groundwork for future capabilities such as multilingual SEO, prompt tuning based on feedback, and inclusion of new content types. As a next step, Handmade.com plans to extend its use of Amazon Bedrock Agents for structured prompt workflows and to further simplify the on-boarding process for sellers. The team is also exploring ways to incorporate user engagement signals and review data to continue refining the generated content and improve recommendation quality.

Ready to transform your own content management workflows with AI? The journey Handmade.com took to modernize their product descriptions demonstrates the powerful possibilities when combining Amazon Bedrock’s foundation models with Amazon OpenSearch Service’s semantic search capabilities. Whether you’re managing an e-commerce platform, content repository, or digital marketplace, these tools can help you achieve similar results in automation, scalability, and enhanced user experience. Start exploring Amazon Bedrock and Amazon OpenSearch Service today to build your own AI-powered content solution. Visit the AWS Documentation to learn more about getting started with these services or connect with an AWS solutions architect to discuss your specific needs.


About the Authors

Obadiah Ndhaye is a Solutions Architect at AWS with a focus on cloud resilience and helping customers implement robust and scalable architectures following best practices. Obadiah is passionate about emerging technologies, particularly generative AI, and enabling customers to innovate efficiently in the cloud. In addition to his technology interests, Obadiah enjoys outdoor recreational activities.

Hardik Vasa is a Senior Solutions Architect at AWS. He focuses on Generative AI and Serverless technologies, helping customers make the best use of AWS services. Hardik shares his knowledge at various conferences and workshops. In his free time, he enjoys learning about new tech, playing video games, and spending time with his family.

Richard Handley serves as a technical engineer supporting both Novica.com and Handmade.com. Throughout his career, he’s worked with everything from digital media companies to e-commerce platforms and content sites, helping both established brands and scrappy startups figure out their tech strategy and system architecture. Over the years, he’s developed a knack for spotting where technology can solve real problems and turning those insights into products that people want to use. 

Akhil Raj is a QA professional, working with both Novica.com and Handmade.com, with a strong background in software testing and quality engineering. With hands-on experience in test automation, CI/CD integration and cloud-based testing strategies. He integrates AWS services to streamline QA workflows and ensure high-quality software delivery.

Shankar Sivan is a senior software engineer, at both Novica.com and Handmade.com, specializing in backend development and DevOps. He has expertise in AI driven solutions, including building systems with machine learning. His work focuses on automation, scalable infrastructure, and security best practices to enhance system reliability and efficiency.



Source link

Leave a Reply

Your email address will not be published. Required fields are marked *