Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
lebsral avatar

Dspy Phoenix

  • 4 installs
  • 11 repo stars
  • Updated June 28, 2026
  • lebsral/dspy-programming-not-prompting-lms-skills

Helps with ai & agent building tasks.

About

dspy-phoenix is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.

  • dspy-phoenix
  • AI & Agent Building
  • AI-coding skill

Dspy Phoenix by the numbers

  • 4 all-time installs (skills.sh)
  • Ranked #13,348 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 2, 2026 (Skillselion catalog sync)
npx skills add https://github.com/lebsral/dspy-programming-not-prompting-lms-skills --skill dspy-phoenix

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs4
repo stars11
Last updatedJune 28, 2026
Repositorylebsral/dspy-programming-not-prompting-lms-skills

What it does

Helps with ai & agent building tasks.

Files

SKILL.mdMarkdownGitHub ↗

Arize Phoenix — Open-Source LLM Observability for DSPy

Guide the user through setting up Arize Phoenix for DSPy tracing, visualization, and evaluation.

What is Arize Phoenix

Phoenix is an open-source LLM observability platform that runs locally or in the cloud. It provides a trace viewer, evaluation tools, and dataset management — all with DSPy auto-instrumentation via the OpenInference plugin.

What gets traced

ComponentDetails captured
LM callsPrompts, responses, token counts, latency
RetrievalsQueries, passages, relevance scores
Module executionsInput/output per module step
Full pipelineNested spans showing the complete call tree

When to use Phoenix

Use Phoenix when:

  • You want a local trace viewer with no cloud dependency
  • You need built-in evaluation tools (evals module)
  • You want an open-source solution you can self-host
  • You want to visually inspect what your DSPy pipeline is doing

Do NOT use Phoenix when:

  • You want the absolute easiest one-line setup — see /dspy-langtrace
  • Your team already uses W&B — see /dspy-weave
  • You need the full ML lifecycle (model registry, deployment) — see /dspy-mlflow

Setup

Install

pip install arize-phoenix openinference-instrumentation-dspy

Local mode (quickest)

import phoenix as px
from openinference.instrumentation.dspy import DSPyInstrumentor

# Launch local UI
px.launch_app()  # Opens at http://localhost:6006

# Auto-instrument DSPy
DSPyInstrumentor().instrument()

# All DSPy calls are now traced
import dspy
dspy.configure(lm=dspy.LM("openai/gpt-4o-mini"))

program = dspy.ChainOfThought("question -> answer")
result = program(question="What is DSPy?")
# View traces at http://localhost:6006

Cloud mode (Arize platform)

For teams that want persistent storage and collaboration:

import phoenix as px
from openinference.instrumentation.dspy import DSPyInstrumentor

# Connect to Arize cloud
px.launch_app(endpoint="https://app.phoenix.arize.com")

DSPyInstrumentor().instrument()

# Traces are stored in the cloud — accessible to the whole team

Environment variable configuration

export PHOENIX_COLLECTOR_ENDPOINT="http://localhost:6006"  # or cloud URL
import phoenix as px
from openinference.instrumentation.dspy import DSPyInstrumentor

px.launch_app()
DSPyInstrumentor().instrument()

Tracing a DSPy pipeline

The OpenInference plugin auto-instruments all DSPy modules:

import phoenix as px
from openinference.instrumentation.dspy import DSPyInstrumentor

px.launch_app()
DSPyInstrumentor().instrument()

import dspy

dspy.configure(lm=dspy.LM("openai/gpt-4o-mini"))

class RAGPipeline(dspy.Module):
    def __init__(self):
        self.retrieve = dspy.Retrieve(k=3)
        self.answer = dspy.ChainOfThought("context, question -> answer")

    def forward(self, question):
        context = self.retrieve(question).passages
        return self.answer(context=context, question=question)

pipeline = RAGPipeline()
result = pipeline(question="How do refunds work?")
# Open http://localhost:6006 to see the trace tree:
#   RAGPipeline
#   +-- Retrieve (query, passages, latency)
#   +-- ChainOfThought (prompt, response, tokens)

Inspecting traces in the Phoenix UI

The Phoenix UI at http://localhost:6006 provides:

  • Trace list: all requests with status, latency, and token counts
  • Trace detail: waterfall view of every span in a request
  • Prompt viewer: full prompt and response text for each LM call
  • Filters: by time range, latency, status, span kind
  • Token analysis: cost and token usage breakdowns

Sorting and filtering

  • Click column headers to sort by latency, token count, or timestamp
  • Use the filter bar to find traces with specific attributes
  • Click any trace to drill into the span tree

Evaluations with Phoenix

Phoenix includes a built-in evals module for scoring LM outputs:

from phoenix.evals import llm_classify, OpenAIModel

# Define evaluation criteria
eval_model = OpenAIModel(model="gpt-4o-mini")

# Score traces against criteria
eval_results = llm_classify(
    dataframe=px.Client().get_spans_dataframe(),
    model=eval_model,
    template="Is this response helpful and accurate? {output}",
    rails=["helpful", "not helpful"],
)

This is useful for:

  • Automated quality checks: score every response in a batch
  • Finding failure patterns: filter by low-scoring traces
  • Regression testing: compare eval scores before and after changes

Phoenix vs Langtrace vs Jaeger

FeatureArize PhoenixLangtraceJaeger
DSPy auto-instrumentationYes (plugin)Yes (built-in)Manual
Setup effortTwo lines + launchOne lineDocker + manual spans
Local mode (no cloud)Yes (px.launch_app())Yes (Docker)Yes (Docker)
Cloud optionYes (Arize platform)Yes (app.langtrace.ai)No
Built-in evalsYes (evals module)BasicNo
Dataset managementYesNoNo
LM call detailsPrompts, tokens, latencyPrompts, tokens, costCustom attributes
Best forTeams wanting evals + tracesDSPy-first teamsTeams already using Jaeger

Decision guide

Want DSPy tracing?
|
+- Need built-in evals + dataset management? -> Arize Phoenix
+- Want easiest one-line setup? -> Langtrace (/dspy-langtrace)
+- Team already uses W&B? -> W&B Weave (/dspy-weave)
+- Need full ML lifecycle (registry, deploy)? -> MLflow (/dspy-mlflow)
+- Team already uses Jaeger? -> Jaeger (see /ai-tracing-requests)

Cross-references

  • Langtrace (easiest DSPy auto-instrumentation) — /dspy-langtrace
  • W&B Weave (team dashboards, experiment tracking) — /dspy-weave
  • MLflow (full ML lifecycle) — /dspy-mlflow
  • Aggregate monitoring (not per-request) — /ai-monitoring
  • Per-request debugging (inspect_history, JSONL traces) — /ai-tracing-requests
  • For worked examples, see examples.md

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.