Back to Promptfoo

provider-http/streaming (HTTP Provider Streaming Example)

examples/provider-http/streaming/README.md

0.121.91.2 KB
Original Source

provider-http/streaming (HTTP Provider Streaming Example)

This example shows how to use OpenAI's streaming API via HTTP provider.

You can run this example with:

bash
npx promptfoo@latest init --example provider-http/streaming
cd provider-http/streaming

⚠️ Streaming is not recommended for evaluations

Promptfoo supports streaming HTTP targets, but evals wait for full responses before scoring. That means:

  • No progressive display during evals
  • Extra parsing complexity for streaming formats (SSE/chunked)
  • Similar end-to-end latency vs. non-streaming

Environment Variables

Required:

  • OPENAI_API_KEY - Your OpenAI API key from https://platform.openai.com/api-keys

You can set it in your shell or in a project-level .env file (recommended):

bash
export OPENAI_API_KEY="your-openai-api-key"
# or in .env
OPENAI_API_KEY=your-openai-api-key

Quick Start

  1. Set your API key (or ensure .env is populated)

  2. Run the evaluation (recommended):

    bash
    npx promptfoo@latest eval -c examples/provider-http/streaming/promptfooconfig.yaml
    
  3. View results (optional):

    bash
    npx promptfoo@latest view
    

For more HTTP provider configuration options, see the docs: https://promptfoo.dev/docs/providers/http.