Prompt Chain

Compare AI Image Generation Models

Promptfoo example comparing QuiverAI's Arrow SVG models across text-to-SVG, image vectorization, and a GPT Image-2 pipeline, LLM-judged.

Works with quiveraigpt

83
Spark score
out of 100
Updated 17 days ago
Version 0.121.19
Models

Add to Favorites

Why it matters

Evaluate and compare the performance of QuiverAI's Arrow models for text-to-SVG generation and image vectorization. Utilize an LLM-as-judge rubric for objective quality assessment across multiple workflows.

Outcomes

What it gets done

01

Compare Arrow 1.1 and Arrow 1.1 Max models.

02

Evaluate text-to-SVG generation.

03

Assess image-to-SVG vectorization.

04

Run a chained GPT Image-2 to QuiverAI pipeline.

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/pfoo-provider-quiverai | bash

Steps

Steps in the chain

01
Setup environment variables
02
Run the generation suite
03
Run the vectorize suite
04
Run the GPT Image-2 → QuiverAI pipeline

Overview

Provider Quiverai

A promptfoo example comparing QuiverAI's Arrow SVG generation and vectorization models, plus a chained GPT Image-2-to-QuiverAI pipeline, all scored with a custom SVG-aware LLM rubric and validated via is-xml. Use it as a reference for comparing QuiverAI Arrow model quality or building a raster-to-vector pipeline with GPT Image-2, tracking credit cost per result and expecting slower runs from the chained pipeline suite.

What it does

This promptfoo example compares QuiverAI's Arrow models - Arrow 1.1 and Arrow 1.1 Max - across three workflows: text-to-SVG generation, image-to-SVG vectorization, and a chained GPT Image-2 -> QuiverAI vectorize pipeline. Every workflow is scored with an LLM-as-judge rubric so quality can be compared side-by-side.

export QUIVERAI_API_KEY=your-api-key
export OPENAI_API_KEY=your-openai-key  # Required for the pipeline + llm-rubric grader
npx promptfoo@latest init --example provider-quiverai

The generation suite (npx promptfoo@latest eval) compares Arrow 1.1, Arrow 1.1 Max, and an Arrow 1.1 variant using instructions style guidance side-by-side. The vectorize suite (-c promptfooconfig.vectorize.yaml) converts raster reference images into SVGs with both Arrow models to compare fidelity, using repo-hosted fixture images to keep the walkthrough stable against third-party image-host changes. The pipeline suite (-c promptfooconfig.pipeline.yaml) chains OpenAI's gpt-image-2 (high-quality raster generation) with the QuiverAI vectorize endpoint to produce a coherent icon set, implemented as a custom JS provider in pipeline-provider.js that hits both APIs serially per call, so it runs slower wall-clock than a single-provider eval. A May 2026 live cost reference: the raster step (gpt-image-2) bills at OpenAI's image pricing, the arrow-1.1 vectorize step costs 15 credits, and arrow-1.1-max costs 20 credits - credits flow through to result.metadata.credits for eval budgeting, and current pricing can be checked via GET /v1/models' pricing_credits field since QuiverAI prices are model- and operation-specific.

It demonstrates is-xml assertions to validate SVG structure, a custom llm-rubric with a custom rubricPrompt tailored for SVG-specific evaluation, and streaming enabled by default for faster generation. Common configuration options: for generation, instructions (style guidance separate from the prompt), references (reference images as a URL string, { url }, or { base64 }), and n (1-16 outputs per request); for vectorization, image (override the image input), auto_crop (crop to the dominant subject before vectorizing), and target_size (square resize target, 128-4096px); and shared across both, temperature (0-2, default 1), max_output_tokens (1-131,072), and stream (set false to enable response caching).

When to use - and when NOT to

Use it as a reference for comparing QuiverAI's Arrow models on text-to-SVG generation or image vectorization quality, or for building a raster-then-vectorize pipeline chaining GPT Image-2 with QuiverAI, with LLM-judged SVG-specific scoring via is-xml and a custom rubric.

It requires both QUIVERAI_API_KEY and OPENAI_API_KEY (the latter needed for both the pipeline step and the llm-rubric grader). The pipeline suite runs noticeably slower than the single-provider suites since each call hits two APIs serially - budget wall-clock time accordingly, and track result.metadata.credits to budget QuiverAI usage cost.

Inputs and outputs

Input is text prompts (for generation) or raster reference images (for vectorization or the pipeline), plus the QUIVERAI_API_KEY and OPENAI_API_KEY environment variables. Output is generated or vectorized SVGs, validated for structure via is-xml and scored via a custom SVG-specific llm-rubric, with credit-cost metadata attached per result for budgeting.

Integrations

Integrates QuiverAI's Arrow 1.1/Arrow 1.1 Max generate and vectorize endpoints with OpenAI's gpt-image-2 model via a custom JS provider, evaluated through promptfoo's is-xml and llm-rubric assertions.

Who it's for

Developers comparing SVG generation/vectorization quality across QuiverAI's Arrow models, or building a raster-to-vector pipeline combining GPT Image-2 with QuiverAI, who need LLM-judged, SVG-aware evaluation and cost tracking.

Source README

provider-quiverai (QuiverAI SVG Generation, Vectorization & Pipelines)

Compare QuiverAI's Arrow models - including Arrow 1.1 and Arrow 1.1 Max - across three workflows: text-to-SVG generation, image-to-SVG vectorization, and a chained GPT Image-2 → QuiverAI vectorize pipeline. Every workflow is scored with an LLM-as-judge rubric so you can compare quality side-by-side.

Setup

export QUIVERAI_API_KEY=your-api-key
export OPENAI_API_KEY=your-openai-key  # Required for the pipeline + llm-rubric grader
npx promptfoo@latest init --example provider-quiverai

Run the generation suite

npx promptfoo@latest eval

This compares Arrow 1.1, Arrow 1.1 Max, and an Arrow 1.1 variant with instructions style guidance side-by-side.

Run the vectorize suite

npx promptfoo@latest eval -c promptfooconfig.vectorize.yaml

Converts raster reference images into SVGs with both Arrow 1.1 and Arrow 1.1 Max so you can compare fidelity.
The sample inputs are repo-hosted fixtures, which keeps the walkthrough stable
when third-party image hosts change behavior.

Run the GPT Image-2 → QuiverAI pipeline

npx promptfoo@latest eval -c promptfooconfig.pipeline.yaml

Chains OpenAI gpt-image-2 (high-quality raster) with the QuiverAI vectorize endpoint to produce a coherent red-panda icon set. The pipeline is a custom JS provider in pipeline-provider.js; each call hits both APIs serially, so expect longer wall-clock times than a single-provider eval.

Example live cost reference from the May 2026 verification run:

Step Model Credits / cost
Raster step gpt-image-2 OpenAI image pricing
Vectorize step arrow-1.1 15 credits
Vectorize step arrow-1.1-max 20 credits

Credits flow through to result.metadata.credits so you can budget evals. Check
GET /v1/models for the current pricing_credits; QuiverAI prices are
model- and operation-specific.

What This Example Shows

  • Generation: text → SVG with three side-by-side providers
  • Vectorization: image → SVG with the quiverai:vectorize:<model> route
  • Pipeline: a custom JS provider that chains GPT Image-2 + QuiverAI vectorize
  • is-xml to validate SVG structure
  • llm-rubric with a custom rubricPrompt for SVG-specific evaluation
  • Streaming on by default for faster generation

Common Configuration Options

Option Endpoint Description
instructions generate Style guidance separate from the prompt
references generate Reference images: URL string, { url }, or { base64 }
n generate Number of outputs per request (1-16)
image vectorize Override image input from prompt ({ url } or { base64 })
auto_crop vectorize Crop to the dominant subject before vectorization
target_size vectorize Square resize target in pixels (128-4096)
temperature both Randomness (0-2, default 1)
max_output_tokens both Output token cap (1-131,072)
stream both Set false to enable response caching

Learn More

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.