Skip to content
GitHubDiscord

Release Notes

Below you will find the release notes for each version of Giskard Hub SDK. Each entry covers new features, improvements, and bug fixes included in that release.


This patch release builds on the first v3 SDK release introduced in 3.0.0, with API consistency fixes, helper compatibility improvements, and documentation updates.

  • Updated resource method parameters to better match the Hub API.
  • Made helpers.wait_for_completion() compatible with TestCaseEvaluation.
  • Updated documentation links and improved the README content.

This release is the first of the v3 SDK. It is a full rewrite based on a generated OpenAPI client, providing complete type safety, async support, and coverage of all Hub API endpoints.

  • AsyncHubClient — a fully async client with identical API surface to HubClient, using httpx or optionally aiohttp as the HTTP backend.
  • Scenarios — create and manage reusable persona/behaviour templates via hub.projects.scenarios, and generate datasets from them with hub.datasets.generate_scenario_based().
  • Taskshub.tasks provides a lightweight issue tracker for managing findings from evaluations and scans.
  • Playground Chatshub.playground_chats lets you access conversations captured from the Hub UI playground and create datasets from them.
  • Audit Logshub.audit_logs provides searchable, paginated audit event history.
  • Test case commentshub.test_cases.comments supports collaborative annotation of test cases.
  • Scan probes and attemptshub.scans.probes and hub.scans.attempts give granular access to scan probe results and individual adversarial attempts.
  • Evaluation result controls — rerun errored results, update review status, control per-result visibility, and search/filter results via hub.evaluations.results.
  • Full CRUD for most resources — nearly every resource now supports create, retrieve, update, list, delete, and bulk_delete.

See the Migration Guide for a complete list of breaking changes and before/after code examples.


We launched support for the LLM vulnerability scan feature that was released in the 2.0.1 Hub UI release.

  • SDK support for the LLM vulnerability scan feature in the Hub UI through .scans.create().
import os
import sys
from giskard_hub import HubClient
hub = HubClient(...)
model_id = os.getenv("GISKARD_HUB_MODEL_ID")
knowledge_base_id = os.getenv("GISKARD_HUB_KNOWLEDGE_BASE_ID")
# Run security scan with specific tags
scan_result = hub.scans.create(
model_id=model_id,
knowledge_base_id=knowledge_base_id,
tags=[
"gsk:threat-type='prompt-injection'",
"owasp:llm-top-10-2025='LLM01'",
],
)
# Wait for completion and check result metrics
scan_result.wait_for_completion(timeout=1200)
scan_result.print_metrics()
# Check if the grade is worse than A or B (C, D or N/A)
if scan_result.grade not in ["A", "B"]:
print(f"❌ Security check failed: Scan with Grade {scan_result.grade.value}")
sys.exit(1)
print(f"✅ Security check passed: Scan with Grade {scan_result.grade.value}")

  • Fixed usage of OpenAPI description endpoint as health check and replaced with a custom health check endpoint.

  • Fixed a bug where dataset.create_test_case did not filter out attributes that are not allowed to be set by the API.

  • [BREAKING] Removed CSV support for knowledge base creation. Only JSON and JSONL formats are now supported.
  • [BREAKING] Dropped Python 3.9 support.
  • [BREAKING] Renamed conversations to chat_test_cases to improve clarity and consistency across the product.
  • Local evaluations do not have failure categories in the job results, thus the failure classifier is skipped.