Arena
Arena runs multiple model/prompt variants for the same message so you can
compare them side-by-side and learn which your users prefer. divinci.arena
controls arena for a workspace; presets live under divinci.arena.presets.
Enabling arena
Section titled “Enabling arena”await divinci.arena.enable("ws_123", { // variant definitions: which models/prompts to compare});
// laterawait divinci.arena.disable("ws_123");Reading results
Section titled “Reading results”const results = await divinci.arena.getResults("ws_123");Recording a user’s choice
Section titled “Recording a user’s choice”When a user picks a winning variant in chat or a transcript:
// In a chat threadawait divinci.arena.selectChatVariant(chatId, messageId, /* selectedIndex */ 0);
// In a workspace transcriptawait divinci.arena.selectTranscriptVariant("ws_123", transcriptId, messageId, 1);
// Regenerate a single variant with a specific assistantawait divinci.arena.regenerateVariant("ws_123", transcriptId, messageId, /* variantIndex */ 2, assistantId);Testing and cost
Section titled “Testing and cost”// Dry-run a configurationconst test = await divinci.arena.test("ws_123", { /* test body */ });
// Estimate cost before enablingconst estimate = await divinci.arena.costEstimate("ws_123", { /* body */ });
// Routing estimate (QA integration)const routing = await divinci.arena.routingEstimate("ws_123", { /* body */ });Presets
Section titled “Presets”A preset is a reusable arena configuration you can save, activate, and share across workspaces via export/import.
const presets = await divinci.arena.presets.list("ws_123");
const preset = await divinci.arena.presets.create("ws_123", { /* config */ });await divinci.arena.presets.update("ws_123", preset._id, { /* changes */ });await divinci.arena.presets.activate("ws_123", preset._id);
// Portabilityconst exported = await divinci.arena.presets.export("ws_123", preset._id);const imported = await divinci.arena.presets.import("ws_123", exported);
// Per-preset resultsconst presetResults = await divinci.arena.presets.getResults("ws_123", preset._id);
await divinci.arena.presets.delete("ws_123", preset._id);Method reference
Section titled “Method reference”| Group | Methods |
|---|---|
arena | enable, disable, getResults, selectChatVariant, selectTranscriptVariant, regenerateVariant, test, testSelect, costEstimate, routingEstimate |
arena.presets | list, create, update, delete, activate, export, import, getResults |