traicebox 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,266 +0,0 @@
1
- services:
2
- db:
3
- image: pgautoupgrade/pgautoupgrade:18-alpine
4
- environment:
5
- - POSTGRES_DB=postgres
6
- - POSTGRES_USER=${POSTGRES_SUPERUSER}
7
- - POSTGRES_PASSWORD=${POSTGRES_SUPERPASS}
8
- - PGAUTO_DEVEL=
9
- - PGAUTO_ONESHOT=no
10
- - LITELLM_DB_NAME=${LITELLM_DB_NAME}
11
- - LITELLM_DB_USER=${LITELLM_DB_USER}
12
- - LITELLM_DB_PASSWORD=${LITELLM_DB_PASSWORD}
13
- - LANGFUSE_DB_NAME=${LANGFUSE_DB_NAME}
14
- - LANGFUSE_DB_USER=${LANGFUSE_DB_USER}
15
- - LANGFUSE_DB_PASSWORD=${LANGFUSE_DB_PASSWORD}
16
- healthcheck:
17
- test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_SUPERUSER} -d postgres && psql -U ${POSTGRES_SUPERUSER} -d postgres -tAc \"SELECT 1 FROM pg_database WHERE datname IN ('${LITELLM_DB_NAME}','${LANGFUSE_DB_NAME}')\" | grep -q 1"]
18
- interval: 3s
19
- timeout: 3s
20
- retries: 20
21
- start_period: 5s
22
- volumes:
23
- - postgres_data:/var/lib/postgresql
24
- - ./postgres/init/00-app-databases.sh:/docker-entrypoint-initdb.d/00-app-databases.sh:ro
25
- langfuse-clickhouse:
26
- image: clickhouse/clickhouse-server
27
- user: "101:101"
28
- environment:
29
- - CLICKHOUSE_DB=${CLICKHOUSE_DB}
30
- - CLICKHOUSE_USER=${CLICKHOUSE_USER}
31
- - CLICKHOUSE_PASSWORD=${CLICKHOUSE_PASSWORD}
32
- - TZ=UTC
33
- healthcheck:
34
- test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8123/ping"]
35
- interval: 5s
36
- timeout: 5s
37
- retries: 10
38
- start_period: 1s
39
- volumes:
40
- - langfuse_clickhouse_data:/var/lib/clickhouse
41
- - langfuse_clickhouse_logs:/var/log/clickhouse-server
42
- langfuse-redis:
43
- image: redis:latest
44
- command:
45
- - --requirepass
46
- - ${LANGFUSE_REDIS_PASSWORD}
47
- - --maxmemory-policy
48
- - noeviction
49
- healthcheck:
50
- test: ["CMD", "redis-cli", "-a", "${LANGFUSE_REDIS_PASSWORD}", "ping"]
51
- interval: 3s
52
- timeout: 10s
53
- retries: 10
54
- volumes:
55
- - langfuse_redis_data:/data
56
- langfuse-minio:
57
- image: cgr.dev/chainguard/minio
58
- entrypoint: sh
59
- command:
60
- - -c
61
- - mkdir -p /data/langfuse && minio server --address ":9000" --console-address ":9001" /data
62
- environment:
63
- - MINIO_ROOT_USER=${MINIO_ROOT_USER}
64
- - MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD}
65
- healthcheck:
66
- test: ["CMD", "mc", "ready", "local"]
67
- interval: 1s
68
- timeout: 5s
69
- retries: 5
70
- start_period: 1s
71
- volumes:
72
- - langfuse_minio_data:/data
73
- langfuse-worker:
74
- image: langfuse/langfuse-worker:3
75
- depends_on:
76
- db:
77
- condition: service_healthy
78
- langfuse-web:
79
- condition: service_healthy
80
- langfuse-minio:
81
- condition: service_healthy
82
- langfuse-redis:
83
- condition: service_healthy
84
- langfuse-clickhouse:
85
- condition: service_healthy
86
- environment: &langfuse-env
87
- NEXTAUTH_URL: http://langfuse.localhost:${TRAICEBOX_PORT}
88
- DATABASE_URL: postgresql://${LANGFUSE_DB_USER}:${LANGFUSE_DB_PASSWORD}@db:5432/${LANGFUSE_DB_NAME}
89
- SALT: ${LANGFUSE_SALT}
90
- ENCRYPTION_KEY: "${LANGFUSE_ENCRYPTION_KEY}"
91
- TELEMETRY_ENABLED: "${LANGFUSE_TELEMETRY_ENABLED}"
92
- LANGFUSE_ENABLE_EXPERIMENTAL_FEATURES: "${LANGFUSE_EXPERIMENTAL_FEATURES}"
93
- CLICKHOUSE_MIGRATION_URL: clickhouse://langfuse-clickhouse:9000
94
- CLICKHOUSE_URL: http://langfuse-clickhouse:8123
95
- CLICKHOUSE_USER: ${CLICKHOUSE_USER}
96
- CLICKHOUSE_PASSWORD: ${CLICKHOUSE_PASSWORD}
97
- CLICKHOUSE_CLUSTER_ENABLED: "false"
98
- LANGFUSE_S3_EVENT_UPLOAD_BUCKET: langfuse
99
- LANGFUSE_S3_EVENT_UPLOAD_REGION: auto
100
- LANGFUSE_S3_EVENT_UPLOAD_ACCESS_KEY_ID: ${MINIO_ROOT_USER}
101
- LANGFUSE_S3_EVENT_UPLOAD_SECRET_ACCESS_KEY: ${MINIO_ROOT_PASSWORD}
102
- LANGFUSE_S3_EVENT_UPLOAD_ENDPOINT: http://langfuse-minio:9000
103
- LANGFUSE_S3_EVENT_UPLOAD_FORCE_PATH_STYLE: "true"
104
- LANGFUSE_S3_EVENT_UPLOAD_PREFIX: events/
105
- LANGFUSE_S3_MEDIA_UPLOAD_BUCKET: langfuse
106
- LANGFUSE_S3_MEDIA_UPLOAD_REGION: auto
107
- LANGFUSE_S3_MEDIA_UPLOAD_ACCESS_KEY_ID: ${MINIO_ROOT_USER}
108
- LANGFUSE_S3_MEDIA_UPLOAD_SECRET_ACCESS_KEY: ${MINIO_ROOT_PASSWORD}
109
- LANGFUSE_S3_MEDIA_UPLOAD_ENDPOINT: http://langfuse-minio:9000
110
- LANGFUSE_S3_MEDIA_UPLOAD_FORCE_PATH_STYLE: "true"
111
- LANGFUSE_S3_MEDIA_UPLOAD_PREFIX: media/
112
- REDIS_HOST: langfuse-redis
113
- REDIS_PORT: "6379"
114
- REDIS_AUTH: ${LANGFUSE_REDIS_PASSWORD}
115
- langfuse-web:
116
- image: langfuse/langfuse:3
117
- depends_on:
118
- db:
119
- condition: service_healthy
120
- langfuse-minio:
121
- condition: service_healthy
122
- langfuse-redis:
123
- condition: service_healthy
124
- langfuse-clickhouse:
125
- condition: service_healthy
126
- environment:
127
- <<: *langfuse-env
128
- NEXTAUTH_SECRET: ${LANGFUSE_NEXTAUTH_SECRET}
129
- AUTH_DISABLE_SIGNUP: ${LANGFUSE_AUTH_DISABLE_SIGNUP}
130
- LANGFUSE_INIT_ORG_ID: ${LANGFUSE_INIT_ORG_ID}
131
- LANGFUSE_INIT_ORG_NAME: ${LANGFUSE_INIT_ORG_NAME}
132
- LANGFUSE_INIT_PROJECT_ID: ${LANGFUSE_INIT_PROJECT_ID}
133
- LANGFUSE_INIT_PROJECT_NAME: ${LANGFUSE_INIT_PROJECT_NAME}
134
- LANGFUSE_INIT_PROJECT_PUBLIC_KEY: ${LANGFUSE_INIT_PROJECT_PUBLIC_KEY}
135
- LANGFUSE_INIT_PROJECT_SECRET_KEY: ${LANGFUSE_INIT_PROJECT_SECRET_KEY}
136
- LANGFUSE_INIT_USER_EMAIL: ${LANGFUSE_INIT_USER_EMAIL}
137
- LANGFUSE_INIT_USER_NAME: ${LANGFUSE_INIT_USER_NAME}
138
- LANGFUSE_INIT_USER_PASSWORD: ${LANGFUSE_INIT_USER_PASSWORD}
139
- healthcheck:
140
- test: ["CMD", "node", "-e", "const host = process.env.HOSTNAME || 'localhost'; fetch('http://' + host + ':3000/api/auth/csrf').then(async (r) => { const ok = r.ok && (await r.text()).includes('csrfToken'); process.exit(ok ? 0 : 1); }).catch(() => process.exit(1))"]
141
- interval: 5s
142
- timeout: 5s
143
- retries: 24
144
- start_period: 20s
145
- langfuse-proxy:
146
- build:
147
- context: .
148
- dockerfile: langfuse-proxy/Dockerfile
149
- depends_on:
150
- langfuse-web:
151
- condition: service_healthy
152
- environment:
153
- - PORT=3000
154
- - LANGFUSE_PUBLIC_ORIGIN=http://langfuse.localhost:${TRAICEBOX_PORT}
155
- - LANGFUSE_UPSTREAM_ORIGIN=http://langfuse-web:3000
156
- - LANGFUSE_PROXY_AUTOLOGIN=${LANGFUSE_PROXY_AUTOLOGIN}
157
- - LANGFUSE_INIT_USER_EMAIL=${LANGFUSE_INIT_USER_EMAIL}
158
- - LANGFUSE_INIT_USER_PASSWORD=${LANGFUSE_INIT_USER_PASSWORD}
159
- healthcheck:
160
- test: ["CMD", "bun", "-e", "fetch('http://127.0.0.1:3000/readyz').then((r) => process.exit(r.ok ? 0 : 1)).catch(() => process.exit(1))"]
161
- interval: 5s
162
- timeout: 5s
163
- retries: 24
164
- start_period: 10s
165
- litellm:
166
- image: docker.litellm.ai/berriai/litellm:main-latest
167
- depends_on:
168
- db:
169
- condition: service_healthy
170
- langfuse-web:
171
- condition: service_healthy
172
- environment:
173
- - DATABASE_URL=postgresql://${LITELLM_DB_USER}:${LITELLM_DB_PASSWORD}@db:5432/${LITELLM_DB_NAME}
174
- - LANGFUSE_PUBLIC_KEY=${LANGFUSE_INIT_PROJECT_PUBLIC_KEY}
175
- - LANGFUSE_SECRET_KEY=${LANGFUSE_INIT_PROJECT_SECRET_KEY}
176
- - LANGFUSE_OTEL_HOST=http://langfuse-web:3000
177
- - LANGFUSE_TRACING_ENVIRONMENT=${LANGFUSE_TRACING_ENVIRONMENT}
178
- - LITELLM_MASTER_KEY=${LITELLM_MASTER_KEY}
179
- extra_hosts:
180
- - host.docker.internal:host-gateway
181
- secrets:
182
- - source: openai_compatible_api_key
183
- target: openai_compatible_api_key
184
- volumes:
185
- - ./litellm:/app/litellm-config:ro
186
- entrypoint:
187
- - /bin/sh
188
- - /app/litellm-config/start-litellm.sh
189
- command:
190
- - --config
191
- - /app/litellm-config/config.yaml
192
- - --log_config
193
- - /app/litellm-config/logging.json
194
- - --port
195
- - "4000"
196
- healthcheck:
197
- test: ["CMD", "python3", "-c", "import sys, urllib.request; sys.exit(0 if urllib.request.urlopen('http://127.0.0.1:4000/health/readiness', timeout=5).getcode() == 200 else 1)"]
198
- interval: 5s
199
- timeout: 5s
200
- retries: 24
201
- start_period: 20s
202
- litellm-ui-proxy:
203
- build:
204
- context: .
205
- dockerfile: litellm-ui-proxy/Dockerfile
206
- depends_on:
207
- litellm:
208
- condition: service_healthy
209
- environment:
210
- - PORT=4000
211
- - LITELLM_UPSTREAM_ORIGIN=http://litellm:4000
212
- - LITELLM_MASTER_KEY=${LITELLM_MASTER_KEY}
213
- healthcheck:
214
- test: ["CMD", "bun", "-e", "fetch('http://127.0.0.1:4000/readyz').then((r) => process.exit(r.ok ? 0 : 1)).catch(() => process.exit(1))"]
215
- interval: 5s
216
- timeout: 5s
217
- retries: 24
218
- start_period: 10s
219
- litellm-bootstrap:
220
- image: curlimages/curl:8.16.0
221
- depends_on:
222
- litellm:
223
- condition: service_healthy
224
- environment:
225
- - LITELLM_MASTER_KEY=${LITELLM_MASTER_KEY}
226
- - LITELLM_CLIENT_KEY=${LITELLM_CLIENT_KEY}
227
- volumes:
228
- - ./litellm/bootstrap-client-key.sh:/bootstrap-client-key.sh:ro
229
- entrypoint:
230
- - sh
231
- - /bootstrap-client-key.sh
232
- caddy:
233
- image: caddy:2-alpine
234
- depends_on:
235
- langfuse-proxy:
236
- condition: service_healthy
237
- litellm:
238
- condition: service_healthy
239
- litellm-ui-proxy:
240
- condition: service_healthy
241
- ports:
242
- - ${TRAICEBOX_HOST}:${TRAICEBOX_PORT}:${TRAICEBOX_PORT}
243
- environment:
244
- - TRAICEBOX_PORT=${TRAICEBOX_PORT}
245
- volumes:
246
- - ./caddy/Caddyfile:/etc/caddy/Caddyfile:ro
247
- healthcheck:
248
- test: ["CMD-SHELL", "wget -qO- --header='Host: litellm.localhost:${TRAICEBOX_PORT}' http://127.0.0.1:${TRAICEBOX_PORT}/health/readiness >/dev/null && wget -qO- --header='Host: litellm.localhost:${TRAICEBOX_PORT}' http://127.0.0.1:${TRAICEBOX_PORT}/ui/ >/dev/null && wget -qO- --header='Host: langfuse.localhost:${TRAICEBOX_PORT}' http://127.0.0.1:${TRAICEBOX_PORT}/readyz >/dev/null"]
249
- interval: 5s
250
- timeout: 5s
251
- retries: 24
252
- start_period: 10s
253
- volumes:
254
- postgres_data:
255
- driver: local
256
- langfuse_clickhouse_data:
257
- driver: local
258
- langfuse_clickhouse_logs:
259
- driver: local
260
- langfuse_minio_data:
261
- driver: local
262
- langfuse_redis_data:
263
- driver: local
264
- secrets:
265
- openai_compatible_api_key:
266
- file: ${OPENAI_COMPATIBLE_API_KEY_SECRET_FILE:-/dev/null}
@@ -1,101 +0,0 @@
1
- model_list:
2
- - model_name: bytedance/seed-oss-36b
3
- litellm_params:
4
- model: openai/bytedance/seed-oss-36b
5
- api_base: http://host.docker.internal:1234/v1
6
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
7
- - model_name: google/gemma-4-26b-a4b
8
- litellm_params:
9
- model: openai/google/gemma-4-26b-a4b
10
- api_base: http://host.docker.internal:1234/v1
11
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
12
- - model_name: google/gemma-4-31b
13
- litellm_params:
14
- model: openai/google/gemma-4-31b
15
- api_base: http://host.docker.internal:1234/v1
16
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
17
- - model_name: google/gemma-4-e2b
18
- litellm_params:
19
- model: openai/google/gemma-4-e2b
20
- api_base: http://host.docker.internal:1234/v1
21
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
22
- - model_name: google/gemma-4-e4b
23
- litellm_params:
24
- model: openai/google/gemma-4-e4b
25
- api_base: http://host.docker.internal:1234/v1
26
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
27
- - model_name: ibm/granite-4-h-tiny
28
- litellm_params:
29
- model: openai/ibm/granite-4-h-tiny
30
- api_base: http://host.docker.internal:1234/v1
31
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
32
- - model_name: liquid/lfm2-24b-a2b
33
- litellm_params:
34
- model: openai/liquid/lfm2-24b-a2b
35
- api_base: http://host.docker.internal:1234/v1
36
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
37
- - model_name: microsoft/phi-4-reasoning-plus
38
- litellm_params:
39
- model: openai/microsoft/phi-4-reasoning-plus
40
- api_base: http://host.docker.internal:1234/v1
41
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
42
- - model_name: mistralai/devstral-small-2-2512
43
- litellm_params:
44
- model: openai/mistralai/devstral-small-2-2512
45
- api_base: http://host.docker.internal:1234/v1
46
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
47
- - model_name: mistralai/devstral-small-2507
48
- litellm_params:
49
- model: openai/mistralai/devstral-small-2507
50
- api_base: http://host.docker.internal:1234/v1
51
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
52
- - model_name: mistralai/magistral-small-2509
53
- litellm_params:
54
- model: openai/mistralai/magistral-small-2509
55
- api_base: http://host.docker.internal:1234/v1
56
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
57
- - model_name: mistralai/ministral-3-14b-reasoning
58
- litellm_params:
59
- model: openai/mistralai/ministral-3-14b-reasoning
60
- api_base: http://host.docker.internal:1234/v1
61
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
62
- - model_name: nvidia/nemotron-3-nano
63
- litellm_params:
64
- model: openai/nvidia/nemotron-3-nano
65
- api_base: http://host.docker.internal:1234/v1
66
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
67
- - model_name: openai/gpt-oss-20b
68
- litellm_params:
69
- model: openai/openai/gpt-oss-20b
70
- api_base: http://host.docker.internal:1234/v1
71
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
72
- - model_name: qwen/qwen3-30b-a3b-2507
73
- litellm_params:
74
- model: openai/qwen/qwen3-30b-a3b-2507
75
- api_base: http://host.docker.internal:1234/v1
76
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
77
- - model_name: qwen/qwen3-4b-2507
78
- litellm_params:
79
- model: openai/qwen/qwen3-4b-2507
80
- api_base: http://host.docker.internal:1234/v1
81
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
82
- - model_name: qwen/qwen3.5-35b-a3b
83
- litellm_params:
84
- model: openai/qwen/qwen3.5-35b-a3b
85
- api_base: http://host.docker.internal:1234/v1
86
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
87
- - model_name: text-embedding-nomic-embed-text-v1.5
88
- litellm_params:
89
- model: openai/text-embedding-nomic-embed-text-v1.5
90
- api_base: http://host.docker.internal:1234/v1
91
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
92
- - model_name: zai-org/glm-4.7-flash
93
- litellm_params:
94
- model: openai/zai-org/glm-4.7-flash
95
- api_base: http://host.docker.internal:1234/v1
96
- api_key: os.environ/OPENAI_COMPATIBLE_API_KEY
97
- litellm_settings:
98
- database_url: os.environ/DATABASE_URL
99
- callbacks:
100
- - request_session_metadata_callback.proxy_handler_instance
101
- - langfuse_otel
@@ -1,7 +0,0 @@
1
- model_list: []
2
-
3
- litellm_settings:
4
- database_url: os.environ/DATABASE_URL
5
- callbacks:
6
- - request_session_metadata_callback.proxy_handler_instance
7
- - langfuse_otel