Skip to main content

isaivam

Supercharge your LLM application evaluations.

isaivam is an evaluation framework for RAG and LLM applications. The name isaivam means music — a nod to its roots in "ragas". It provides objective metrics, test data generation, and data-driven insights so you can move away from slow, subjective assessments toward efficient, repeatable evaluation workflows.

Key Features

  • Objective metrics: Evaluate LLM applications using both LLM-based and traditional metrics.
  • Test data generation: Automatically create comprehensive test datasets covering a wide range of scenarios.
  • Integrations: Works with popular LLM frameworks like LangChain and major observability tools.
  • Feedback loops: Leverage production data to continually improve your LLM applications.

Installation

From source (editable):

pip install -e .

Dependencies are tracked in requirements.txt:

pip install -r requirements.txt

Quickstart

isaivam comes with pre-built metrics for common evaluation tasks. For example, DiscreteMetric evaluates any aspect of your output:

import asyncio
from openai import AsyncOpenAI
from isaivam.metrics import DiscreteMetric
from isaivam.llms import llm_factory

# Setup your LLM
client = AsyncOpenAI()
llm = llm_factory("gpt-4o", client=client)

# Create a custom aspect evaluator
metric = DiscreteMetric(
    name="summary_accuracy",
    allowed_values=["accurate", "inaccurate"],
    prompt="""Evaluate if the summary is accurate and captures key information.

Response: {response}

Answer with only 'accurate' or 'inaccurate'."""
)

# Score your application's output
async def main():
    score = await metric.ascore(
        llm=llm,
        response="The summary of the text is..."
    )
    print(f"Score: {score.value}")   # 'accurate' or 'inaccurate'
    print(f"Reason: {score.reason}")


if __name__ == "__main__":
    asyncio.run(main())

Note: Make sure your OPENAI_API_KEY environment variable is set.

CLI

The library installs an isaivam command for running experiments and evaluations:

isaivam evals <eval_file> --dataset <name> --metrics <fields>

Testing Locally

There is no automated test suite yet, so testing locally means installing the package and exercising the library and CLI.

  1. Install in editable mode so code changes take effect immediately:

    pip install -e .
    
  2. Verify the import and version:

    python -c "import isaivam; print(isaivam.__version__)"
    
  3. Verify the CLI is available:

    isaivam --help
    
  4. Run the Quickstart example end-to-end. It calls OpenAI, so set your key first:

    export OPENAI_API_KEY=your_key_here
    python your_script.py
    
  5. Run an eval via the CLI (see examples/ for reference eval files):

    isaivam evals <eval_file> --dataset <name> --metrics <fields>
    

Analytics

isaivam collects minimal, anonymized usage data to guide development. To opt out, set the ISAIVAM_DO_NOT_TRACK environment variable to true.

Acknowledgements

isaivam is derived from the open-source ragas project (Apache-2.0). See LICENSE for details.

Metadata

Release files for isaivam 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for isaivam 0.1.0
File Size Uploaded
isaivam-0.1.0.tar.gz 329.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for isaivam 0.1.0
File Interpreter ABI Platform
isaivam-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 786.4 kB

Release files / isaivam-0.1.0.tar.gz

Download URL isaivam-0.1.0.tar.gz
Size 329.9 kB
Tags Source
SHA-256 checksum
How to use checksums
c0c3a8ae92c300adfa9a07ca59a60a12fa63e4eaf6725ed592fd286533c08e3b
BLAKE2b-256 checksum
How to use checksums
474b5557ec9e670b912912919e5c4ee58658b348362d60dc7c0865aab3eddbf0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release files / isaivam-0.1.0-py3-none-any.whl

Download URL isaivam-0.1.0-py3-none-any.whl
Size 456.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2a9ccd182110d925a4cc9a2be18b5eb51bbdf02f87f5bae9997821a65ae5ae8e
BLAKE2b-256 checksum
How to use checksums
79ddc037fed38c23bc2de393a146db3380dabd391502eab9ebd6db3e8743c8f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release 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