Skip to main content

SDK for testing and validating LLM applications

Project description

Rhesis SDK 🧠

License PyPI Version Python Versions Discord LinkedIn Hugging Face Documentation

Your team defines expectations, Rhesis generates and executes thousands of test scenarios. So that you know what you ship.

The Rhesis SDK empowers developers to programmatically access curated test sets and generate comprehensive test scenarios for Gen AI applications. Transform domain expertise into automated testing: access thousands of test scenarios, generate custom validation suites, and integrate seamlessly into your workflow to keep your Gen AI robust, reliable & compliant.

Rhesis Platform Results

📑 Table of Contents

✨ Features

The Rhesis SDK provides programmatic access to the Rhesis testing platform:

  • Access Test Sets: Browse and load curated test sets across multiple domains and use cases
  • Generate Test Scenarios: Create custom test sets from prompts, requirements, or domain knowledge
  • Seamless Integration: Integrate testing into your CI/CD pipeline and development workflow
  • Comprehensive Coverage: Scale your testing from dozens to thousands of scenarios
  • Open Source: MIT-licensed with full transparency and community-driven development

🚀 Installation

Install the Rhesis SDK using pip:

pip install rhesis-sdk

🐍 Python Requirements

Rhesis SDK requires Python 3.10 or newer.

🏁 Getting Started

1. Obtain an API Key 🔑

  1. Visit https://app.rhesis.ai
  2. Sign up for a Rhesis account
  3. Navigate to your account settings
  4. Generate a new API key

Your API key will be in the format rh-XXXXXXXXXXXXXXXXXXXX. Keep this key secure and never share it publicly.

Note: On the Rhesis App, you can also create test sets for your own use cases and access them via the SDK. You only need to connect your GitHub account to create a test set.

2. Configure and use the SDK.

from pprint import pprint

from rhesis.sdk.entities import TestSet
from rhesis.sdk.synthesizers import PromptSynthesizer

os.environ["RHESIS_API_KEY"] = "rh-your-api-key"  # Get from app.rhesis.ai settings
os.environ["RHESIS_BASE_URL"] = "https://api.rhesis.ai"  # optional

# Browse available test sets
for test_set in TestSet().all():
    pprint(test_set)

# Generate custom test scenarios
synthesizer = PromptSynthesizer(
    prompt="Generate tests for a medical chatbot that must never provide diagnosis"
)
test_set = synthesizer.generate(num_tests=10)
pprint(test_set.tests)

Generating Custom Test Sets 🛠️

If none of the existing test sets fit your needs, you can generate your own. You can check out app.rhesis.ai. There you can define requirements, scenarios and behaviors.

🧪 About Rhesis AI

Rhesis is an open-source testing platform that transforms how Gen AI teams validate their applications. Through collaborative test management, domain expertise becomes comprehensive automated testing: legal defines requirements, marketing sets expectations, engineers build quality, and everyone knows exactly how the Gen AI application performs before users do.

Key capabilities:

  • Collaborative Test Management: Your entire team contributes requirements without writing code
  • Automated Test Generation: Generate thousands of test scenarios from team expertise
  • Comprehensive Coverage: Scale from dozens of manual tests to thousands of automated scenarios
  • Edge Case Discovery: Find potential failures before your users do
  • Compliance Validation: Ensure systems meet regulatory and ethical standards

Made in Potsdam, Germany 🇩🇪

Visit rhesis.ai to learn more about our platform and services.

👥 Community 💬

Join our Discord server to connect with other users and developers.

🤗 Hugging Face

You can also find us on Hugging Face. There, you can find our test sets across multiple use cases.

🆘 Support

For questions, issues, or feature requests:

📝 License

The Rhesis SDK is licensed under the MIT License - see the LICENSE file for details.

The SDK is completely open-source and freely available for use, modification, and distribution.


Made with ❤️ in Potsdam, Germany 🇩🇪

Learn more at rhesis.ai

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

rhesis_sdk-0.8.0.tar.gz (689.7 kB view details)

Uploaded Source

Built Distribution

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

rhesis_sdk-0.8.0-py3-none-any.whl (436.0 kB view details)

Uploaded Python 3

File details

Details for the file rhesis_sdk-0.8.0.tar.gz.

File metadata

  • Download URL: rhesis_sdk-0.8.0.tar.gz
  • Upload date:
  • Size: 689.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rhesis_sdk-0.8.0.tar.gz
Algorithm Hash digest
SHA256 4cf3489314323531c02842c5dd449214ac5e5c83dbbafce6257688e050f6be7f
MD5 848e32ac8c2ed4ccd115230f120c9fa5
BLAKE2b-256 6276ad17763ae9a83ae39a5f4abd21108d311a91ac4d748d3b18e4f3821bbbbc

See more details on using hashes here.

Provenance

The following attestation bundles were made for rhesis_sdk-0.8.0.tar.gz:

Publisher: publish-pypi.yml on rhesis-ai/rhesis

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rhesis_sdk-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: rhesis_sdk-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 436.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rhesis_sdk-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6223b19147af0e2c824236381efd6e7dba80ffb94d1e32524d41cb9c6e31c470
MD5 fa9e4066e2b6a1db154389b1fae1c449
BLAKE2b-256 14cbcbb7676acfa03be236d6ecb2477d34369921b32ba8435bc792e75bf1c0b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for rhesis_sdk-0.8.0-py3-none-any.whl:

Publisher: publish-pypi.yml on rhesis-ai/rhesis

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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