Documentation
¶
Overview ¶
Package llmops provides an omniobserve/llmops adapter for go-opik.
Import this package to register the Opik provider:
import _ "github.com/agentplexus/go-opik/llmops"
Then open it:
provider, err := llmops.Open("opik", llmops.WithAPIKey("..."))
The standalone go-opik SDK can still be used directly without this package:
import opik "github.com/agentplexus/go-opik"
client, err := opik.NewClient(opik.WithAPIKey("..."))
Index ¶
- Constants
- func New(opts ...llmops.ClientOption) (llmops.Provider, error)
- type Provider
- func (p *Provider) AddDatasetItems(ctx context.Context, datasetName string, items []llmops.DatasetItem) error
- func (p *Provider) AddFeedbackScore(ctx context.Context, opts llmops.FeedbackScoreOpts) error
- func (p *Provider) Close() error
- func (p *Provider) CreateAnnotation(ctx context.Context, annotation llmops.Annotation) error
- func (p *Provider) CreateDataset(ctx context.Context, name string, opts ...llmops.DatasetOption) (*llmops.Dataset, error)
- func (p *Provider) CreateProject(ctx context.Context, name string, opts ...llmops.ProjectOption) (*llmops.Project, error)
- func (p *Provider) CreatePrompt(ctx context.Context, name string, template string, opts ...llmops.PromptOption) (*llmops.Prompt, error)
- func (p *Provider) DeleteDataset(ctx context.Context, datasetID string) error
- func (p *Provider) Evaluate(ctx context.Context, input llmops.EvalInput, metrics ...llmops.Metric) (*llmops.EvalResult, error)
- func (p *Provider) GetDataset(ctx context.Context, name string) (*llmops.Dataset, error)
- func (p *Provider) GetDatasetByID(ctx context.Context, id string) (*llmops.Dataset, error)
- func (p *Provider) GetProject(ctx context.Context, name string) (*llmops.Project, error)
- func (p *Provider) GetPrompt(ctx context.Context, name string, version ...string) (*llmops.Prompt, error)
- func (p *Provider) ListAnnotations(ctx context.Context, opts llmops.ListAnnotationsOptions) ([]*llmops.Annotation, error)
- func (p *Provider) ListDatasets(ctx context.Context, opts ...llmops.ListOption) ([]*llmops.Dataset, error)
- func (p *Provider) ListProjects(ctx context.Context, opts ...llmops.ListOption) ([]*llmops.Project, error)
- func (p *Provider) ListPrompts(ctx context.Context, opts ...llmops.ListOption) ([]*llmops.Prompt, error)
- func (p *Provider) Name() string
- func (p *Provider) SetProject(ctx context.Context, name string) error
- func (p *Provider) SpanFromContext(ctx context.Context) (llmops.Span, bool)
- func (p *Provider) StartSpan(ctx context.Context, name string, opts ...llmops.SpanOption) (context.Context, llmops.Span, error)
- func (p *Provider) StartTrace(ctx context.Context, name string, opts ...llmops.TraceOption) (context.Context, llmops.Trace, error)
- func (p *Provider) TraceFromContext(ctx context.Context) (llmops.Trace, bool)
Constants ¶
const ProviderName = "opik"
ProviderName is the name used to register and open this provider.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Provider ¶
type Provider struct {
// contains filtered or unexported fields
}
Provider implements llmops.Provider for Opik.
func (*Provider) AddDatasetItems ¶
func (p *Provider) AddDatasetItems(ctx context.Context, datasetName string, items []llmops.DatasetItem) error
AddDatasetItems adds items to a dataset.
func (*Provider) AddFeedbackScore ¶
AddFeedbackScore adds a feedback score.
func (*Provider) CreateAnnotation ¶
CreateAnnotation creates an annotation on a span or trace. Note: Opik uses feedback scores rather than a separate annotation system. This method adds feedback scores to approximate annotation functionality.
func (*Provider) CreateDataset ¶
func (p *Provider) CreateDataset(ctx context.Context, name string, opts ...llmops.DatasetOption) (*llmops.Dataset, error)
CreateDataset creates a new dataset.
func (*Provider) CreateProject ¶
func (p *Provider) CreateProject(ctx context.Context, name string, opts ...llmops.ProjectOption) (*llmops.Project, error)
CreateProject creates a new project.
func (*Provider) CreatePrompt ¶
func (p *Provider) CreatePrompt(ctx context.Context, name string, template string, opts ...llmops.PromptOption) (*llmops.Prompt, error)
CreatePrompt creates a new prompt.
func (*Provider) DeleteDataset ¶
DeleteDataset deletes a dataset by ID.
func (*Provider) Evaluate ¶
func (p *Provider) Evaluate(ctx context.Context, input llmops.EvalInput, metrics ...llmops.Metric) (*llmops.EvalResult, error)
Evaluate runs evaluation metrics.
func (*Provider) GetDataset ¶
GetDataset gets a dataset by name.
func (*Provider) GetDatasetByID ¶
GetDatasetByID gets a dataset by ID.
func (*Provider) GetProject ¶
GetProject gets a project by name.
func (*Provider) GetPrompt ¶
func (p *Provider) GetPrompt(ctx context.Context, name string, version ...string) (*llmops.Prompt, error)
GetPrompt gets a prompt by name and optional commit/version.
func (*Provider) ListAnnotations ¶
func (p *Provider) ListAnnotations(ctx context.Context, opts llmops.ListAnnotationsOptions) ([]*llmops.Annotation, error)
ListAnnotations lists annotations for spans or traces. Note: Opik uses feedback scores rather than a separate annotation system.
func (*Provider) ListDatasets ¶
func (p *Provider) ListDatasets(ctx context.Context, opts ...llmops.ListOption) ([]*llmops.Dataset, error)
ListDatasets lists datasets.
func (*Provider) ListProjects ¶
func (p *Provider) ListProjects(ctx context.Context, opts ...llmops.ListOption) ([]*llmops.Project, error)
ListProjects lists projects.
func (*Provider) ListPrompts ¶
func (p *Provider) ListPrompts(ctx context.Context, opts ...llmops.ListOption) ([]*llmops.Prompt, error)
ListPrompts lists prompts.
func (*Provider) SetProject ¶
SetProject sets the current project.
func (*Provider) SpanFromContext ¶
SpanFromContext gets the current span from context.
func (*Provider) StartSpan ¶
func (p *Provider) StartSpan(ctx context.Context, name string, opts ...llmops.SpanOption) (context.Context, llmops.Span, error)
StartSpan starts a new span.