Register
Login
Resources
Docs Blog Datasets Glossary Case Studies Tutorials & Webinars
Product
Data Engine LLMs Platform Enterprise
Pricing Explore
Connect to our Discord channel
Michael 360d7b519d
docs(examples): add uniform init commands to all example READMEs (#4068)
3 months ago
..
360d7b519d
docs(examples): add uniform init commands to all example READMEs (#4068)
3 months ago
841a40dcda
feat(providers): add transformRequest to HTTP provider. Rename responseParser to transformResponse (#2228)
8 months ago

README.md

You have to be logged in to leave a comment. Sign In

http-provider (HTTP Provider Example)

You can run this example with:

npx promptfoo@latest init --example http-provider

This example demonstrates how to configure and use HTTP providers with promptfoo to integrate with external API endpoints.

Quick Start

  1. Visit the HTTP Provider Generator to automatically generate configurations based on your HTTP endpoint.
  2. Enter your request configuration and sample response.
  3. Copy the generated configuration to your promptfoo config file.

Example Configuration

Here's a basic example configuration for an HTTP provider that sends prompts to an API endpoint:

providers:
  - id: https://api.example.com/chat
    config:
      method: POST
      headers:
        Content-Type: application/json
      body:
        messages:
          - role: user
            content: '{{prompt}}'
      transformResponse: json.choices[0].message.content

Configuration Options

  • method: HTTP method (GET, POST, PUT, etc.)
  • headers: Request headers (Content-Type, Authorization, etc.)
  • body: Request body (supports template variables like {{prompt}})
  • queryParams: URL query parameters
  • transformResponse: JavaScript expression to extract the response

Usage Steps

  1. Copy the example configuration above
  2. Modify the configuration for your endpoint:
    • Update the URL
    • Adjust headers (add authentication if needed)
    • Modify the request body structure
    • Update the transformResponse to match your API's response format
  3. Test the configuration using the HTTP Provider Generator
  4. Save the working configuration to your promptfoo config file

Testing Locally

To test your configuration:

  1. Create a promptfooconfig.yaml file with your configuration
  2. Run the evaluation:
    promptfoo eval
    
  3. View the results:
    promptfoo view
    

For development and testing, you can use services like webhook.site to create test endpoints.

For more detailed information, see the HTTP Provider documentation.

Tip!

Press p or to see the previous file or, n or to see the next file

Comments

Loading...