Skip to main content

Легковесный Python SDK для валидации LLM запросов через Shieldmind API

Project description

Shieldmind Client SDK

Легковесный Python SDK для валидации LLM запросов через Shieldmind API.

Этот SDK содержит только методы для проверки безопасности запросов к LLM API и получения информации о лимитах.

Установка

pip install shieldmind-client-sdk

Использование

Базовая валидация запроса

from shieldmind_client_sdk import ShieldmindClient

# Инициализация клиента
client = ShieldmindClient(
    base_url="https://api.shieldmind.pro",  # URL вашего Shieldmind API
    api_key="your-api-key"  # Опционально, можно использовать публичный доступ
)

# Проверка запроса на угрозы
result = client.check_llm(
    api_url="https://api.openai.com/v1/chat/completions",
    request_body={
        "messages": [
            {"role": "user", "content": "Привет, как дела?"}
        ]
    }
)

# Проверка результата
if result.isSafe:
    print(f"✅ Запрос безопасен! Оценка: {result.score}/100")
else:
    print(f"⚠️ Обнаружены угрозы:")
    for threat in result.threats:
        print(f"  - {threat.type}: {threat.description} (severity: {threat.severity})")

# Информация о лимитах
print(f"Осталось проверок: {result.remaining}/{result.limit}")

Получение информации об оставшихся проверках

remaining = client.get_remaining_checks()
print(f"Осталось проверок: {remaining.remaining}/{remaining.limit}")
print(f"Окно лимита: {remaining.window}")

API

ShieldmindClient

Конструктор

ShieldmindClient(
    base_url: str = "http://localhost:3001",
    api_key: Optional[str] = None
)

Методы

check_llm(api_url, request_body, api_key=None, model=None) -> ValidationResult

Проверяет запрос к LLM API на угрозы безопасности.

Параметры:

  • api_url (str): URL LLM API
  • request_body (dict): Тело запроса к LLM API
  • api_key (str, optional): API ключ LLM (если требуется для проверки ответа)
  • model (str, optional): Название модели

Возвращает: ValidationResult с результатами проверки

get_remaining_checks() -> RemainingChecks

Получает информацию об оставшихся проверках.

Возвращает: RemainingChecks с информацией о лимитах

Модели данных

ValidationResult

Результат валидации запроса.

  • isSafe (bool): Безопасен ли запрос
  • threats (List[Threat]): Список обнаруженных угроз
  • score (int): Оценка безопасности (0-100, где 100 - полностью безопасно)
  • remaining (int, optional): Оставшееся количество проверок
  • limit (int, optional): Лимит проверок
  • window (str, optional): Окно лимита ('day' | 'second')
  • similarPrompts (List[dict], optional): Похожие промпты

Threat

Описание угрозы.

  • type (str): Тип угрозы
  • severity (str): Уровень серьезности ('low' | 'medium' | 'high' | 'critical')
  • description (str): Описание угрозы
  • foundIn (str): Где обнаружена ('request' | 'response')
  • details (dict, optional): Дополнительные детали

RemainingChecks

Информация об оставшихся проверках.

  • remaining (int): Оставшееся количество проверок
  • limit (int): Лимит проверок
  • window (str): Окно лимита ('day' | 'second')

Исключения

  • ShieldmindException: Базовое исключение
  • ShieldmindAuthError: Ошибка аутентификации
  • ShieldmindAPIError: Ошибка API
  • ShieldmindRateLimitError: Превышен лимит запросов
  • ShieldmindValidationError: Ошибка валидации данных

Отличия от основного SDK

Этот SDK содержит только методы для валидации запросов. Он не включает:

  • Методы управления аккаунтом (регистрация, вход)
  • Методы управления API-ключами
  • Методы проксирования запросов
  • Методы управления проектами и политиками

Для полного функционала используйте основной shieldmind-sdk.

Project details


Download files

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

Source Distribution

shieldmind_client_sdk-0.1.0.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

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

shieldmind_client_sdk-0.1.0-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file shieldmind_client_sdk-0.1.0.tar.gz.

File metadata

  • Download URL: shieldmind_client_sdk-0.1.0.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for shieldmind_client_sdk-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a51f505b8c908d97f3fc59b2a85c7d2c5d2ff660d0e6e15d9eaab908273b949d
MD5 4b3932934e9f3777870f0c99d4e70f96
BLAKE2b-256 2db971bb328cfeac4c5439bca98df78811adddcb4d9985f6486b4ae575423d38

See more details on using hashes here.

File details

Details for the file shieldmind_client_sdk-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for shieldmind_client_sdk-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2ec5c205ca1216946ad76e6f27ee9406ff678de6b67f16a0a2f677cba36503a2
MD5 e33e0ad043a49636d6488794a9ee5244
BLAKE2b-256 23ea396298aff4f5348e352973dd6b8cf514d012145564320113ad79399956d8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page