diff --git a/benchmarking/k8s-benchmark/stack-configmap.yaml b/benchmarking/k8s-benchmark/stack-configmap.yaml
index 58518ec18..aed3b97c2 100644
--- a/benchmarking/k8s-benchmark/stack-configmap.yaml
+++ b/benchmarking/k8s-benchmark/stack-configmap.yaml
@@ -9,7 +9,6 @@ data:
- inference
- files
- safety
- - telemetry
- tool_runtime
- vector_io
providers:
@@ -67,12 +66,6 @@ data:
db: ${env.POSTGRES_DB:=llamastack}
user: ${env.POSTGRES_USER:=llamastack}
password: ${env.POSTGRES_PASSWORD:=llamastack}
- telemetry:
- - provider_id: meta-reference
- provider_type: inline::meta-reference
- config:
- service_name: "${env.OTEL_SERVICE_NAME:=\u200B}"
- sinks: ${env.TELEMETRY_SINKS:=console}
tool_runtime:
- provider_id: brave-search
provider_type: remote::brave-search
diff --git a/benchmarking/k8s-benchmark/stack_run_config.yaml b/benchmarking/k8s-benchmark/stack_run_config.yaml
index 7992eb3c7..a0d636e09 100644
--- a/benchmarking/k8s-benchmark/stack_run_config.yaml
+++ b/benchmarking/k8s-benchmark/stack_run_config.yaml
@@ -126,8 +126,6 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8323
-telemetry:
- enabled: true
vector_stores:
default_provider_id: chromadb
default_embedding_model:
diff --git a/docs/docs/concepts/apis/index.mdx b/docs/docs/concepts/apis/index.mdx
index 7d12478ed..c4b561606 100644
--- a/docs/docs/concepts/apis/index.mdx
+++ b/docs/docs/concepts/apis/index.mdx
@@ -17,7 +17,6 @@ A Llama Stack API is described as a collection of REST endpoints following OpenA
- **Eval**: generate outputs (via Inference or Agents) and perform scoring
- **VectorIO**: perform operations on vector stores, such as adding documents, searching, and deleting documents
- **Files**: manage file uploads, storage, and retrieval
-- **Telemetry**: collect telemetry data from the system
- **Post Training**: fine-tune a model
- **Tool Runtime**: interact with various tools and protocols
- **Responses**: generate responses from an LLM
diff --git a/docs/docs/distributions/k8s/stack-configmap.yaml b/docs/docs/distributions/k8s/stack-configmap.yaml
index 255e39ac2..d0e083d29 100644
--- a/docs/docs/distributions/k8s/stack-configmap.yaml
+++ b/docs/docs/distributions/k8s/stack-configmap.yaml
@@ -8,7 +8,6 @@ data:
- inference
- files
- safety
- - telemetry
- tool_runtime
- vector_io
providers:
@@ -73,12 +72,6 @@ data:
db: ${env.POSTGRES_DB:=llamastack}
user: ${env.POSTGRES_USER:=llamastack}
password: ${env.POSTGRES_PASSWORD:=llamastack}
- telemetry:
- - provider_id: meta-reference
- provider_type: inline::meta-reference
- config:
- service_name: "${env.OTEL_SERVICE_NAME:=\u200B}"
- sinks: ${env.TELEMETRY_SINKS:=console}
tool_runtime:
- provider_id: brave-search
provider_type: remote::brave-search
diff --git a/docs/docs/distributions/k8s/stack_run_config.yaml b/docs/docs/distributions/k8s/stack_run_config.yaml
index 3dde74bbf..d8306613b 100644
--- a/docs/docs/distributions/k8s/stack_run_config.yaml
+++ b/docs/docs/distributions/k8s/stack_run_config.yaml
@@ -140,8 +140,6 @@ server:
auth:
provider_config:
type: github_token
-telemetry:
- enabled: true
vector_stores:
default_provider_id: chromadb
default_embedding_model:
diff --git a/docs/docs/distributions/self_hosted_distro/starter.md b/docs/docs/distributions/self_hosted_distro/starter.md
index 84c35f3d3..37599a8dd 100644
--- a/docs/docs/distributions/self_hosted_distro/starter.md
+++ b/docs/docs/distributions/self_hosted_distro/starter.md
@@ -116,10 +116,6 @@ The following environment variables can be configured:
- `BRAVE_SEARCH_API_KEY`: Brave Search API key
- `TAVILY_SEARCH_API_KEY`: Tavily Search API key
-### Telemetry Configuration
-- `OTEL_SERVICE_NAME`: OpenTelemetry service name
-- `OTEL_EXPORTER_OTLP_ENDPOINT`: OpenTelemetry collector endpoint URL
-
## Enabling Providers
You can enable specific providers by setting appropriate environment variables. For example,
@@ -265,7 +261,7 @@ The starter distribution uses SQLite for local storage of various components:
2. **Flexible Configuration**: Easy to enable/disable providers based on your needs
3. **No Local GPU Required**: Most providers are cloud-based, making it accessible to developers without high-end hardware
4. **Easy Migration**: Start with hosted providers and gradually move to local ones as needed
-5. **Production Ready**: Includes safety, evaluation, and telemetry components
+5. **Production Ready**: Includes safety and evaluation
6. **Tool Integration**: Comes with web search, RAG, and model context protocol tools
The starter distribution is ideal for developers who want to experiment with different AI providers, build prototypes quickly, or create applications that can work with multiple AI backends.
diff --git a/docs/docs/references/python_sdk_reference/index.md b/docs/docs/references/python_sdk_reference/index.md
index 686567458..532341a4d 100644
--- a/docs/docs/references/python_sdk_reference/index.md
+++ b/docs/docs/references/python_sdk_reference/index.md
@@ -360,32 +360,6 @@ Methods:
- client.synthetic_data_generation.generate(\*\*params) -> SyntheticDataGenerationResponse
-## Telemetry
-
-Types:
-
-```python
-from llama_stack_client.types import (
- QuerySpansResponse,
- SpanWithStatus,
- Trace,
- TelemetryGetSpanResponse,
- TelemetryGetSpanTreeResponse,
- TelemetryQuerySpansResponse,
- TelemetryQueryTracesResponse,
-)
-```
-
-Methods:
-
-- client.telemetry.get_span(span_id, \*, trace_id) -> TelemetryGetSpanResponse
-- client.telemetry.get_span_tree(span_id, \*\*params) -> TelemetryGetSpanTreeResponse
-- client.telemetry.get_trace(trace_id) -> Trace
-- client.telemetry.log_event(\*\*params) -> None
-- client.telemetry.query_spans(\*\*params) -> TelemetryQuerySpansResponse
-- client.telemetry.query_traces(\*\*params) -> TelemetryQueryTracesResponse
-- client.telemetry.save_spans_to_dataset(\*\*params) -> None
-
## Datasetio
Types:
diff --git a/docs/src/pages/index.js b/docs/src/pages/index.js
index f460d6f27..7489682aa 100644
--- a/docs/src/pages/index.js
+++ b/docs/src/pages/index.js
@@ -13,7 +13,7 @@ function HomepageHeader() {
Build AI Applications with Llama Stack
- Unified APIs for Inference, RAG, Agents, Tools, Safety, and Telemetry
+ Unified APIs for Inference, RAG, Agents, Tools, and Safety
+ description="The open-source framework for building generative AI applications with unified APIs for Inference, RAG, Agents, Tools, Safety, and Evals.">
diff --git a/scripts/openapi_generator/schema_collection.py b/scripts/openapi_generator/schema_collection.py
index 51a70c62a..127f6da9c 100644
--- a/scripts/openapi_generator/schema_collection.py
+++ b/scripts/openapi_generator/schema_collection.py
@@ -8,7 +8,6 @@
Schema discovery and collection for OpenAPI generation.
"""
-import importlib
from typing import Any
@@ -20,23 +19,6 @@ def _ensure_components_schemas(openapi_schema: dict[str, Any]) -> None:
openapi_schema["components"]["schemas"] = {}
-def _load_extra_schema_modules() -> None:
- """
- Import modules outside llama_stack_api that use schema_utils to register schemas.
-
- The API package already imports its submodules via __init__, but server-side modules
- like telemetry need to be imported explicitly so their decorator side effects run.
- """
- extra_modules = [
- "llama_stack.core.telemetry.telemetry",
- ]
- for module_name in extra_modules:
- try:
- importlib.import_module(module_name)
- except ImportError:
- continue
-
-
def _extract_and_fix_defs(schema: dict[str, Any], openapi_schema: dict[str, Any]) -> None:
"""
Extract $defs from a schema, move them to components/schemas, and fix references.
@@ -79,9 +61,6 @@ def _ensure_json_schema_types_included(openapi_schema: dict[str, Any]) -> dict[s
iter_registered_schema_types,
)
- # Import extra modules (e.g., telemetry) whose schema registrations live outside llama_stack_api
- _load_extra_schema_modules()
-
# Handle explicitly registered schemas first (union types, Annotated structs, etc.)
for registration_info in iter_registered_schema_types():
schema_type = registration_info.type
diff --git a/src/llama_stack/core/datatypes.py b/src/llama_stack/core/datatypes.py
index 3a0f891b0..f64286ef5 100644
--- a/src/llama_stack/core/datatypes.py
+++ b/src/llama_stack/core/datatypes.py
@@ -371,12 +371,6 @@ class SafetyConfig(BaseModel):
)
-class TelemetryConfig(BaseModel):
- """Configuration for telemetry collection."""
-
- enabled: bool = Field(default=False, description="Whether telemetry collection is enabled")
-
-
class QuotaPeriod(StrEnum):
DAY = "day"
@@ -542,11 +536,6 @@ can be instantiated multiple times (with different configs) if necessary.
description="Configuration for default moderations model",
)
- telemetry: TelemetryConfig | None = Field(
- default=None,
- description="Configuration for telemetry collection",
- )
-
@field_validator("external_providers_dir")
@classmethod
def validate_external_providers_dir(cls, v):
diff --git a/src/llama_stack/distributions/ci-tests/run-with-postgres-store.yaml b/src/llama_stack/distributions/ci-tests/run-with-postgres-store.yaml
index d942c23a4..8d270aea6 100644
--- a/src/llama_stack/distributions/ci-tests/run-with-postgres-store.yaml
+++ b/src/llama_stack/distributions/ci-tests/run-with-postgres-store.yaml
@@ -281,8 +281,6 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
vector_stores:
default_provider_id: faiss
default_embedding_model:
diff --git a/src/llama_stack/distributions/ci-tests/run.yaml b/src/llama_stack/distributions/ci-tests/run.yaml
index 8b1cd2bb2..2c628fbf9 100644
--- a/src/llama_stack/distributions/ci-tests/run.yaml
+++ b/src/llama_stack/distributions/ci-tests/run.yaml
@@ -272,8 +272,6 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
vector_stores:
default_provider_id: faiss
default_embedding_model:
diff --git a/src/llama_stack/distributions/dell/run-with-safety.yaml b/src/llama_stack/distributions/dell/run-with-safety.yaml
index e0da8060d..63bd95168 100644
--- a/src/llama_stack/distributions/dell/run-with-safety.yaml
+++ b/src/llama_stack/distributions/dell/run-with-safety.yaml
@@ -140,5 +140,3 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/distributions/dell/run.yaml b/src/llama_stack/distributions/dell/run.yaml
index bc3117d88..93f0c35bc 100644
--- a/src/llama_stack/distributions/dell/run.yaml
+++ b/src/llama_stack/distributions/dell/run.yaml
@@ -131,5 +131,3 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/distributions/meta-reference-gpu/run-with-safety.yaml b/src/llama_stack/distributions/meta-reference-gpu/run-with-safety.yaml
index 2fa9d198b..63fc3b1d2 100644
--- a/src/llama_stack/distributions/meta-reference-gpu/run-with-safety.yaml
+++ b/src/llama_stack/distributions/meta-reference-gpu/run-with-safety.yaml
@@ -153,5 +153,3 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/distributions/meta-reference-gpu/run.yaml b/src/llama_stack/distributions/meta-reference-gpu/run.yaml
index 5c7f75ca8..ba8235398 100644
--- a/src/llama_stack/distributions/meta-reference-gpu/run.yaml
+++ b/src/llama_stack/distributions/meta-reference-gpu/run.yaml
@@ -138,5 +138,3 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/distributions/nvidia/run-with-safety.yaml b/src/llama_stack/distributions/nvidia/run-with-safety.yaml
index d2c7dd090..7d95565e5 100644
--- a/src/llama_stack/distributions/nvidia/run-with-safety.yaml
+++ b/src/llama_stack/distributions/nvidia/run-with-safety.yaml
@@ -135,5 +135,3 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/distributions/nvidia/run.yaml b/src/llama_stack/distributions/nvidia/run.yaml
index c267587c7..8c80b8303 100644
--- a/src/llama_stack/distributions/nvidia/run.yaml
+++ b/src/llama_stack/distributions/nvidia/run.yaml
@@ -114,5 +114,3 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/distributions/oci/run.yaml b/src/llama_stack/distributions/oci/run.yaml
index e385ec606..ff0c818be 100644
--- a/src/llama_stack/distributions/oci/run.yaml
+++ b/src/llama_stack/distributions/oci/run.yaml
@@ -132,5 +132,3 @@ registered_resources:
provider_id: tavily-search
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/distributions/open-benchmark/run.yaml b/src/llama_stack/distributions/open-benchmark/run.yaml
index 7ebc58841..43aa45b51 100644
--- a/src/llama_stack/distributions/open-benchmark/run.yaml
+++ b/src/llama_stack/distributions/open-benchmark/run.yaml
@@ -251,5 +251,3 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/distributions/postgres-demo/run.yaml b/src/llama_stack/distributions/postgres-demo/run.yaml
index 049f519cd..c9316f923 100644
--- a/src/llama_stack/distributions/postgres-demo/run.yaml
+++ b/src/llama_stack/distributions/postgres-demo/run.yaml
@@ -114,5 +114,3 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/distributions/starter-gpu/run-with-postgres-store.yaml b/src/llama_stack/distributions/starter-gpu/run-with-postgres-store.yaml
index 75cc9d188..17ef2ad22 100644
--- a/src/llama_stack/distributions/starter-gpu/run-with-postgres-store.yaml
+++ b/src/llama_stack/distributions/starter-gpu/run-with-postgres-store.yaml
@@ -284,8 +284,6 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
vector_stores:
default_provider_id: faiss
default_embedding_model:
diff --git a/src/llama_stack/distributions/starter-gpu/run.yaml b/src/llama_stack/distributions/starter-gpu/run.yaml
index 09c7be5a1..58b619972 100644
--- a/src/llama_stack/distributions/starter-gpu/run.yaml
+++ b/src/llama_stack/distributions/starter-gpu/run.yaml
@@ -275,8 +275,6 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
vector_stores:
default_provider_id: faiss
default_embedding_model:
diff --git a/src/llama_stack/distributions/starter/run-with-postgres-store.yaml b/src/llama_stack/distributions/starter/run-with-postgres-store.yaml
index f59c809d2..8c0362864 100644
--- a/src/llama_stack/distributions/starter/run-with-postgres-store.yaml
+++ b/src/llama_stack/distributions/starter/run-with-postgres-store.yaml
@@ -281,8 +281,6 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
vector_stores:
default_provider_id: faiss
default_embedding_model:
diff --git a/src/llama_stack/distributions/starter/run.yaml b/src/llama_stack/distributions/starter/run.yaml
index 435bb22a7..b5bd5f18c 100644
--- a/src/llama_stack/distributions/starter/run.yaml
+++ b/src/llama_stack/distributions/starter/run.yaml
@@ -272,8 +272,6 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
vector_stores:
default_provider_id: faiss
default_embedding_model:
diff --git a/src/llama_stack/distributions/template.py b/src/llama_stack/distributions/template.py
index 90b458805..bab3211e9 100644
--- a/src/llama_stack/distributions/template.py
+++ b/src/llama_stack/distributions/template.py
@@ -24,7 +24,6 @@ from llama_stack.core.datatypes import (
Provider,
SafetyConfig,
ShieldInput,
- TelemetryConfig,
ToolGroupInput,
VectorStoresConfig,
)
@@ -189,7 +188,6 @@ class RunConfigSettings(BaseModel):
default_benchmarks: list[BenchmarkInput] | None = None
vector_stores_config: VectorStoresConfig | None = None
safety_config: SafetyConfig | None = None
- telemetry: TelemetryConfig = Field(default_factory=lambda: TelemetryConfig(enabled=True))
storage_backends: dict[str, Any] | None = None
storage_stores: dict[str, Any] | None = None
@@ -289,7 +287,6 @@ class RunConfigSettings(BaseModel):
"server": {
"port": 8321,
},
- "telemetry": self.telemetry.model_dump(exclude_none=True) if self.telemetry else None,
}
if self.vector_stores_config:
diff --git a/src/llama_stack/distributions/watsonx/run.yaml b/src/llama_stack/distributions/watsonx/run.yaml
index f8c489fe3..55ea34cb6 100644
--- a/src/llama_stack/distributions/watsonx/run.yaml
+++ b/src/llama_stack/distributions/watsonx/run.yaml
@@ -132,5 +132,3 @@ registered_resources:
provider_id: rag-runtime
server:
port: 8321
-telemetry:
- enabled: true
diff --git a/src/llama_stack/log.py b/src/llama_stack/log.py
index c11c2c06f..a44a0ac26 100644
--- a/src/llama_stack/log.py
+++ b/src/llama_stack/log.py
@@ -37,7 +37,6 @@ CATEGORIES = [
"eval",
"tools",
"client",
- "telemetry",
"openai",
"openai_responses",
"openai_conversations",
diff --git a/tests/unit/cli/test_stack_config.py b/tests/unit/cli/test_stack_config.py
index 6aefac003..41570194c 100644
--- a/tests/unit/cli/test_stack_config.py
+++ b/tests/unit/cli/test_stack_config.py
@@ -155,9 +155,6 @@ def old_config():
provider_type: inline::meta-reference
config: {{}}
api_providers:
- telemetry:
- provider_type: noop
- config: {{}}
"""
)
@@ -181,7 +178,7 @@ def test_parse_and_maybe_upgrade_config_up_to_date(up_to_date_config):
def test_parse_and_maybe_upgrade_config_old_format(old_config):
result = parse_and_maybe_upgrade_config(old_config)
assert result.version == LLAMA_STACK_RUN_CONFIG_VERSION
- assert all(api in result.providers for api in ["inference", "safety", "memory", "telemetry"])
+ assert all(api in result.providers for api in ["inference", "safety", "memory"])
safety_provider = result.providers["safety"][0]
assert safety_provider.provider_type == "inline::meta-reference"
assert "llama_guard_shield" in safety_provider.config