RAG Development · Seattle, WA
A production RAG system is mostly a cloud architecture problem wearing a machine learning hat. The retrieval pipeline has to live inside your existing VPC, respect your IAM model, share your observability stack, and stay inside your unit economics at the volume your product actually does. The model choice is roughly the last interesting decision.
We build cloud-native RAG pipelines for Seattle engineering teams on AWS Bedrock with OpenSearch vector, Azure AI Search for Microsoft-heavy orgs, and self-managed alternatives when the volume or cost profile demands it. The engagements we like best start with someone on your team who has already mapped the retrieval pipeline on a whiteboard.
Pricing is scoped per engagement depending on cloud surface, document scale, and observability requirements.
Tell us about your cloud architecture and the retrieval pipeline you need to land inside it.
A demo RAG built on a vendor SDK and a hosted vector store takes a weekend. A production RAG that serves a million users inside an enterprise AWS account takes a quarter of careful engineering. The difference is everything that touches IAM, VPC, observability, cost, and the standard cloud-team operating model. At Amazon, Microsoft, Expedia, and Zillow scale, that operating model is non-negotiable.
The standard AWS pattern we deploy: documents in S3 with versioning and event notifications, ingestion handled by Lambda or Step Functions, embeddings via Bedrock (Titan, Cohere, or Anthropic embeddings depending on language and domain), vectors in OpenSearch Serverless with the k-NN plugin, generation via Bedrock Claude or InvokeModel against whatever foundation model fits the task. PrivateLink endpoints for Bedrock and OpenSearch keep all of it inside your VPC.
The Azure pattern looks different but solves the same problem. Azure AI Search now ships with integrated vector and hybrid search and (critically for Microsoft-stack orgs) handles security trimming against Entra ID and SharePoint permissions automatically. For a Tableau or Auth0 deployment integrated into a Microsoft 365 enterprise, this is usually the right default. Azure OpenAI provides the inference layer; Cosmos DB or Azure Database for PostgreSQL handle structured metadata.
Cost engineering is where most teams underbudget. A naive production RAG calling text-embedding-3-large on every ingestion change and Claude Sonnet on every query lands at $0.04 to $0.08 per query at moderate scale. At 50,000 queries a day, that's $60k to $120k per month. With caching, model tiering, and right-sized embedding choices the same workload comes in at $10k to $20k per month with no user-visible quality difference. We design for that from the first sketch.
Six components, each shaped by how AWS and Azure deployments actually go to production.
Documents in S3, embeddings via Bedrock Titan or Cohere, vectors in OpenSearch Serverless k-NN, generation via Bedrock Claude or InvokeModel. PrivateLink endpoints keep traffic inside your VPC. CloudFormation or CDK for repeatable infra.
Vector and hybrid search via Azure AI Search with semantic ranker. Security trimming against Entra ID and SharePoint permissions handled at the index layer. Azure OpenAI for inference, Cosmos DB or Azure Postgres for metadata.
Embedding caching keyed by content hash to avoid re-embedding unchanged chunks. Batch ingestion via Step Functions or Azure Data Factory. Cost telemetry surfaced in CloudWatch or Azure Monitor so you can see per-query spend before it surprises you.
Sub-500-ms end-to-end retrieval and generation through warm Lambda or container endpoints, in-region embedding and re-ranking, and streaming generation. Latency budget broken out per stage and measured in production via OpenTelemetry.
Redis or ElastiCache for hot-query results. Model tiering between Claude Haiku 4.5 for citation lookup, Claude Sonnet or GPT-5 for synthesis. Embedding model selection (Titan, Cohere, text-embedding-3-large) chosen against your actual cost and accuracy profile.
Distributed traces across every retrieval stage with chunk IDs, similarity scores, and re-ranker scores as span attributes. Exported to Datadog, Honeycomb, X-Ray, or Azure Monitor so production debugging happens in your existing tool.
Seattle is a cloud town. Amazon and Microsoft are the two largest cloud providers in the world and they ship from here. Most technical teams in the city, whether at AWS itself, Microsoft, Expedia, Zillow, Redfin, Tableau, Auth0, or any of the hundreds of cloud-native startups around South Lake Union, have a meaningful opinion about where their compute and data live. That opinion drives the RAG architecture, not the other way around.
Real-estate tech is a quiet leader in Seattle RAG adoption. Zillow, Redfin, and the in-house teams at Compass and other brokerages run enormous property document libraries (MLS listings, inspection reports, title searches, comparable sales) that are exactly the right shape for retrieval-augmented search. The user-facing search experience and the internal agent-facing answer engine are typically two different surfaces on the same pipeline, with different latency budgets and different cost profiles per query.
Travel tech is the second major vertical. Expedia and Vacasa both deal with vast volumes of hotel descriptions, rental property listings, and supplier content that needs to be searchable in natural language. The pipeline shape mirrors the real-estate one but with the additional complication of multilingual content (BGE-M3 or Cohere multilingual embeddings become the right default rather than text-embedding-3-large). We deploy these the same way: AWS-native if you're already there, Azure-native if you're a Microsoft shop, no architectural religion either way.
Send us your cloud architecture, your document scale, and your latency and cost targets. We reply within one business day with concrete recommendations and a price range.