Skip to content

Instantly share code, notes, and snippets.

@billybonks
Last active May 23, 2025 07:46
Show Gist options
  • Save billybonks/987cbc432f8ac4e7a8b1a7b81f6f119f to your computer and use it in GitHub Desktop.
Save billybonks/987cbc432f8ac4e7a8b1a7b81f6f119f to your computer and use it in GitHub Desktop.
# yaml-language-server: $schema=https://promptfoo.dev/config-schema.json
description: "Custom Provider"
prompts:
- "say {{item}}"
providers:
- id: file://./provider.js
tests:
- vars:
item: bananas
assert:
- type: contains
value: "banana"
- vars:
item: apples
assert:
- type: contains
value: "apple"
provider:
id: file://./provider2.js
# yaml-language-server: $schema=https://promptfoo.dev/config-schema.json
description: "Custom Provider"
prompts:
- "say {{item}}"
providers:
- id: file://./provider.js
tests:
- vars:
item: bananas
assert:
- type: contains
value: "banana"
- vars:
item: apples
assert:
- type: contains
value: "apple"
provider:
id: file://./provider.js
export default class BananaProvider {
providerId = "banana";
constructor(options) {
this.providerId = options.id || "langchain";
}
id() {
return this.providerId;
}
callApi = async () => {
return {
output: "banana",
};
};
}
export default class BananaProvider {
providerId = "banana";
constructor(options) {
this.providerId = options.id || "langchain";
}
id() {
return this.providerId;
}
callApi = async () => {
return {
output: "banana",
};
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment