Are you sure you want to delete this access key?
sidebar_label |
---|
Travis CI |
This guide demonstrates how to set up promptfoo with Travis CI to run evaluations as part of your CI pipeline.
Create a new file named .travis.yml
in the root of your repository with the following configuration:
language: node_js
node_js:
- 18
cache:
directories:
- node_modules
before_install:
- npm install -g promptfoo
install:
- npm ci
script:
- npx promptfoo eval
after_success:
- echo "Prompt evaluation completed successfully"
after_failure:
- echo "Prompt evaluation failed"
# Save evaluation results as artifacts
before_deploy:
- mkdir -p artifacts
- cp promptfoo-results.json artifacts/
deploy:
provider: s3
bucket: 'your-bucket-name' # Replace with your bucket name
skip_cleanup: true
local_dir: artifacts
on:
branch: main
Store your LLM provider API keys as environment variables in Travis CI:
OPENAI_API_KEY
, ANTHROPIC_API_KEY
)You can configure the pipeline to fail when promptfoo assertions don't pass:
script:
- npx promptfoo eval --fail-on-error
Test your evaluations across different Node.js versions:
language: node_js
node_js:
- 18
- 20
script:
- npx promptfoo eval
Run evaluations on multiple operating systems:
language: node_js
node_js:
- 18
os:
- linux
- osx
script:
- npx promptfoo eval
Run evaluations only on specific branches or conditions:
language: node_js
node_js:
- 18
# Run evaluations only on main branch and pull requests
if: branch = main OR type = pull_request
script:
- npx promptfoo eval
Set up different stages for your build process:
language: node_js
node_js:
- 18
stages:
- test
- evaluate
jobs:
include:
- stage: test
script: npm test
- stage: evaluate
script: npx promptfoo eval
env:
- MODEL=gpt-4
- stage: evaluate
script: npx promptfoo eval
env:
- MODEL=claude-3-opus-20240229
If you encounter issues with your Travis CI integration:
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?