Skip to main content

RAG Providers

Detailed configuration for each supported vector database provider.


Microsoft's managed search service with native semantic search, reranking, and hybrid search capabilities.

Best for: Azure-native deployments, enterprise environments with Azure infrastructure, use cases needing hybrid (keyword + semantic) search.

Required Fields

FieldExampleNotes
Endpointhttps://my-search.search.windows.netFrom Azure Portal → AI Search service → Overview
API Keyabc123...Admin or Query key from Azure Portal → Keys
Index Nameproduct-docs-indexThe name of your search index
Semantic Configmy-semantic-config(Optional) For semantic ranking
Vector FieldcontentVectorField in your index containing vectors
Content FieldcontentField containing the text to retrieve

Setup Notes

  • Create an Azure AI Search resource in Azure Portal
  • Create an index with a vector field (1536 dimensions, cosine similarity, HNSW algorithm)
  • Index your documents using the Azure SDK or REST API
  • Get the endpoint from the Overview blade
  • Get the API key from the Keys blade (use Query key for read-only access)

Free Tier

Azure AI Search has a free tier (F0) with 50MB of storage — fine for testing. For production, use Basic (2GB) or Standard (25GB+).

If your index has both keyword and vector fields, Azure AI Search supports hybrid search (combines keyword + semantic). Configure this via the API if needed.


Pinecone

Popular managed vector database. Known for its simple API and serverless tier.

Best for: Getting started quickly, production-scale deployments, serverless architecture.

Required Fields

FieldExampleNotes
API Keypc-abc123...From Pinecone Console → API Keys
Index Nameproduct-docsThe index to query
Hostproduct-docs-xxxxx.svc.pinecone.ioFrom Pinecone Console → Index → Host
Namespacedefault(Optional) Namespace within the index

Setup Notes

  • Sign up at pinecone.io
  • Create an index with 1536 dimensions and cosine metric
  • Index name must match exactly (case-sensitive)
  • For serverless indexes, get the host from the index details page
  • For starter tier, note the request rate limits

Free Tier

Pinecone's starter plan includes one index, 100MB storage, and limited requests — good for development. Production typically needs Standard plan.

Namespaces

If you're using namespaces to partition your data (e.g., one namespace per client), enter the specific namespace. Leave empty to query the default namespace.


Weaviate

Open-source vector database with strong filtering and multi-modal support.

Best for: Self-hosted deployments, complex filtering (where queries), multi-tenant architectures.

Required Fields (Cloud)

FieldExampleNotes
URLhttps://my-instance.weaviate.networkFrom Weaviate Cloud Console
API Keyweaviate-abc123From Weaviate Cloud Console → Details
Class NameProductDocumentWeaviate class to query (note: PascalCase)
Text FieldcontentThe property containing the text
Vector FieldWeaviate computes vectors via its modules

Required Fields (Self-hosted)

FieldExampleNotes
URLhttps://weaviate.yourcompany.comYour Weaviate server URL
API Key(Optional, if auth enabled)
Class NameProductDocument
Moduletext2vec-openai or text2vec-transformersEmbedding module configured on the server

Setup Notes

  • Weaviate classes are like tables — create a class for your content
  • The class schema defines properties and which module handles embedding
  • For OpenAI embedding module (text2vec-openai), Weaviate handles embedding — you need OpenAI config in Weaviate
  • For TARX's external embedding approach, configure Weaviate to accept pre-computed vectors

Qdrant

High-performance open-source vector database with Rust core.

Best for: High-throughput production workloads, self-hosted deployments, complex filtering.

Required Fields

FieldExampleNotes
URLhttps://my-cluster.cloud.qdrant.ioQdrant Cloud URL or self-hosted endpoint
API Keyqdrant-abc123From Qdrant Cloud Console, or set in self-hosted config
Collectionproduct_docsThe Qdrant collection to query
Vector NamecontentName of the named vector (if using named vectors)

Setup Notes

  • Create a collection with 1536 dimensions and cosine distance
  • When uploading points, include the text content in payload: {"content": "your text", "source_url": "https://..."}
  • Qdrant Cloud has a free tier for development
  • For self-hosted, ensure the API is accessible from TARX's backend

Payload Filtering

Qdrant supports rich payload filtering. If your collection has metadata (e.g., category, date), you can add filters. Currently supported via the Custom REST provider type for advanced filtering.


Supabase Vector

PostgreSQL-based vector storage using the pgvector extension.

Best for: Teams already using Supabase, SQL-native vector operations, combining vector search with relational data.

Required Fields

FieldExampleNotes
Supabase URLhttps://abcxyz.supabase.coFrom Supabase Dashboard → Settings → API
Service Role KeyeyJhbGc...Service role key (NOT anon key)
Table NamedocumentsPostgreSQL table with vector column
Content ColumncontentColumn containing the text
Embedding ColumnembeddingColumn with vector(1536) type
Metadata Columnssource_url,titleComma-separated columns to return as metadata

Setup Notes

  • Enable pgvector extension in Supabase (Database → Extensions → vector)
  • Create a table:
    CREATE TABLE documents (
    id bigserial primary key,
    content text,
    embedding vector(1536),
    source_url text,
    title text,
    created_at timestamp default now()
    );

    CREATE INDEX ON documents USING ivfflat (embedding vector_cosine_ops)
    WITH (lists = 100);
  • Use the service role key for server-side queries (has full access)
  • TARX performs: SELECT content, source_url, 1 - (embedding <=> $1) as score FROM documents ORDER BY score DESC LIMIT $2

Custom REST

For any vector database that exposes a REST API. This is the escape hatch for providers not natively supported.

Best for: Custom vector database deployments, internal enterprise vector stores, niche providers.

Required Fields

FieldExampleNotes
Search URLhttps://my-vectordb.com/api/searchEndpoint that accepts search queries
MethodPOSTHTTP method (usually POST)
Auth HeaderAuthorization: Bearer {api_key}How to pass credentials
Request TemplateSee belowJSON template for the search request
Response Path$.resultsJSONPath to extract results from response
Text Path$.results[*].textJSONPath to the text content in each result
Score Path$.results[*].scoreJSONPath to similarity scores

Request Template

TARX sends the embedded query vector as {vector} in the request template:

{
"vector": "{vector}",
"top_k": "{top_k}",
"namespace": "my-namespace"
}

TARX substitutes {vector} with the actual embedding array and {top_k} with the configured value.

Response Parsing

Your endpoint must return JSON. TARX uses JSONPath to extract:

  • The text content of each result
  • The similarity score

Example expected response:

{
"results": [
{"text": "SSO setup requires...", "score": 0.94, "url": "https://docs.example.com/sso"},
{"text": "SAML configuration...", "score": 0.87, "url": "https://docs.example.com/saml"}
]
}

Provider Comparison

Azure AI SearchPineconeWeaviateQdrantSupabaseCustom REST
Managed cloudVaries
Self-hosted
Free tierVaries
Hybrid searchVaries
Native Azure
SQL familiarityVaries
Setup complexityMediumLowMediumMediumMediumHigh