Skip to main content

RAKAM SYSTEMS CLI

Project description

DeepEvalClient

A lightweight Python client for interacting with the Evaluation API. It provides convenient wrappers for text and schema evaluation endpoints, with support for background jobs and probabilistic execution.


Features

  • 🔹 Text Evaluation – Run evaluations on plain text inputs.
  • 🔹 Schema Evaluation – Evaluate structured inputs against schema-based metrics.
  • 🔹 Background Jobs – Submit jobs asynchronously and process later.
  • 🔹 Probabilistic Execution – Run evaluations with a configurable chance (e.g., A/B testing scenarios).
  • 🔹 Robust Error Handling – Handles network errors and invalid JSON gracefully.
  • 🔹 Configurable – Configure via constructor args, environment variables, or external settings module.

Installation

pip install rakam-eval-sdk

Usage

  1. Basic Setup
from deepeval.client import DeepEvalClient
from deepeval.schema import TextInputItem, MetricConfig

client = DeepEvalClient(
    base_url="http://localhost:8080",
    api_token="your-api-key"
)
  1. Text Evaluation
    client.maybe_text_eval_background(
                component="ocr",
                data=[
                    TextInputItem(

                        id="runtime evaluation", # identifiar (that can be unique). use same id in case you want to follow performance over time
                        input="...", # input given to ai component
                        output="...", # output of the ai component
                        # optional args/ condtional based on metrics passed
                        expected_output=["..."],
                        retrieval_context=[
                            ["..."]
                        ]

                    )
                ],
                metrics=[
                    ToxicityConfig(
                        # model="gpt-4.1",
                        threshold=0.2,
                        include_reason=False
                    ),
                    CorrectnessConfig(
                        steps=[
                            "You are evaluating text extracted from resumes and job descriptions using OCR.",
                            "1. Verify that the extracted text is coherent and free of major corruption (e.g., broken words, random characters).",
                            "2. Check whether key resume/job-related fields are preserved correctly (e.g., name, job title, skills, education, experience, company name, job requirements).",
                            "3. Ensure that important details are not missing or replaced with irrelevant content.",
                            "4. Ignore minor formatting issues (line breaks, spacing) as long as the information is readable and accurate.",
                            "5. Consider the output correct if it faithfully represents the resume or job description’s main information."
                        ],
                        params=["actual_output"],

                    )
                ],
                chance=.3
            )
  1. Schema Evaluation
    client.maybe_text_eval_background(
                component="ocr",
                data=[
                    TextInputItem(

                        id="runtime evaluation", # identifiar (that can be unique). use same id in case you want to follow performance over time
                        input="...", # input given to ai component
                        output="...", # output of the ai component
                        # optional args/ condtional based on metrics passed
                        expected_output=["..."],
                        retrieval_context=[
                            ["..."]
                        ]

                    )
                ],
                metrics=[
                    ToxicityConfig(
                        # model="gpt-4.1",
                        threshold=0.2,
                        include_reason=False
                    ),
                    CorrectnessConfig(
                        steps=[
                            "You are evaluating text extracted from resumes and job descriptions using OCR.",
                            "1. Verify that the extracted text is coherent and free of major corruption (e.g., broken words, random characters).",
                            "2. Check whether key resume/job-related fields are preserved correctly (e.g., name, job title, skills, education, experience, company name, job requirements).",
                            "3. Ensure that important details are not missing or replaced with irrelevant content.",
                            "4. Ignore minor formatting issues (line breaks, spacing) as long as the information is readable and accurate.",
                            "5. Consider the output correct if it faithfully represents the resume or job description’s main information."
                        ],
                        params=["actual_output"],

                    )
                ],
                chance=.3
            )

Configuration

The client can be configured in multiple ways:

Directly via constructor arguments

DeepEvalClient(base_url="http://api", api_token="123")

Environment variables

export EVALFRAMEWORK_URL=http://api
export EVALFRAMWORK_API_KEY=123

Settings module

import settings # it can be django settings e.g.: from django.conf import settings
client = DeepEvalClient(settings_module=settings)

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

rakam_systems_cli-0.2.4rc18.tar.gz (15.2 kB view details)

Uploaded Source

Built Distribution

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

rakam_systems_cli-0.2.4rc18-py3-none-any.whl (20.1 kB view details)

Uploaded Python 3

File details

Details for the file rakam_systems_cli-0.2.4rc18.tar.gz.

File metadata

File hashes

Hashes for rakam_systems_cli-0.2.4rc18.tar.gz
Algorithm Hash digest
SHA256 e27265f3fda785d38a01783fe829690868b1aeeb4026c5d51f6214eb1b65892d
MD5 cf4f4f986268ef5345d130deddd28518
BLAKE2b-256 3fbc07b84e2dbc86fcd6e9b2f88aa537655e23437e795a3330e15d36c9e86f31

See more details on using hashes here.

File details

Details for the file rakam_systems_cli-0.2.4rc18-py3-none-any.whl.

File metadata

File hashes

Hashes for rakam_systems_cli-0.2.4rc18-py3-none-any.whl
Algorithm Hash digest
SHA256 e31300b20f266303c85e36f2ee938582ca716171fea216d864c1195acd0a52f3
MD5 7c9addc7352f9918c5382e4be5e96220
BLAKE2b-256 b3a3b3a6f333a2cfaabf05f85ffb3915134ae4f6e8cdda228d8f72fa724d5222

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