UNPKG

@twilio-alpha/assistants-eval

Version:

promptfoo extension for writing AI evaluations for Twilio AI Assistants

38 lines 1.43 kB
import { AgentProvider } from './agent.js'; export class TwilioAgentProvider extends AgentProvider { constructor(options) { const { userProvider, ...agentProvider } = options.config ?? {}; super({ id: options.id, label: options.label, config: { userProvider: userProvider ?? 'openai:chat:gpt-4o-mini', agentProvider: { id: 'package:@twilio-alpha/assistants-eval:TwilioProvider', config: { ...agentProvider }, }, maxTurns: undefined, }, env: options.env, }); } get agentProviderInstance() { return this.agentProvider; } async callApi(prompt, context, callApiOptions) { await this.ensureProviders(); if (!this.userProvider || !this.agentProvider) { throw new Error('Providers not loaded'); } if (typeof context?.vars.maxTurns === 'number' && context?.vars.maxTurns > 0) { if (!context?.vars?.sessionId) { throw new Error('sessionId variable is required when using maxTurns variable'); } return super.callApi(prompt, context, callApiOptions); } return this.agentProvider.callApi(prompt, context, callApiOptions); } } export default TwilioAgentProvider; //# sourceMappingURL=twilio-agent.js.map