Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Giskard Core

Core shared utilities and foundational components for the Giskard library ecosystem.

Installation

uv add giskard-core
# or
pip install giskard-core

Requirements

  • Python >= 3.12
  • pydantic >= 2.11.0, < 3

Telemetry

giskard-core includes optional usage analytics to help maintainers understand how the libraries are used (versions, environment, coarse feature usage). Analytics are sent to PostHog hosted in the EU (https://eu.i.posthog.com).

What we collect

Installed versions of giskard-core, giskard-checks, and giskard-agents (each the package version or not_installed), a coarse environment label (ci, colab, kaggle, or local), and when you run giskard-checks flows, aggregated non-content metrics such as step counts, counts of checks by kind, booleans (e.g. custom trace type or target present), durations, and pass/fail/skip-style outcomes. Scenario names, prompts, model outputs, trace content, and exception messages are not sent.

If an error propagates through the telemetry context, a single event may record exception_type (the Python class name only), not the exception string or traceback.

Anonymous identifier

A random persistent ID may be stored under ~/.giskard/id so repeated sessions can be counted without logging in. If the home directory is not writable, a one-off anonymous value is used for that process instead.

How to disable telemetry

Set any of these environment variables to a truthy value before importing giskard packages (values are matched case-insensitively; common examples: 1, true, yes, on):

  • DO_NOT_TRACK
  • GISKARD_TELEMETRY_DISABLED

You can also call disable_telemetry() from giskard.core at runtime to turn off further sends for that process (for example from test harnesses). That does not remove ~/.giskard/id if it was already created; use env-based opt-out before import to avoid writing the file.

from giskard.core import disable_telemetry

disable_telemetry()

GeoIP

When telemetry is enabled, PostHog may apply GeoIP enrichment to events (server-side location metadata used in dashboards). That enrichment is off whenever telemetry is fully disabled (see above) or when you call disable_telemetry().

To keep usage analytics but disable GeoIP only, set this environment variable to a truthy value before importing Giskard packages (same matching rules as in How to disable telemetry):

  • GISKARD_TELEMETRY_DISABLE_GEOIP

For library authors

The client and helpers are exported from giskard.core: telemetry, telemetry_tag, telemetry_run_context, scoped_telemetry, and disable_telemetry. New events should follow the same rules: no user strings, secrets, file paths, or model I/O in analytics payloads.

Development

make setup    # Install dependencies
make test     # Run tests
make lint     # Run linting
make format   # Format code

License

This project is licensed under the MIT License - see the LICENSE file for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

giskard_core-1.0.1rc1.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

giskard_core-1.0.1rc1-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file giskard_core-1.0.1rc1.tar.gz.

File metadata

  • Download URL: giskard_core-1.0.1rc1.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for giskard_core-1.0.1rc1.tar.gz
Algorithm Hash digest
SHA256 221b8d25eaba7851dba6a353c581b01472896bc05e46b15d90de8480bbd5594e
MD5 ada1c5ac93613a5dc8ec31c4ca5ac329
BLAKE2b-256 fa7c5bddbe1d7952f6e77eb0827c72abb040d97c5cf20fdd74a6d6252dbfe61f

See more details on using hashes here.

File details

Details for the file giskard_core-1.0.1rc1-py3-none-any.whl.

File metadata

  • Download URL: giskard_core-1.0.1rc1-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for giskard_core-1.0.1rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 ade1cbaf29ea3a7fe6fcae6cf32fbd6e652653bd20d3ee615b9ed052e97cf2cd
MD5 f3ef2762bd6295de8be0630cc9e3b24d
BLAKE2b-256 47c3d9f87b57a018eb0019fffe59bf9e19fb5d5486be828372a960b16701cb7d

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.1

2 files

This release

1.0.1rc1 This release

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page