Are you sure you want to delete this access key?
sidebar_label | sidebar_position |
---|---|
Custom scripts | 52 |
You may use any shell command as an API provider. This is particularly useful when you want to use a language or framework that is not directly supported by promptfoo.
While Script Providers are particularly useful for evaluating chains, they can generally be used to test your prompts if they are implemented in Python or some other language.
:::tip
Python users: there is a dedicated python
provider that you may find easier to use.
Javascript users: see how to implement ApiProvider
.
:::
To use a script provider, you need to create an executable that takes a prompt as its first argument and returns the result of the API call. The script should be able to be invoked from the command line.
Here is an example of how to use a script provider:
providers:
- 'exec: python chain.py'
Or in the CLI:
promptfoo eval -p prompt1.txt prompt2.txt -o results.csv -v vars.csv -r 'exec: python chain.py'
In the above example, chain.py
is a Python script that takes a prompt as an argument, executes an LLM chain, and outputs the result.
For a more in-depth example of a script provider, see the LLM Chain example.
Press p or to see the previous file or, n or to see the next file
Browsing data directories saved to S3 is possible with DAGsHub. Let's configure your repository to easily display your data in the context of any commit!
promptfoo is now integrated with AWS S3!
Are you sure you want to delete this access key?
Browsing data directories saved to Google Cloud Storage is possible with DAGsHub. Let's configure your repository to easily display your data in the context of any commit!
promptfoo is now integrated with Google Cloud Storage!
Are you sure you want to delete this access key?
Browsing data directories saved to Azure Cloud Storage is possible with DAGsHub. Let's configure your repository to easily display your data in the context of any commit!
promptfoo is now integrated with Azure Cloud Storage!
Are you sure you want to delete this access key?
Browsing data directories saved to S3 compatible storage is possible with DAGsHub. Let's configure your repository to easily display your data in the context of any commit!
promptfoo is now integrated with your S3 compatible storage!
Are you sure you want to delete this access key?