Skip to main content

lexigram-ai-evaluation

AI Evaluation framework for the Lexigram Framework.


Overview

AI Evaluation framework for the Lexigram Framework. Provides evaluators harness, and metrics — all wired through the DI container via EvaluationModule. Zero-config usage starts with sensible defaults.

Install

uv add lexigram-ai-evaluation
# Optional extras
uv add "lexigram-ai-evaluation[openai,anthropic]"

Quick Start

from lexigram import Application
from lexigram.di.module import Module, module

from lexigram.ai.evaluation import EvaluationModule
from lexigram.ai.evaluation.config import EvaluationConfig

@module(imports=[
    EvaluationModule.configure(
        EvaluationConfig(default_threshold=0.8)
    )
])
class AppModule(Module):
    pass

app = Application(modules=[AppModule])
if __name__ == "__main__":
    app.run()

Configuration

Zero-config usage: Call EvaluationModule.configure() with no arguments to use defaults.

Option 1 — YAML file

# application.yaml
ai_evaluation:
  enabled: true
  default_threshold: 0.8
  embedding_model: "text-embedding-3-small"

Option 2 — Profiles + Environment Variables (recommended)

export LEX_AI_EVALUATION__DEFAULT_THRESHOLD=0.8
# Environment variables for each field

Option 3 — Python

from lexigram.ai.evaluation.config import EvaluationConfig
from lexigram.ai.evaluation import EvaluationModule

config = EvaluationConfig(
    default_threshold=0.8,
    embedding_model="text-embedding-3-small",
)
EvaluationModule.configure(config)

Config reference

Field Default Env var Description
enabled True LEX_AI_EVALUATION__ENABLED Enable the evaluation subsystem
default_threshold 0.8 LEX_AI_EVALUATION__DEFAULT_THRESHOLD Score threshold for passing
embedding_model text-embedding-3-small LEX_AI_EVALUATION__EMBEDDING_MODEL Model for embedding evaluations
include_metadata True LEX_AI_EVALUATION__INCLUDE_METADATA Include metadata in reports
max_samples None LEX_AI_EVALUATION__MAX_SAMPLES Max samples per run
max_retries 3 LEX_AI_EVALUATION__MAX_RETRIES Max retries for failed evaluations
timeout_seconds 30 LEX_AI_EVALUATION__TIMEOUT_SECONDS Execution timeout

Module Factory Methods

Method Description
EvaluationModule.configure(config) Configure with explicit settings
EvaluationModule.stub() No-op for testing

Key Features

  • 5 evaluator types: Criteria, QA, Embedding Distance, String Distance, Trajectory
  • Evaluation harness: Run datasets against models with configurable evaluators
  • Metrics: Pass/fail, score-based, and threshold evaluation
  • Embedding support: Semantic similarity via embeddings

Testing

async with Application.boot(modules=[EvaluationModule.stub()]) as app:
    # your test code
    ...

Key Source Files

File What it contains
src/lexigram/ai/evaluation/module.py EvaluationModule.configure() and EvaluationModule.stub()
src/lexigram/ai/evaluation/config.py EvaluationConfig
src/lexigram/ai/evaluation/di/provider.py EvaluationProvider — registers and boots
src/lexigram/ai/evaluation/evaluators/ Evaluator implementations
src/lexigram/ai/evaluation/harness/ Evaluation harness and runner
src/lexigram/ai/evaluation/exceptions.py Full exception hierarchy

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

lexigram_ai_evaluation-0.1.3005-py3-none-any.whl (18.8 kB view details)

Uploaded Python 3

File details

Details for the file lexigram_ai_evaluation-0.1.3005-py3-none-any.whl.

File metadata

File hashes

Hashes for lexigram_ai_evaluation-0.1.3005-py3-none-any.whl
Algorithm Hash digest
SHA256 0d252cfca49bf255eb55d3a44c3889b17857f705d76d34f8dde307e8b567479c
MD5 1eaad53be2016d32a037705c930aee35
BLAKE2b-256 c6ec586f28f6988e769dbc3c8832a83b9c826b1a5bf88e37c5e1be843b3058fe

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