Skip to content

Commit e96586a

Browse files
katmayblnhsingh
andauthored
Update deployments section + hosting for app deployment control plane (#1106)
Fixes DOC-398, DOC-399 It was a little confusing to find app deployment instructions for self-hosted and Hybrid instances. The Deployment tab only covered Cloud (GitHub-based) deployments. This PR creates clear separation between infrastructure setup (one-time) and application deployment (ongoing): New file: - deploy-with-control-plane.mdx - Guide for deploying apps to Hybrid/Self-hosted with control plane using Docker images Updated files: - deploy-hybrid.mdx & deploy-self-hosted-full-platform.mdx - Removed app deployment steps, now focus just on infrastructure setup - deployments.mdx - Updated to show all three deployment paths (Cloud, Hybrid/Self-hosted with control plane, Standalone servers) --------- Co-authored-by: Lauren Hirata Singh <[email protected]>
1 parent 3fc19c1 commit e96586a

File tree

11 files changed

+175
-30
lines changed

11 files changed

+175
-30
lines changed

src/docs.json

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1153,12 +1153,19 @@
11531153
"langsmith/local-server",
11541154
"langsmith/app-development",
11551155
{
1156-
"group": "Deploy to Cloud",
1156+
"group": "Deploy to cloud",
11571157
"pages": [
11581158
"langsmith/deployment-quickstart",
11591159
"langsmith/deploy-to-cloud"
11601160
]
11611161
},
1162+
{
1163+
"group": "Deploy to self-hosted or hybrid",
1164+
"pages": [
1165+
"langsmith/deploy-with-control-plane",
1166+
"langsmith/deploy-standalone-server"
1167+
]
1168+
},
11621169
{
11631170
"group": "Configure for deployment",
11641171
"pages": [

src/langsmith/deploy-hybrid.mdx

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,6 @@ The [**hybrid**](/langsmith/hybrid) model lets you run the [data plane](/langsmi
1313

1414
The following steps describe how to connect your self-hosted data plane to the managed LangSmith control plane.
1515

16-
## Prerequisites
17-
18-
1. Use the [LangGraph CLI](/langsmith/cli) to [test your application locally](/langsmith/local-server).
19-
2. Use the [LangGraph CLI](/langsmith/cli) to build a Docker image (i.e. `langgraph build`) and push it to a registry your Kubernetes cluster or Amazon ECS cluster has access to.
20-
2116
## Kubernetes
2217

2318
### Prerequisites
@@ -90,8 +85,9 @@ The following steps describe how to connect your self-hosted data plane to the m
9085
langgraph-dataplane-operator-6b88879f9b-t76gk 1/1 Running 0 26s
9186
langgraph-dataplane-redis-0 1/1 Running 0 25s
9287
```
93-
7. Create a deployment from the [control plane UI](/langsmith/control-plane#control-plane-ui).
94-
1. Select the desired listener from the list of `Compute IDs` in the dropdown menu.
95-
2. Select the Kubernetes namespace to deploy to.
96-
3. Fill out all other required fields and select `Submit` in the top-right of the panel.
97-
4. The deployment will be deployed on the Kubernetes cluster where the listener is deployed and in the Kubernetes namespace specified in step 7b.
88+
89+
Your hybrid infrastructure is now ready to create deployments.
90+
91+
## Next steps
92+
93+
Once your infrastructure is set up, you're ready to deploy applications. See the deployment guides in the [Deployment tab](/langsmith/deployments) for instructions on building and deploying your applications.

src/langsmith/deploy-self-hosted-full-platform.mdx

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,7 @@ This guide builds on top of the [Kubernetes installation guide](/langsmith/kuber
2828

2929
1. You are using Kubernetes.
3030
2. You have an instance of [self-hosted LangSmith](/langsmith/kubernetes) running.
31-
3. Use the [LangGraph CLI](/langsmith/cli) to [test your application locally](/langsmith/local-server).
32-
4. Use the [LangGraph CLI](/langsmith/cli) to build a Docker image (i.e. `langgraph build`) and push it to a registry your Kubernetes cluster has access to.
33-
5. `KEDA` is installed on your cluster.
31+
3. `KEDA` is installed on your cluster.
3432
```bash
3533
helm repo add kedacore https://kedacore.github.io/charts
3634
helm install keda kedacore/keda --namespace keda --create-namespace
@@ -77,4 +75,9 @@ As of v0.12.0, the `langgraphPlatform` option is deprecated. Use `config.deploym
7775
```
7876
4. In your `values.yaml` file, configure the `hostBackendImage` and `operatorImage` options (if you need to mirror images)
7977
5. You can also configure base templates for your agents by overriding the base templates [here](https://github.com/langchain-ai/helm/blob/main/charts/langsmith/values.yaml#L898).
80-
6. You create a deployment from the [control plane UI](/langsmith/control-plane#control-plane-ui).
78+
79+
Your self-hosted infrastructure is now ready to create deployments.
80+
81+
## Next steps
82+
83+
Once your infrastructure is set up, you're ready to deploy applications. See the deployment guides in the [Deployment tab](/langsmith/deployments) for instructions on building and deploying your applications.
Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
---
2+
title: Deploy with control plane
3+
sidebarTitle: With control plane
4+
icon: "cloud-arrow-up"
5+
---
6+
7+
This guide shows you how to deploy your applications to [hybrid](/langsmith/hybrid) or [self-hosted](/langsmith/self-hosted) instances with a [control plane](/langsmith/control-plane). With a control plane, you build Docker images locally, push them to a registry that your Kubernetes cluster has access to, and deploy them with the [LangSmith UI](https://smith.langchain.com).
8+
9+
<Note>
10+
**This guide is for deploying applications, not setting up infrastructure.**
11+
12+
Before using this guide, you must have already completed infrastructure setup:
13+
- **[Hybrid setup](/langsmith/deploy-hybrid)**: For hybrid hosting.
14+
- **[Self-hosted with deployment setup](/langsmith/deploy-self-hosted-full-platform)**: For self-hosted with control plane.
15+
16+
If you haven't set up your infrastructure yet, start with the [Hosting section](/langsmith/hosting).
17+
</Note>
18+
19+
## Overview
20+
21+
Applications deployed to hybrid or self-hosted LangSmith instances with control plane use Docker images. In this guide, the application deployment workflow is:
22+
23+
1. Test your application locally using `langgraph dev` or [Studio](/langsmith/studio).
24+
1. Build a Docker image using the `langgraph build` command.
25+
1. Push the image to a container registry accessible by your infrastructure.
26+
1. Deploy from the [control plane UI](/langsmith/control-plane#control-plane-ui) by specifying the image URL.
27+
28+
## Prerequisites
29+
30+
Before completing this guide, you'll need the following:
31+
32+
- Completed infrastructure setup to enable your [data plane](/langsmith/data-plane) to receive application deployments:
33+
- [Hybrid setup](/langsmith/deploy-hybrid): Installs data plane components (listener, operator, CRDs) in your Kubernetes cluster that connect to LangChain's managed control plane.
34+
- [Self-hosted with deployment setup](/langsmith/deploy-self-hosted-full-platform): Enables deployment management on your self-hosted LangSmith instance.
35+
- Access to the [LangSmith UI](https://smith.langchain.com) with deployment management enabled.
36+
- A container registry accessible by your Kubernetes cluster.
37+
38+
## Step 1. Test locally
39+
40+
Before deploying, test your application locally. You can use the [LangGraph CLI](/langsmith/cli#dev) to run a LangGraph server in development mode:
41+
42+
```bash
43+
langgraph dev
44+
```
45+
46+
For a full guide local testing, refer to the [Local server quickstart](/langsmith/local-server).
47+
48+
## Step 2. Build Docker image
49+
50+
Build a Docker image of your application using the [`langgraph build`](/langsmith/cli#build) command:
51+
52+
```bash
53+
langgraph build -t my-image
54+
```
55+
56+
Build command options include:
57+
58+
| Option | Default | Description |
59+
|--------|---------|-------------|
60+
| `-t, --tag TEXT` | Required | Tag for the Docker image |
61+
| `--platform TEXT` | | Target platform(s) to build for (e.g., `linux/amd64,linux/arm64`) |
62+
| `--pull / --no-pull` | `--pull` | Build with latest remote Docker image |
63+
| `-c, --config FILE` | `langgraph.json` | Path to configuration file |
64+
65+
Example with platform specification:
66+
67+
```bash
68+
langgraph build --platform linux/amd64 -t my-image:v1.0.0
69+
```
70+
71+
For full details, see the [CLI reference](/langsmith/cli#build).
72+
73+
## Step 3. Push to container registry
74+
75+
Push your image to a container registry accessible by your Kubernetes cluster. The specific commands depend on your registry provider.
76+
77+
<Tip>
78+
Tag your images with version information (e.g., `my-registry.com/my-app:v1.0.0`) to make rollbacks easier.
79+
</Tip>
80+
81+
## Step 4. Deploy with the control plane UI
82+
83+
The [control plane UI](/langsmith/control-plane#control-plane-ui) allows you to create and manage deployments, view logs and metrics, and update configurations. To create a new deployment in the [LangSmith UI](https://smith.langchain.com):
84+
85+
1. In the left-hand navigation panel, select **Deployments**.
86+
1. In the top-right corner, select **+ New Deployment**.
87+
1. In the deployment configuration panel, provide:
88+
- **Image URL**: The full image URL you pushed in [Step 3](#step-3-push-to-container-registry).
89+
- **Listener/Compute ID**: Select the listener configured for your infrastructure.
90+
- **Namespace**: The Kubernetes namespace to deploy to.
91+
- **Environment variables**: Any required configuration (API keys, etc.).
92+
- Other deployment settings as needed.
93+
1. Select **Submit**.
94+
95+
The control plane will coordinate with your [data plane](/langsmith/data-plane) listener to deploy your application.
96+
97+
After creating a deployment, the infrastructure is [provisioned asynchronously](/langsmith/control-plane#asynchronous-deployment). Deployment can take up to several minutes, with initial deployments taking longer due to database creation.
98+
99+
From the control plane UI, you can view build logs, server logs, and deployment metrics including CPU/memory usage, replicas, and API performance. For more details, refer to the [control plane monitoring documentation](/langsmith/control-plane#monitoring).
100+
101+
<Note>
102+
A [LangSmith Observability tracing project](/langsmith/observability) is automatically created for each deployment with the same name as the deployment. Tracing environment variables are set automatically by the control plane.
103+
</Note>
104+
105+
## Update deployment
106+
107+
To deploy a new version of your application, create a [new revision](/langsmith/control-plane#revisions):
108+
109+
Starting from the LangSmith UI:
110+
111+
1. In the left-hand navigation panel, select **Deployments**.
112+
1. Select an existing deployment.
113+
1. In the Deployment view, select **+ New Revision** in the top-right corner.
114+
1. Update the configuration:
115+
- Update the **Image URL** to your new image version.
116+
- Update environment variables if needed.
117+
- Adjust other settings as needed.
118+
1. Select **Submit**.
119+
120+
## Next steps
121+
122+
- **[Control plane](/langsmith/control-plane)**: Learn more about control plane features.
123+
- **[Data plane](/langsmith/data-plane)**: Understand data plane architecture.
124+
- **[Observability](/langsmith/observability)**: Monitor your deployments with automatic tracing.
125+
- **[Studio](/langsmith/studio)**: Test and debug deployed applications.
126+
- **[LangGraph CLI](/langsmith/cli)**: Full CLI reference documentation.

src/langsmith/deployments.mdx

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,13 @@ This section covers how to package, build, and deploy your _agents_ and applicat
1313
A typical deployment workflow consists of the following steps:
1414

1515
1. **[Test locally](/langsmith/local-server)**: Run your application on a local server.
16-
2. **[Choose hosting](/langsmith/hosting)**: Select Cloud, Hybrid, or Self-hosted.
17-
3. **Deploy your app**: Push code or build images to your chosen environment.
16+
2. **[Choose hosting](/langsmith/hosting)**: (Required for deployment) Select Cloud, Hybrid, or Self-hosted.
17+
3. **Deploy your app**:
18+
- [**Cloud**](/langsmith/deploy-to-cloud): Push code from a git repository
19+
- [**Hybrid or Self-hosted with control plane**](/langsmith/deploy-with-control-plane): Build and push Docker images, deploy via UI
20+
- [**Standalone servers**](/langsmith/deploy-standalone-server): Deploy directly without control plane
1821
4. **[Monitor & manage](/langsmith/observability)**: Track traces, alerts, and dashboards.
1922

20-
<Info>
21-
**Prerequisites:** Before deploying applications, you need a LangSmith instance to deploy to. Choose a [hosting option](/langsmith/hosting) first:
22-
- [**Cloud**](/langsmith/cloud): Fully managed with automated CI/CD from a Git repository.
23-
- [**Hybrid**](/langsmith/hybrid): Enterprise option for data residency requirements.
24-
- [**Self-hosted**](/langsmith/self-hosted): Full control and data isolation.
25-
</Info>
26-
2723
## What you'll learn
2824

2925
- Configure your [app for deployment](/langsmith/application-structure) (dependencies, [project setup](/langsmith/setup-app-requirements-txt), and [monorepo support](/langsmith/monorepo-support)).

src/langsmith/evaluation.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ sidebarTitle: Overview
44
mode: wide
55
---
66

7+
import HostingSetup from '/snippets/langsmith/hosting-setup-note.mdx';
8+
79
The following sections help you create datasets, run evaluations, and analyze results:
810

911
<Columns cols={3}>
@@ -63,3 +65,5 @@ The following sections help you create datasets, run evaluations, and analyze re
6365
</Card>
6466

6567
</Columns>
68+
69+
<HostingSetup/>

src/langsmith/hosting.mdx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,12 @@ sidebarTitle: Hosting LangSmith
44
mode: wide
55
---
66

7-
This section covers how to host and manage **LangSmith**: the infrastructure, services, and datastores that power your observability, evaluation, and agent deployment capabilities.
7+
This section covers how to host and manage LangSmith infrastructure. You have the flexibility of setting up LangSmith for [observability](/langsmith/observability), [evaluation](/langsmith/evaluation), and [prompt engineering](/langsmith/prompt-engineering) features or using the full platform that also includes optional [LangSmith Deployment](/langsmith/deployments) features for deploying your applications through the UI.
88

99
<Callout icon="building" color="#2563EB" iconType="regular">
10-
**Start here if you're setting up or maintaining LangSmith infrastructure.** If you're ready to deploy your agent application, the [Deployment section](/langsmith/deployments) covers application structure, deployment configuration, and guides for deploying to Cloud.
10+
**Start here if you're setting up or maintaining LangSmith infrastructure.**
11+
12+
If you want to deploy an agent application, the [Deployment section](/langsmith/deployments) covers application structure and deployment configuration.
1113
</Callout>
1214

1315
## Choose your hosting option
@@ -25,7 +27,7 @@ You'll deploy LangSmith in one of three modes:
2527
href="/langsmith/cloud"
2628
cta="Get started"
2729
>
28-
Run all components fully managed in LangChain’s cloud.
30+
Fully managed observability, evaluation, prompt engineering, and application deployment. Deploy from GitHub with automated CI/CD.
2931
</Card>
3032

3133
<Card
@@ -34,7 +36,7 @@ You'll deploy LangSmith in one of three modes:
3436
href="/langsmith/hybrid"
3537
cta="Set up Hybrid"
3638
>
37-
**(Enterprise)** Manage the data plane running in your cloud while LangChain manages the control plane.
39+
**(Enterprise)** Observability, evaluation, prompt engineering, and application deployment with your applications running in your infrastructure.
3840
</Card>
3941

4042
<Card
@@ -44,7 +46,7 @@ You'll deploy LangSmith in one of three modes:
4446
href="/langsmith/self-hosted"
4547
cta="Run self-hosted"
4648
>
47-
**(Enterprise)** Run the full LangSmith or run standalone LangGraph Servers without the control plane UI.
49+
**(Enterprise)** Full control with observability, evaluation, and prompt engineering. Optionally add application deployment or run standalone servers.
4850
</Card>
4951
</Columns>
5052

src/langsmith/observability.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ sidebarTitle: Overview
44
mode: wide
55
---
66

7+
import HostingSetup from '/snippets/langsmith/hosting-setup-note.mdx';
8+
79
The following sections help you set up and use tracing, monitoring, and observability features:
810

911
<Columns cols={3}>
@@ -63,3 +65,5 @@ The following sections help you set up and use tracing, monitoring, and observab
6365
</Columns>
6466

6567
For terminology definitions and core concepts, refer to [Observability concepts](/langsmith/observability-concepts).
68+
69+
<HostingSetup/>

src/langsmith/prompt-engineering.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ sidebarTitle: Overview
44
mode: wide
55
---
66

7+
import HostingSetup from '/snippets/langsmith/hosting-setup-note.mdx';
8+
79
The following sections help you create, manage, and optimize your prompts:
810

911
<Columns cols={3}>
@@ -62,3 +64,5 @@ The following sections help you create, manage, and optimize your prompts:
6264
</Card>
6365

6466
</Columns>
67+
68+
<HostingSetup/>

src/langsmith/self-hosted.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ sidebarTitle: Overview
88
Self-hosted LangSmith is an add-on to the Enterprise plan designed for our largest, most security-conscious customers. For more details, refer to [Pricing](https://www.langchain.com/pricing). [Contact our sales team](https://www.langchain.com/contact-sales) if you want to get a license key to trial LangSmith in your environment.
99
</Note>
1010

11-
LangSmith supports different self-hosted configurations depending on your scale, security, and infrastructure needs. This page provides an overview of the supported self-hosted models:
11+
LangSmith supports different self-hosted configurations depending on your scale, security, and infrastructure needs. **Note that LangSmith Deployment (for deploying your applications) is a separate feature from LangSmith itself (for observability and evaluation).** You do not need LangSmith Deployment to use self-hosted LangSmith. This page provides an overview of the supported self-hosted models:
1212

1313
- **[LangSmith](#langsmith)**: Deploy an instance of the LangSmith application that includes observability, tracing, and evaluations in the UI and API. Best for teams who want self-hosted monitoring and evaluation without deploying agents.
1414
- **[LangSmith with deployment](#langsmith-with-deployment)**: Deploy a _graph_ to LangGraph Server via the control plane. The control plane and data plane form the full LangSmith platform, providing UI and API management for running and monitoring agents. This includes observability, evaluation, and deployment management.

0 commit comments

Comments
 (0)