@clipboard-health/tribunal 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +57 -0
- package/bin/opRun.js +24 -0
- package/bin/run.js +6 -0
- package/bin/runCli.js +40 -0
- package/package.json +53 -0
- package/src/format.d.ts +6 -0
- package/src/format.js +186 -0
- package/src/format.js.map +1 -0
- package/src/html.d.ts +8 -0
- package/src/html.js +914 -0
- package/src/html.js.map +1 -0
- package/src/index.d.ts +60 -0
- package/src/index.js +573 -0
- package/src/index.js.map +1 -0
- package/src/intermediates.d.ts +52 -0
- package/src/intermediates.js +137 -0
- package/src/intermediates.js.map +1 -0
- package/src/models.d.ts +24 -0
- package/src/models.js +126 -0
- package/src/models.js.map +1 -0
- package/src/reasoning.d.ts +16 -0
- package/src/reasoning.js +84 -0
- package/src/reasoning.js.map +1 -0
- package/src/schemas.d.ts +165 -0
- package/src/schemas.js +39 -0
- package/src/schemas.js.map +1 -0
- package/src/tribunal.d.ts +95 -0
- package/src/tribunal.js +383 -0
- package/src/tribunal.js.map +1 -0
package/src/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/tribunal/src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { ModelRole, ModelSpec } from "./models.ts";
|
|
2
|
+
import type { CallMetadata, TribunalProgressHandler, TribunalProgressStatus, TribunalRequest, TribunalResponse } from "./tribunal.ts";
|
|
3
|
+
export type IntermediateOutputRunStatus = "running" | "completed" | "failed";
|
|
4
|
+
export interface IntermediateOutputEvent {
|
|
5
|
+
at: string;
|
|
6
|
+
role: ModelRole;
|
|
7
|
+
status: TribunalProgressStatus;
|
|
8
|
+
model: ModelSpec;
|
|
9
|
+
latencyMs?: number;
|
|
10
|
+
errorMessage?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface IntermediateOutputCall {
|
|
13
|
+
role: ModelRole;
|
|
14
|
+
status: TribunalProgressStatus;
|
|
15
|
+
model: ModelSpec;
|
|
16
|
+
startedAt?: string;
|
|
17
|
+
completedAt?: string;
|
|
18
|
+
failedAt?: string;
|
|
19
|
+
latencyMs?: number;
|
|
20
|
+
metadata?: CallMetadata;
|
|
21
|
+
output?: unknown;
|
|
22
|
+
errorMessage?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface IntermediateOutputSnapshot {
|
|
25
|
+
version: 1;
|
|
26
|
+
status: IntermediateOutputRunStatus;
|
|
27
|
+
request: TribunalRequest;
|
|
28
|
+
startedAt: string;
|
|
29
|
+
updatedAt: string;
|
|
30
|
+
events: IntermediateOutputEvent[];
|
|
31
|
+
calls: Partial<Record<ModelRole, IntermediateOutputCall>>;
|
|
32
|
+
response?: TribunalResponse;
|
|
33
|
+
errorMessage?: string;
|
|
34
|
+
}
|
|
35
|
+
export interface IntermediateOutputRecorder {
|
|
36
|
+
filePath: string;
|
|
37
|
+
onProgress: TribunalProgressHandler;
|
|
38
|
+
markCompleted: (response: TribunalResponse) => Promise<void>;
|
|
39
|
+
markFailed: (error: unknown) => Promise<void>;
|
|
40
|
+
}
|
|
41
|
+
export interface CreateIntermediateOutputRecorderInput {
|
|
42
|
+
filePath: string;
|
|
43
|
+
request: TribunalRequest;
|
|
44
|
+
now?: () => Date;
|
|
45
|
+
makeDirectory?: (path: string) => Promise<void>;
|
|
46
|
+
writeFile?: (path: string, contents: string) => Promise<void>;
|
|
47
|
+
}
|
|
48
|
+
export declare function createDefaultIntermediateOutputPath(input: {
|
|
49
|
+
cwd: string;
|
|
50
|
+
now?: () => Date;
|
|
51
|
+
}): string;
|
|
52
|
+
export declare function createIntermediateOutputRecorder(input: CreateIntermediateOutputRecorderInput): Promise<IntermediateOutputRecorder>;
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { mkdir, writeFile } from "node:fs/promises";
|
|
2
|
+
import { dirname, resolve } from "node:path";
|
|
3
|
+
const INTERMEDIATE_OUTPUT_DIRECTORY = ".tribunal/runs";
|
|
4
|
+
export function createDefaultIntermediateOutputPath(input) {
|
|
5
|
+
const { cwd, now = createDate } = input;
|
|
6
|
+
const timestamp = formatPathTimestamp(now());
|
|
7
|
+
return resolve(cwd, INTERMEDIATE_OUTPUT_DIRECTORY, `${timestamp}.json`);
|
|
8
|
+
}
|
|
9
|
+
export async function createIntermediateOutputRecorder(input) {
|
|
10
|
+
const { filePath, makeDirectory = makeDirectoryOnDisk, now = createDate, request, writeFile: writeFileToDisk = writeFileOnDisk, } = input;
|
|
11
|
+
const startedAt = formatTimestamp(now());
|
|
12
|
+
const snapshot = {
|
|
13
|
+
calls: {},
|
|
14
|
+
events: [],
|
|
15
|
+
request,
|
|
16
|
+
startedAt,
|
|
17
|
+
status: "running",
|
|
18
|
+
updatedAt: startedAt,
|
|
19
|
+
version: 1,
|
|
20
|
+
};
|
|
21
|
+
let writeQueue = Promise.resolve();
|
|
22
|
+
await makeDirectory(dirname(filePath));
|
|
23
|
+
await persist(startedAt);
|
|
24
|
+
async function onProgress(event) {
|
|
25
|
+
const timestamp = formatTimestamp(now());
|
|
26
|
+
snapshot.events.push(createEventRecord({ event, timestamp }));
|
|
27
|
+
snapshot.calls[event.role] = createCallRecord({
|
|
28
|
+
event,
|
|
29
|
+
existingCall: snapshot.calls[event.role],
|
|
30
|
+
timestamp,
|
|
31
|
+
});
|
|
32
|
+
await persist(timestamp);
|
|
33
|
+
}
|
|
34
|
+
async function markCompleted(response) {
|
|
35
|
+
const timestamp = formatTimestamp(now());
|
|
36
|
+
snapshot.status = "completed";
|
|
37
|
+
snapshot.response = response;
|
|
38
|
+
await persist(timestamp);
|
|
39
|
+
}
|
|
40
|
+
async function markFailed(error) {
|
|
41
|
+
const timestamp = formatTimestamp(now());
|
|
42
|
+
snapshot.status = "failed";
|
|
43
|
+
snapshot.errorMessage = formatErrorMessage(error);
|
|
44
|
+
await persist(timestamp);
|
|
45
|
+
}
|
|
46
|
+
async function persist(timestamp) {
|
|
47
|
+
snapshot.updatedAt = timestamp;
|
|
48
|
+
const contents = `${JSON.stringify(snapshot, undefined, 2)}\n`;
|
|
49
|
+
writeQueue = writeQueuedSnapshot({
|
|
50
|
+
contents,
|
|
51
|
+
filePath,
|
|
52
|
+
previousWrite: writeQueue,
|
|
53
|
+
writeFile: writeFileToDisk,
|
|
54
|
+
});
|
|
55
|
+
await writeQueue;
|
|
56
|
+
}
|
|
57
|
+
return { filePath, markCompleted, markFailed, onProgress };
|
|
58
|
+
}
|
|
59
|
+
async function writeQueuedSnapshot(input) {
|
|
60
|
+
const { contents, filePath, previousWrite, writeFile: writeSnapshot } = input;
|
|
61
|
+
try {
|
|
62
|
+
await previousWrite;
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
// Keep later snapshots possible after a transient write failure.
|
|
66
|
+
}
|
|
67
|
+
await writeSnapshot(filePath, contents);
|
|
68
|
+
}
|
|
69
|
+
function createEventRecord(input) {
|
|
70
|
+
const { event, timestamp } = input;
|
|
71
|
+
const record = {
|
|
72
|
+
at: timestamp,
|
|
73
|
+
model: event.model,
|
|
74
|
+
role: event.role,
|
|
75
|
+
status: event.status,
|
|
76
|
+
};
|
|
77
|
+
if (event.latencyMs !== undefined) {
|
|
78
|
+
record.latencyMs = event.latencyMs;
|
|
79
|
+
}
|
|
80
|
+
if (event.errorMessage !== undefined) {
|
|
81
|
+
record.errorMessage = event.errorMessage;
|
|
82
|
+
}
|
|
83
|
+
return record;
|
|
84
|
+
}
|
|
85
|
+
function createCallRecord(input) {
|
|
86
|
+
const { event, existingCall, timestamp } = input;
|
|
87
|
+
const record = {
|
|
88
|
+
...existingCall,
|
|
89
|
+
model: event.model,
|
|
90
|
+
role: event.role,
|
|
91
|
+
status: event.status,
|
|
92
|
+
};
|
|
93
|
+
if (event.status === "started") {
|
|
94
|
+
record.startedAt = timestamp;
|
|
95
|
+
return record;
|
|
96
|
+
}
|
|
97
|
+
if (event.status === "completed") {
|
|
98
|
+
record.completedAt = timestamp;
|
|
99
|
+
assignCompletedCallFields(record, event);
|
|
100
|
+
return record;
|
|
101
|
+
}
|
|
102
|
+
record.failedAt = timestamp;
|
|
103
|
+
if (event.errorMessage !== undefined) {
|
|
104
|
+
record.errorMessage = event.errorMessage;
|
|
105
|
+
}
|
|
106
|
+
return record;
|
|
107
|
+
}
|
|
108
|
+
function assignCompletedCallFields(record, event) {
|
|
109
|
+
if (event.latencyMs !== undefined) {
|
|
110
|
+
record.latencyMs = event.latencyMs;
|
|
111
|
+
}
|
|
112
|
+
if (event.metadata !== undefined) {
|
|
113
|
+
record.metadata = event.metadata;
|
|
114
|
+
}
|
|
115
|
+
if (event.output !== undefined) {
|
|
116
|
+
record.output = event.output;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
async function makeDirectoryOnDisk(path) {
|
|
120
|
+
await mkdir(path, { recursive: true });
|
|
121
|
+
}
|
|
122
|
+
async function writeFileOnDisk(path, contents) {
|
|
123
|
+
await writeFile(path, contents, "utf8");
|
|
124
|
+
}
|
|
125
|
+
function createDate() {
|
|
126
|
+
return new Date();
|
|
127
|
+
}
|
|
128
|
+
function formatPathTimestamp(date) {
|
|
129
|
+
return date.toISOString().replaceAll(":", "-").replaceAll(".", "-");
|
|
130
|
+
}
|
|
131
|
+
function formatTimestamp(date) {
|
|
132
|
+
return date.toISOString();
|
|
133
|
+
}
|
|
134
|
+
function formatErrorMessage(error) {
|
|
135
|
+
return error instanceof Error ? error.message : String(error);
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=intermediates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intermediates.js","sourceRoot":"","sources":["../../../../packages/tribunal/src/intermediates.ts"],"names":[],"mappings":"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"}
|
package/src/models.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { LanguageModel } from "ai";
|
|
2
|
+
import type { Role } from "./schemas.ts";
|
|
3
|
+
type ProviderId = "anthropic" | "openai" | "google";
|
|
4
|
+
export type ModelRole = Role | "deliberator";
|
|
5
|
+
export interface ModelSpec {
|
|
6
|
+
provider: ProviderId;
|
|
7
|
+
modelId: string;
|
|
8
|
+
}
|
|
9
|
+
interface ModelOverride {
|
|
10
|
+
role: Role;
|
|
11
|
+
model: ModelSpec;
|
|
12
|
+
}
|
|
13
|
+
export interface ResolveModelSetInput {
|
|
14
|
+
overrides?: Partial<Record<ModelRole, ModelSpec>>;
|
|
15
|
+
environment?: Record<string, string | undefined>;
|
|
16
|
+
}
|
|
17
|
+
export declare const DEFAULT_MODELS: Record<ModelRole, ModelSpec>;
|
|
18
|
+
export declare function parseModelSpec(input: string): ModelSpec;
|
|
19
|
+
export declare function parseModelOverride(input: string): ModelOverride;
|
|
20
|
+
export declare function parseModelRole(input: string): ModelRole;
|
|
21
|
+
export declare function resolveModelSet(input?: ResolveModelSetInput): Record<ModelRole, ModelSpec>;
|
|
22
|
+
export declare function resolveLanguageModel(spec: ModelSpec): LanguageModel;
|
|
23
|
+
export declare function formatModelSpec(spec: ModelSpec): string;
|
|
24
|
+
export {};
|
package/src/models.js
ADDED
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { anthropic } from "@ai-sdk/anthropic";
|
|
2
|
+
import { google } from "@ai-sdk/google";
|
|
3
|
+
import { openai } from "@ai-sdk/openai";
|
|
4
|
+
export const DEFAULT_MODELS = {
|
|
5
|
+
advocate: { provider: "anthropic", modelId: "claude-opus-4-7" },
|
|
6
|
+
skeptic: { provider: "openai", modelId: "gpt-5.4" },
|
|
7
|
+
analyst: { provider: "google", modelId: "gemini-3.1-pro-preview" },
|
|
8
|
+
deliberator: { provider: "anthropic", modelId: "claude-opus-4-7" },
|
|
9
|
+
};
|
|
10
|
+
const MODEL_ENVIRONMENT_VARIABLES = {
|
|
11
|
+
advocate: "TRIBUNAL_ADVOCATE_MODEL",
|
|
12
|
+
skeptic: "TRIBUNAL_SKEPTIC_MODEL",
|
|
13
|
+
analyst: "TRIBUNAL_ANALYST_MODEL",
|
|
14
|
+
deliberator: "TRIBUNAL_DELIBERATOR_MODEL",
|
|
15
|
+
};
|
|
16
|
+
export function parseModelSpec(input) {
|
|
17
|
+
const separatorIndex = input.indexOf(":");
|
|
18
|
+
if (separatorIndex <= 0 || separatorIndex === input.length - 1) {
|
|
19
|
+
throw new Error(`Model must use provider:model-id format. Received: ${input}`);
|
|
20
|
+
}
|
|
21
|
+
const providerInput = input.slice(0, separatorIndex).trim();
|
|
22
|
+
const modelId = input.slice(separatorIndex + 1).trim();
|
|
23
|
+
if (providerInput.length === 0 || modelId.length === 0) {
|
|
24
|
+
throw new Error(`Model must use provider:model-id format. Received: ${input}`);
|
|
25
|
+
}
|
|
26
|
+
const provider = parseProviderId(providerInput);
|
|
27
|
+
return { provider, modelId };
|
|
28
|
+
}
|
|
29
|
+
export function parseModelOverride(input) {
|
|
30
|
+
const separatorIndex = input.indexOf("=");
|
|
31
|
+
if (separatorIndex <= 0 || separatorIndex === input.length - 1) {
|
|
32
|
+
throw new Error(`Model override must use role=provider:model-id format. Received: ${input}`);
|
|
33
|
+
}
|
|
34
|
+
const roleInput = input.slice(0, separatorIndex);
|
|
35
|
+
const modelInput = input.slice(separatorIndex + 1);
|
|
36
|
+
if (roleInput === "deliberator") {
|
|
37
|
+
throw new Error("Use --deliberator to override the deliberator model.");
|
|
38
|
+
}
|
|
39
|
+
return {
|
|
40
|
+
role: parseRole(roleInput),
|
|
41
|
+
model: parseModelSpec(modelInput),
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
export function parseModelRole(input) {
|
|
45
|
+
switch (input) {
|
|
46
|
+
case "advocate": {
|
|
47
|
+
return input;
|
|
48
|
+
}
|
|
49
|
+
case "skeptic": {
|
|
50
|
+
return input;
|
|
51
|
+
}
|
|
52
|
+
case "analyst": {
|
|
53
|
+
return input;
|
|
54
|
+
}
|
|
55
|
+
case "deliberator": {
|
|
56
|
+
return input;
|
|
57
|
+
}
|
|
58
|
+
default: {
|
|
59
|
+
throw new Error(`Unknown model role: ${input}`);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
export function resolveModelSet(input = {}) {
|
|
64
|
+
const { environment = {}, overrides = {} } = input;
|
|
65
|
+
return {
|
|
66
|
+
advocate: resolveModelForRole({ environment, overrides, role: "advocate" }),
|
|
67
|
+
skeptic: resolveModelForRole({ environment, overrides, role: "skeptic" }),
|
|
68
|
+
analyst: resolveModelForRole({ environment, overrides, role: "analyst" }),
|
|
69
|
+
deliberator: resolveModelForRole({ environment, overrides, role: "deliberator" }),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
export function resolveLanguageModel(spec) {
|
|
73
|
+
switch (spec.provider) {
|
|
74
|
+
case "anthropic": {
|
|
75
|
+
return anthropic(spec.modelId);
|
|
76
|
+
}
|
|
77
|
+
case "openai": {
|
|
78
|
+
return openai(spec.modelId);
|
|
79
|
+
}
|
|
80
|
+
case "google": {
|
|
81
|
+
return google(spec.modelId);
|
|
82
|
+
}
|
|
83
|
+
default: {
|
|
84
|
+
throw new Error("Unknown provider.");
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
export function formatModelSpec(spec) {
|
|
89
|
+
return `${spec.provider}:${spec.modelId}`;
|
|
90
|
+
}
|
|
91
|
+
function resolveModelForRole(input) {
|
|
92
|
+
const { environment, overrides, role } = input;
|
|
93
|
+
const override = overrides[role];
|
|
94
|
+
if (override !== undefined) {
|
|
95
|
+
return override;
|
|
96
|
+
}
|
|
97
|
+
const environmentValue = environment[MODEL_ENVIRONMENT_VARIABLES[role]];
|
|
98
|
+
if (environmentValue !== undefined && environmentValue.trim().length > 0) {
|
|
99
|
+
return parseModelSpec(environmentValue);
|
|
100
|
+
}
|
|
101
|
+
return DEFAULT_MODELS[role];
|
|
102
|
+
}
|
|
103
|
+
function parseProviderId(input) {
|
|
104
|
+
switch (input) {
|
|
105
|
+
case "anthropic": {
|
|
106
|
+
return input;
|
|
107
|
+
}
|
|
108
|
+
case "openai": {
|
|
109
|
+
return input;
|
|
110
|
+
}
|
|
111
|
+
case "google": {
|
|
112
|
+
return input;
|
|
113
|
+
}
|
|
114
|
+
default: {
|
|
115
|
+
throw new Error(`Unknown provider: ${input}`);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
function parseRole(input) {
|
|
120
|
+
const role = parseModelRole(input);
|
|
121
|
+
if (role === "deliberator") {
|
|
122
|
+
throw new Error(`Unknown perspective role: ${input}`);
|
|
123
|
+
}
|
|
124
|
+
return role;
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=models.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../packages/tribunal/src/models.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type ModelRole, type ModelSpec } from "./models.ts";
|
|
2
|
+
export type ReasoningLevel = "none" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max";
|
|
3
|
+
export type ReasoningOverrides = Partial<Record<ModelRole, ReasoningLevel>>;
|
|
4
|
+
export interface ReasoningOverride {
|
|
5
|
+
role: ModelRole;
|
|
6
|
+
level: ReasoningLevel;
|
|
7
|
+
}
|
|
8
|
+
type ReasoningProviderOptionValue = string | Record<string, string>;
|
|
9
|
+
export type ReasoningProviderOptions = Record<string, Record<string, ReasoningProviderOptionValue>>;
|
|
10
|
+
export declare function parseReasoningOverride(input: string): ReasoningOverride;
|
|
11
|
+
export declare function parseReasoningLevel(input: string): ReasoningLevel;
|
|
12
|
+
export declare function createReasoningProviderOptions(input: {
|
|
13
|
+
model: ModelSpec;
|
|
14
|
+
reasoningLevel: ReasoningLevel | undefined;
|
|
15
|
+
}): ReasoningProviderOptions | undefined;
|
|
16
|
+
export {};
|
package/src/reasoning.js
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { parseModelRole } from "./models.js";
|
|
2
|
+
const SUPPORTED_REASONING_LEVELS_BY_PROVIDER = {
|
|
3
|
+
anthropic: new Set(["low", "medium", "high", "xhigh", "max"]),
|
|
4
|
+
google: new Set(["minimal", "low", "medium", "high"]),
|
|
5
|
+
openai: new Set(["none", "minimal", "low", "medium", "high", "xhigh"]),
|
|
6
|
+
};
|
|
7
|
+
export function parseReasoningOverride(input) {
|
|
8
|
+
const separatorIndex = input.indexOf("=");
|
|
9
|
+
if (separatorIndex <= 0 || separatorIndex === input.length - 1) {
|
|
10
|
+
throw new Error(`Reasoning override must use role=level format. Received: ${input}`);
|
|
11
|
+
}
|
|
12
|
+
const roleInput = input.slice(0, separatorIndex).trim();
|
|
13
|
+
const levelInput = input.slice(separatorIndex + 1).trim();
|
|
14
|
+
if (roleInput.length === 0 || levelInput.length === 0) {
|
|
15
|
+
throw new Error(`Reasoning override must use role=level format. Received: ${input}`);
|
|
16
|
+
}
|
|
17
|
+
return {
|
|
18
|
+
level: parseReasoningLevel(levelInput),
|
|
19
|
+
role: parseModelRole(roleInput),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export function parseReasoningLevel(input) {
|
|
23
|
+
switch (input) {
|
|
24
|
+
case "none": {
|
|
25
|
+
return input;
|
|
26
|
+
}
|
|
27
|
+
case "minimal": {
|
|
28
|
+
return input;
|
|
29
|
+
}
|
|
30
|
+
case "low": {
|
|
31
|
+
return input;
|
|
32
|
+
}
|
|
33
|
+
case "medium": {
|
|
34
|
+
return input;
|
|
35
|
+
}
|
|
36
|
+
case "high": {
|
|
37
|
+
return input;
|
|
38
|
+
}
|
|
39
|
+
case "xhigh": {
|
|
40
|
+
return input;
|
|
41
|
+
}
|
|
42
|
+
case "max": {
|
|
43
|
+
return input;
|
|
44
|
+
}
|
|
45
|
+
default: {
|
|
46
|
+
throw new Error(`Unknown reasoning level: ${input}`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
export function createReasoningProviderOptions(input) {
|
|
51
|
+
const { model, reasoningLevel } = input;
|
|
52
|
+
if (reasoningLevel === undefined) {
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
55
|
+
assertReasoningLevelSupported(model.provider, reasoningLevel);
|
|
56
|
+
switch (model.provider) {
|
|
57
|
+
case "openai": {
|
|
58
|
+
return { openai: { reasoningEffort: reasoningLevel } };
|
|
59
|
+
}
|
|
60
|
+
case "google": {
|
|
61
|
+
return {
|
|
62
|
+
google: {
|
|
63
|
+
thinkingConfig: { thinkingLevel: reasoningLevel },
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
case "anthropic": {
|
|
68
|
+
return { anthropic: { effort: reasoningLevel } };
|
|
69
|
+
}
|
|
70
|
+
default: {
|
|
71
|
+
throw new Error("Unknown provider.");
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
function throwUnsupportedReasoningLevel(provider, level) {
|
|
76
|
+
throw new Error(`Reasoning level ${level} is not supported for ${provider} models.`);
|
|
77
|
+
}
|
|
78
|
+
function assertReasoningLevelSupported(provider, level) {
|
|
79
|
+
if (SUPPORTED_REASONING_LEVELS_BY_PROVIDER[provider].has(level)) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
throwUnsupportedReasoningLevel(provider, level);
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=reasoning.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reasoning.js","sourceRoot":"","sources":["../../../../packages/tribunal/src/reasoning.ts"],"names":[],"mappings":"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"}
|