Images
langwatch/langwatch
The main application image. Used for both LangWatch App and LangWatch Workers. Handles the web UI, REST API, OTel trace ingestion, and authentication.
What it does:
- Serves the LangWatch web UI
- Exposes REST and OTel APIs for trace ingestion from SDKs
- Handles authentication (email or SSO providers)
- Queries ClickHouse for analytics, dashboards, and trace search
- Manages the control plane via PostgreSQL (Prisma ORM)
- Broadcasts real-time updates via Server-Sent Events (SSE)
langwatch/langwatch_nlp
Go service (nlpgo) that runs workflows. The image keeps a Python interpreter only for code blocks.
What it does:
- Runs Optimization Studio workflows
- Handles custom evaluator execution
- Runs Python code blocks in a sandboxed process
- Proxies LLM calls from the playground and prompts
langwatch/langevals
Python service providing the built-in evaluator library.
What it does:
- LLM-as-a-Judge evaluators (boolean, category, score)
- RAG evaluators (faithfulness, context precision, context recall, answer relevancy)
- Safety evaluators (content safety, jailbreak detection, PII detection)
- Quality evaluators (summarization, query resolution, semantic similarity)
- Custom evaluators (exact match, BLEU/ROUGE scores, format validation)
LangEvals calls external LLM providers (OpenAI, Azure OpenAI, Google) to run model-based
evaluations. Ensure your evaluator pods have network access to these providers, or configure your
own provider credentials via the Helm chart.
Additional Images
The Helm chart also deploys:langwatch/clickhouse-serverless, Performance-tweaked ClickHouse image optimized for LangWatch’s event ingestion and analytical query patternslangwatch/ai-gateway, the AI Gateway (gateway.image.repository, on by default)langwatch/langyagent, the Langy assistant (langyagent.image.repository, on by default)postgres,redisand the Prometheus server image, when the chart runs those services
Service Communication
Image Tags
Private Registries
For air-gapped or private environments, mirror the images to your own registry:gateway.image.repository, langyagent.image.repository, clickhouse.image.repository, postgresql.image.repository, redis.image.repository, prometheus.server.image.repository, cronjobs.image.repository and app.storedObjects.localFilesystem.serializeUpgradesImage (the image the stored-objects upgrade hooks run).
The chart has no chart-wide imagePullSecrets value. If your registry needs credentials, attach the pull secret to the ServiceAccount the pods run as. The NLP, LangEvals, gateway, Langy, PostgreSQL and Redis pods use the namespace default ServiceAccount. The app and workers use it too, unless global.serviceAccount.create or global.serviceAccount.name gives them their own, in which case patch that one as well:
clickhouse.preflight.enabled, off by default in this chart) runs clickhouse.preflight.image under its own ServiceAccount and has no pull secret value. If you turn it on, mirror that image to a registry that needs no credentials.