Skip to content

JudgmentLabs/judgeval-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Judgeval Go SDK

Go Reference License

Installation

Find the latest version on pkg.go.dev.

Go modules:

go get github.com/JudgmentLabs/judgeval-go

Usage

Tracer

package main

import (
    "context"
    "os"

    judgeval "github.com/JudgmentLabs/judgeval-go"
)

func main() {
    client, err := judgeval.NewJudgeval(
        judgeval.WithAPIKey(os.Getenv("JUDGMENT_API_KEY")),
        judgeval.WithOrganizationID(os.Getenv("JUDGMENT_ORG_ID")),
    )
    if err != nil {
        panic(err)
    }

    ctx := context.Background()
    tracer, err := client.Tracer.Create(ctx, judgeval.TracerCreateParams{
        ProjectName: "my-project",
    })
    if err != nil {
        panic(err)
    }
    defer tracer.Shutdown(ctx)

    _, span := tracer.Span(ctx, "my-operation")
    defer span.End()

    tracer.SetInput(span, "user input data")
    tracer.SetOutput(span, "operation result")
}

Scorer

package main

import (
    "context"
    "os"

    judgeval "github.com/JudgmentLabs/judgeval-go"
)

func main() {
    client, err := judgeval.NewJudgeval(
        judgeval.WithAPIKey(os.Getenv("JUDGMENT_API_KEY")),
        judgeval.WithOrganizationID(os.Getenv("JUDGMENT_ORG_ID")),
    )
    if err != nil {
        panic(err)
    }

    ctx := context.Background()
    tracer, err := client.Tracer.Create(ctx, judgeval.TracerCreateParams{
        ProjectName: "my-project",
    })
    if err != nil {
        panic(err)
    }
    defer tracer.Shutdown(ctx)

    scorer := client.Scorers.BuiltIn.AnswerCorrectness(judgeval.AnswerCorrectnessScorerParams{
        Threshold: judgeval.Float(0.7),
    })

    example := judgeval.NewExample(judgeval.ExampleParams{
        "input":           "What is 2+2?",
        "actual_output":   "4",
        "expected_output": "4",
    })

    spanCtx, span := tracer.Span(ctx, "evaluation")
    defer span.End()

    tracer.AsyncEvaluate(spanCtx, scorer, example)
}

Documentation

License

Apache 2.0

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •