Skip to content

Commit

Permalink
feat: release 03.5 docker compose (#685)
Browse files Browse the repository at this point in the history
  • Loading branch information
langchain-infra committed May 11, 2024
2 parents 7444754 + 7c14918 commit 528359e
Show file tree
Hide file tree
Showing 4 changed files with 81 additions and 37 deletions.
11 changes: 9 additions & 2 deletions python/langsmith/cli/.env.example
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Don't change this file. Instead, copy it to .env and change the values there. The default values will work out of the box as long as you provide your license key.
_LANGSMITH_IMAGE_VERSION=0.2.17
_LANGSMITH_IMAGE_VERSION=0.3.5
LANGSMITH_LICENSE_KEY=your-license-key # Change to your Langsmith license key
OPENAI_API_KEY=your-openai-api-key # Needed for Online Evals and Magic Query features
AUTH_TYPE=none # Set to oauth if you want to use OAuth2.0
Expand All @@ -10,4 +10,11 @@ POSTGRES_DATABASE_URI=postgres:postgres@langchain-db:5432/postgres # Change to y
REDIS_DATABASE_URI=redis://langchain-redis:6379 # Change to your Redis URI if using external Redis. Otherwise, leave it as is
LOG_LEVEL=warning # Change to your desired log level
MAX_ASYNC_JOBS_PER_WORKER=10 # Change to your desired maximum async jobs per worker. We recommend 10/suggest spinning up more replicas of the queue worker if you need more throughput
ASYNCPG_POOL_MAX_SIZE=${ASYNCPG_POOL_MAX_SIZE:-3} # Change the PG pool size based off your pg instance/requirements.
ASYNCPG_POOL_MAX_SIZE=3 # Change the PG pool size based off your pg instance/requirements.
CLICKHOUSE_HOST=langchain-clickhouse
CLICKHOUSE_USER=default
CLICKHOUSE_DB=default
CLICKHOUSE_PORT=8123
CLICKHOUSE_TLS=false
CLICKHOUSE_PASSWORD=password# Change to your Clickhouse password if needed
CLICKHOUSE_NATIVE_PORT=9000
91 changes: 64 additions & 27 deletions python/langsmith/cli/docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
version: "4"
services:
langchain-playground:
image: langchain/langsmith-playground:${_LANGSMITH_IMAGE_VERSION:-0.2.17}
image: langchain/langsmith-playground:${_LANGSMITH_IMAGE_VERSION:-0.3.5}
ports:
- 3001:3001
langchain-frontend:
image: langchain/langsmith-frontend:${_LANGSMITH_IMAGE_VERSION:-0.2.17}
image: langchain/langsmith-frontend:${_LANGSMITH_IMAGE_VERSION:-0.3.5}
environment:
- VITE_BACKEND_AUTH_TYPE=${AUTH_TYPE:-none}
- VITE_OAUTH_CLIENT_ID=${OAUTH_CLIENT_ID}
Expand All @@ -16,10 +16,11 @@ services:
- langchain-backend
- langchain-playground
langchain-backend:
image: langchain/langsmith-backend:${_LANGSMITH_IMAGE_VERSION:-0.2.17}
image: langchain/langsmith-backend:${_LANGSMITH_IMAGE_VERSION:-0.3.5}
environment:
- PORT=1984
- LANGCHAIN_ENV=local_docker
- GO_ENDPOINT=http://langchain-platform-backend:1986
- LANGSMITH_LICENSE_KEY=${LANGSMITH_LICENSE_KEY}
- OPENAI_API_KEY=${OPENAI_API_KEY}
- LOG_LEVEL=${LOG_LEVEL:-warning}
Expand All @@ -29,9 +30,12 @@ services:
- API_KEY_SALT=${API_KEY_SALT}
- POSTGRES_DATABASE_URI=${POSTGRES_DATABASE_URI:-postgres:postgres@langchain-db:5432/postgres}
- REDIS_DATABASE_URI=${REDIS_DATABASE_URI:-redis://langchain-redis:6379}
- INGESTION_QUEUE=default
- ADHOC_QUEUE=default
- RUN_RULES_QUEUE=default
- CLICKHOUSE_HOST=${CLICKHOUSE_HOST:-langchain-clickhouse}
- CLICKHOUSE_USER=${CLICKHOUSE_USER:-default}
- CLICKHOUSE_PASSWORD=${CLICKHOUSE_PASSWORD:-password}
- CLICKHOUSE_DB=${CLICKHOUSE_DB:-default}
- CLICKHOUSE_PORT=${CLICKHOUSE_PORT:-8123}
- CLICKHOUSE_TLS=${CLICKHOUSE_TLS:-false}
ports:
- 1984:1984
depends_on:
Expand All @@ -44,10 +48,35 @@ services:
postgres-setup:
condition: service_completed_successfully
restart: always
langchain-platform-backend:
image: langchain/langsmith-go-backend:${_LANGSMITH_IMAGE_VERSION:-0.3.5}
environment:
- PORT=1986
- LANGCHAIN_ENV=local_docker
- LANGSMITH_LICENSE_KEY=${LANGSMITH_LICENSE_KEY}
- OPENAI_API_KEY=${OPENAI_API_KEY}
- LOG_LEVEL=${LOG_LEVEL:-warning}
- AUTH_TYPE=${AUTH_TYPE:-none}
- OAUTH_CLIENT_ID=${OAUTH_CLIENT_ID}
- OAUTH_ISSUER_URL=${OAUTH_ISSUER_URL}
- API_KEY_SALT=${API_KEY_SALT}
- POSTGRES_DATABASE_URI=${POSTGRES_DATABASE_URI:-postgres:postgres@langchain-db:5432/postgres}
- REDIS_DATABASE_URI=${REDIS_DATABASE_URI:-redis://langchain-redis:6379}
ports:
- 1986:1986
depends_on:
langchain-db:
condition: service_healthy
langchain-redis:
condition: service_healthy
clickhouse-setup:
condition: service_completed_successfully
postgres-setup:
condition: service_completed_successfully
restart: always
langchain-queue:
image: langchain/langsmith-backend:${_LANGSMITH_IMAGE_VERSION:-0.2.17}
image: langchain/langsmith-backend:${_LANGSMITH_IMAGE_VERSION:-0.3.5}
environment:
- PORT=1984
- LANGCHAIN_ENV=local_docker
- LANGSMITH_LICENSE_KEY=${LANGSMITH_LICENSE_KEY}
- OPENAI_API_KEY=${OPENAI_API_KEY}
Expand All @@ -60,9 +89,12 @@ services:
- REDIS_DATABASE_URI=${REDIS_DATABASE_URI:-redis://langchain-redis:6379}
- MAX_ASYNC_JOBS_PER_WORKER=${MAX_ASYNC_JOBS_PER_WORKER:-10}
- ASYNCPG_POOL_MAX_SIZE=${ASYNCPG_POOL_MAX_SIZE:-3}
- INGESTION_QUEUE=default
- ADHOC_QUEUE=default
- RUN_RULES_QUEUE=default
- CLICKHOUSE_HOST=${CLICKHOUSE_HOST:-langchain-clickhouse}
- CLICKHOUSE_USER=${CLICKHOUSE_USER:-default}
- CLICKHOUSE_PASSWORD=${CLICKHOUSE_PASSWORD:-password}
- CLICKHOUSE_DB=${CLICKHOUSE_DB:-default}
- CLICKHOUSE_PORT=${CLICKHOUSE_PORT:-8123}
- CLICKHOUSE_TLS=${CLICKHOUSE_TLS:-false}
command:
- "saq"
- "app.workers.queues.single_queue_worker.settings"
Expand Down Expand Up @@ -116,9 +148,9 @@ services:
user: "101:101"
restart: always
environment:
- CLICKHOUSE_DB=default
- CLICKHOUSE_USER=default
- CLICKHOUSE_PASSWORD=password
- CLICKHOUSE_DB=${CLICKHOUSE_DB:-default}
- CLICKHOUSE_USER=${CLICKHOUSE_USER:-default}
- CLICKHOUSE_PASSWORD=${CLICKHOUSE_PASSWORD:-password}
volumes:
- langchain-clickhouse-data:/var/lib/clickhouse
- ./users.xml:/etc/clickhouse-server/users.d/users.xml
Expand All @@ -131,30 +163,26 @@ services:
timeout: 2s
retries: 30
clickhouse-setup:
image: langchain/langsmith-backend:${_LANGSMITH_IMAGE_VERSION:-0.2.17}
image: langchain/langsmith-backend:${_LANGSMITH_IMAGE_VERSION:-0.3.5}
depends_on:
langchain-clickhouse:
condition: service_healthy
restart: "on-failure:10"
environment:
- PORT=1984
- LANGCHAIN_ENV=local_docker
- LANGSMITH_LICENSE_KEY=${LANGSMITH_LICENSE_KEY}
- OPENAI_API_KEY=${OPENAI_API_KEY}
- LOG_LEVEL=${LOG_LEVEL:-warning}
- AUTH_TYPE=${AUTH_TYPE:-none}
- OAUTH_CLIENT_ID=${OAUTH_CLIENT_ID}
- OAUTH_ISSUER_URL=${OAUTH_ISSUER_URL}
- POSTGRES_DATABASE_URI=${POSTGRES_DATABASE_URI:-postgres:postgres@langchain-db:5432/postgres}
- REDIS_DATABASE_URI=${REDIS_DATABASE_URI:-redis://langchain-redis:6379}
- CLICKHOUSE_HOST=${CLICKHOUSE_HOST:-langchain-clickhouse}
- CLICKHOUSE_USER=${CLICKHOUSE_USER:-default}
- CLICKHOUSE_PASSWORD=${CLICKHOUSE_PASSWORD:-password}
- CLICKHOUSE_DB=${CLICKHOUSE_DB:-default}
- CLICKHOUSE_PORT=${CLICKHOUSE_PORT:-8123}
- CLICKHOUSE_TLS=${CLICKHOUSE_TLS:-false}
entrypoint:
[
"bash",
"-c",
"migrate -source file://clickhouse/migrations -database 'clickhouse://langchain-clickhouse:9000?username=default&password=password&database=default&x-multi-statement=true&x-migrations-table-engine=MergeTree' up",
"migrate -source file://clickhouse/migrations -database 'clickhouse://${CLICKHOUSE_HOST}:${CLICKHOUSE_NATIVE_PORT}?username=${CLICKHOUSE_USER}&password=${CLICKHOUSE_PASSWORD}&database=${CLICKHOUSE_DB}&x-multi-statement=true&x-migrations-table-engine=MergeTree' up",
]
postgres-setup:
image: langchain/langsmith-backend:${_LANGSMITH_IMAGE_VERSION:-0.2.17}
image: langchain/langsmith-backend:${_LANGSMITH_IMAGE_VERSION:-0.3.5}
depends_on:
langchain-db:
condition: service_healthy
Expand All @@ -163,11 +191,20 @@ services:
- LANGSMITH_LICENSE_KEY=${LANGSMITH_LICENSE_KEY}
- OPENAI_API_KEY=${OPENAI_API_KEY}
- LOG_LEVEL=${LOG_LEVEL:-warning}
- AUTH_TYPE=${AUTH_TYPE:-none}
- OAUTH_CLIENT_ID=${OAUTH_CLIENT_ID}
- OAUTH_ISSUER_URL=${OAUTH_ISSUER_URL}
- API_KEY_SALT=${API_KEY_SALT}
- POSTGRES_DATABASE_URI=${POSTGRES_DATABASE_URI:-postgres:postgres@langchain-db:5432/postgres}
- REDIS_DATABASE_URI=${REDIS_DATABASE_URI:-redis://langchain-redis:6379}
- MAX_ASYNC_JOBS_PER_WORKER=${MAX_ASYNC_JOBS_PER_WORKER:-10}
- ASYNCPG_POOL_MAX_SIZE=${ASYNCPG_POOL_MAX_SIZE:-3}
- CLICKHOUSE_HOST=${CLICKHOUSE_HOST:-langchain-clickhouse}
- CLICKHOUSE_USER=${CLICKHOUSE_USER:-default}
- CLICKHOUSE_PASSWORD=${CLICKHOUSE_PASSWORD:-password}
- CLICKHOUSE_DB=${CLICKHOUSE_DB:-default}
- CLICKHOUSE_PORT=${CLICKHOUSE_PORT:-8123}
- CLICKHOUSE_TLS=${CLICKHOUSE_TLS:-false}
restart: "on-failure:10"
entrypoint:
[
Expand Down
14 changes: 7 additions & 7 deletions python/langsmith/cli/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,12 +101,12 @@ def _start_local(self) -> None:
def pull(
self,
*,
version: str = "0.2.17",
version: str = "0.3.5",
) -> None:
"""Pull the latest LangSmith images.
Args:
version: The LangSmith version to use for LangSmith. Defaults to 0.2.17
version: The LangSmith version to use for LangSmith. Defaults to 0.3.5
"""
os.environ["_LANGSMITH_IMAGE_VERSION"] = version
subprocess.run(
Expand All @@ -123,7 +123,7 @@ def start(
*,
openai_api_key: Optional[str] = None,
langsmith_license_key: str,
version: str = "0.2.17",
version: str = "0.3.5",
) -> None:
"""Run the LangSmith server locally.
Expand Down Expand Up @@ -251,8 +251,8 @@ def main() -> None:
)
server_start_parser.add_argument(
"--version",
default="0.2.17",
help="The LangSmith version to use for LangSmith. Defaults to 0.2.17.",
default="0.3.5",
help="The LangSmith version to use for LangSmith. Defaults to 0.3.5.",
)
server_start_parser.set_defaults(
func=lambda args: server_command.start(
Expand All @@ -279,8 +279,8 @@ def main() -> None:
)
server_pull_parser.add_argument(
"--version",
default="0.2.17",
help="The LangSmith version to use for LangSmith. Defaults to 0.2.17.",
default="0.3.5",
help="The LangSmith version to use for LangSmith. Defaults to 0.3.5.",
)
server_pull_parser.set_defaults(
func=lambda args: server_command.pull(version=args.version)
Expand Down
2 changes: 1 addition & 1 deletion python/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "langsmith"
version = "0.1.56"
version = "0.1.57"
description = "Client library to connect to the LangSmith LLM Tracing and Evaluation Platform."
authors = ["LangChain <support@langchain.dev>"]
license = "MIT"
Expand Down

0 comments on commit 528359e

Please sign in to comment.