cleanup | logger | prefs, local first :)
This commit is contained in:
parent
54b9c5dd9c
commit
cc60e8cc03
2
packages/kbot/.vscode/launch.json
vendored
2
packages/kbot/.vscode/launch.json
vendored
@ -275,7 +275,7 @@
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"args": [
|
||||
"'send John the latest wheather report for Tarragona, as email'",
|
||||
"'send me the latest wheather report for Tarragona, as email'",
|
||||
"--disable='npm,terminal'",
|
||||
"--include='tests/*.md'"
|
||||
],
|
||||
|
||||
@ -1,8 +1,9 @@
|
||||
import path from 'node:path';
|
||||
import { resolve } from '@polymech/commons';
|
||||
import { winstonLogger, } from '@polymech/ai-tools';
|
||||
import { logger as loggerIntern } from './index.js';
|
||||
import { getLogger } from './index.js';
|
||||
export const collector = (options, client) => {
|
||||
const loggerIntern = getLogger(options);
|
||||
return {
|
||||
//OpenAI
|
||||
onMessage: (message) => {
|
||||
@ -67,4 +68,4 @@ export const collector = (options, client) => {
|
||||
}
|
||||
};
|
||||
};
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbGxlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQUksTUFBTSxXQUFXLENBQUE7QUFJNUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRzNDLE9BQU8sRUFBRSxhQUFhLEdBQUcsTUFBTSxvQkFBb0IsQ0FBQTtBQUVuRCxPQUFPLEVBQUUsTUFBTSxJQUFJLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUluRCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxPQUFxQixFQUFFLE1BQWMsRUFBYyxFQUFFO0lBQzNFLE9BQU87UUFDSCxRQUFRO1FBQ1IsU0FBUyxFQUFFLENBQUMsT0FBbUMsRUFBRSxFQUFFO1lBQy9DLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLHFCQUFxQixDQUFDLENBQUMsQ0FBQTtZQUNyRixNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMscUJBQXFCLEVBQUUsT0FBTyxDQUFDLENBQUE7WUFDNUQsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUN4QixDQUFDO1FBQ0QsVUFBVSxFQUFFLEtBQUssRUFBRSxPQUEyQyxFQUFFLEVBQUU7WUFDOUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFBO1lBQ2hGLE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxzQkFBc0IsRUFBRSxPQUFPLENBQUMsQ0FBQTtZQUM3RCxJQUFJLENBQUM7Z0JBQ0QsTUFBTSxHQUFHLEdBQUcsRUFBRSxHQUFHLE9BQU8sRUFBRSxTQUFT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
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbGxlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQUksTUFBTSxXQUFXLENBQUE7QUFJNUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRzNDLE9BQU8sRUFBRSxhQUFhLEdBQUcsTUFBTSxvQkFBb0IsQ0FBQTtBQUVuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBSXRDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLE9BQXFCLEVBQUUsTUFBYyxFQUFjLEVBQUU7SUFDM0UsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ3ZDLE9BQU87UUFDSCxRQUFRO1FBQ1IsU0FBUyxFQUFFLENBQUMsT0FBbUMsRUFBRSxFQUFFO1lBQy9DLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLHFCQUFxQixDQUFDLENBQUMsQ0FBQTtZQUNyRixNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMscUJBQXFCLEVBQUUsT0FBTyxDQUFDLENBQUE7WUFDNUQsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUN4QixDQUFDO1FBQ0QsVUFBVSxFQUFFLEtBQUssRUFBRSxPQUEyQyxFQUFFLEVBQUU7WUFDOUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFBO1lBQ2hGLE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxzQkFBc0IsRUFBRSxPQUFPLENBQUMsQ0FBQTtZQUM3RCxJQUFJLENBQUM7Z0JBQ0QsTUFB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
|
||||
@ -3,7 +3,6 @@ import { markedTerminal } from 'marked-terminal';
|
||||
import * as path from 'node:path';
|
||||
import { sync as write } from '@polymech/fs/write';
|
||||
import { resolve } from '@polymech/commons';
|
||||
import { logger } from '../index.js';
|
||||
import { dumpAsScript } from '../utils/script.js';
|
||||
import { applyFilters } from '../filters.js';
|
||||
import { variables } from '../variables.js';
|
||||
@ -17,7 +16,7 @@ export const onCompletion = async (result = "", options) => {
|
||||
ROUTER: options.router,
|
||||
}));
|
||||
write(dstPath, result);
|
||||
logger.debug(`Wrote completion result to ${dstPath} : ${options.dst}`);
|
||||
options.logger.debug(`Wrote completion result to ${dstPath} : ${options.dst}`);
|
||||
}
|
||||
else {
|
||||
marked.use(markedTerminal({
|
||||
@ -32,7 +31,7 @@ export const onCompletion = async (result = "", options) => {
|
||||
};
|
||||
export const runCompletion = async (client, params, options) => {
|
||||
if (options.dry) {
|
||||
logger.info('Dry run - skipping API call');
|
||||
options.logger.info('Dry run - skipping API call');
|
||||
return false;
|
||||
}
|
||||
// await client.beta.chat.completions.parse
|
||||
@ -45,4 +44,4 @@ export const runCompletion = async (client, params, options) => {
|
||||
result = await onCompletion(result, options);
|
||||
return result;
|
||||
};
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLWNvbXBsZXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvcnVuLWNvbXBsZXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUMvQixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDaEQsT0FBTyxLQUFLLElBQUksTUFBTSxXQUFXLENBQUE7QUFDakMsT0FBTyxFQUFFLElBQUksSUFBSSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFJM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUNwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBVSxNQUFNLGVBQWUsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFHM0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLEtBQUssRUFBRSxTQUFjLEVBQUUsRUFBRSxPQUFrQixFQUFFLEVBQUU7SUFDekUsTUFBTSxHQUFHLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLE9BQW1CLElBQUksRUFBRSxDQUFDLENBQUE7SUFDaEUsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQy9CLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFO1lBQ3ZELEdBQUcsSUFBSTtZQUNQLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJO1lBQ3JDLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtTQUN2QixDQUFDLENBQUMsQ0FBQTtRQUNILEtBQUssQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDdEIsTUFBTSxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsT0FBTyxNQUFNLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFBO0lBQ3hFLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUM7WUFDeEIsS0FBSyxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUMsQ0FBQTtRQUNILE1BQU0sT0FBTyxHQUFXLE1BQU0sQ0FBQyxNQUFNLENBQVcsQ0FBQztRQUNqRCxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBQ0QsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ3JCLGtCQUFrQjtJQUNsQixPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxLQUFLLEVBQUUsTUFBYyxFQUFFLE1BQVcsRUFBRSxPQUFrQixFQUFFLEVBQUU7SUFDckYsSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDaEIsTUFBTSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO1FBQzFDLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUNELDJDQUEyQztJQUMzQyxNQUFNLFVBQVUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztRQUN0RCxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7UUFDcEIsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO1FBQ3pCLGVBQWUsRUFBRSxPQUFPLENBQUMsTUFBYTtLQUN2QyxDQUFDLENBQUE7SUFDRixJQUFJLE1BQU0sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUE7SUFDbEQsTUFBTSxHQUFHLE1BQU0sWUFBWSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUM1QyxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQSJ9
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLWNvbXBsZXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvcnVuLWNvbXBsZXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUMvQixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDaEQsT0FBTyxLQUFLLElBQUksTUFBTSxXQUFXLENBQUE7QUFDakMsT0FBTyxFQUFFLElBQUksSUFBSSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFHM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQVUsTUFBTSxlQUFlLENBQUE7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRzNDLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxLQUFLLEVBQUUsU0FBYyxFQUFFLEVBQUUsT0FBa0IsRUFBRSxFQUFFO0lBQ3pFLE1BQU0sR0FBRyxZQUFZLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxPQUFtQixJQUFJLEVBQUUsQ0FBQyxDQUFBO0lBQ2hFLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUMvQixJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRTtZQUN2RCxHQUFHLElBQUk7WUFDUCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSTtZQUNyQyxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07U0FDdkIsQ0FBQyxDQUFDLENBQUE7UUFDSCxLQUFLLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFBO1FBQ3RCLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDhCQUE4QixPQUFPLE1BQU0sT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUE7SUFDaEYsQ0FBQztTQUFNLENBQUM7UUFDTixNQUFNLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQztZQUN4QixLQUFLLEVBQUUsS0FBSztTQUNiLENBQUMsQ0FBQyxDQUFBO1FBQ0gsTUFBTSxPQUFPLEdBQVcsTUFBTSxDQUFDLE1BQU0sQ0FBVyxDQUFDO1FBQ2pELE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUFDRCxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDckIsa0JBQWtCO0lBQ2xCLE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEtBQUssRUFBRSxNQUFjLEVBQUUsTUFBVyxFQUFFLE9BQWtCLEVBQUUsRUFBRTtJQUNyRixJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoQixPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO1FBQ2xELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUNELDJDQUEyQztJQUMzQyxNQUFNLFVBQVUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztRQUN0RCxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7UUFDcEIsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO1FBQ3pCLGVBQWUsRUFBRSxPQUFPLENBQUMsTUFBYTtLQUN2QyxDQUFDLENBQUE7SUFDRixJQUFJLE1BQU0sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUE7SUFDbEQsTUFBTSxHQUFHLE1BQU0sWUFBWSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUM1QyxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQSJ9
|
||||
@ -1,5 +1,4 @@
|
||||
import { content } from '../utils/content.js';
|
||||
import { logger } from '../index.js';
|
||||
import { onCompletion } from './run-completion.js';
|
||||
export const runTools = async (client, params, options) => {
|
||||
const sessionId = Date.now().toString();
|
||||
@ -10,7 +9,7 @@ export const runTools = async (client, params, options) => {
|
||||
messages: []
|
||||
};
|
||||
if (options.dry) {
|
||||
logger.info('Dry run - skipping API call');
|
||||
options.logger.info('Dry run - skipping API call');
|
||||
return {
|
||||
result: 'DRY RUN',
|
||||
sessionMessages,
|
||||
@ -42,7 +41,7 @@ export const runTools = async (client, params, options) => {
|
||||
.on('content', options.collector.onContent);
|
||||
}
|
||||
catch (e) {
|
||||
logger.trace(e);
|
||||
options.logger.trace(e);
|
||||
}
|
||||
let result = content(runner);
|
||||
try {
|
||||
@ -50,13 +49,13 @@ export const runTools = async (client, params, options) => {
|
||||
}
|
||||
catch (error) {
|
||||
if (error.message.includes("(reading 'map')")) {
|
||||
logger.error('Failed to complete runner: credits :)', error.message, error.message, error);
|
||||
options.logger.error('Failed to complete runner: credits :)', error.message, error.message, error);
|
||||
return;
|
||||
}
|
||||
logger.error('Failed to complete runner:', error.message, error.issues);
|
||||
options.logger.error('Failed to complete runner:', error.message, error.issues);
|
||||
return;
|
||||
}
|
||||
const ret = content(result);
|
||||
return await onCompletion(ret, options);
|
||||
};
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLXRvb2xzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3J1bi10b29scy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDN0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUNwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFFbEQsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLEtBQUssRUFBRSxNQUFjLEVBQUUsTUFBVyxFQUFFLE9BQWtCLEVBQUUsRUFBRTtJQUNoRixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDdkMsTUFBTSxlQUFlLEdBQUc7UUFDdEIsU0FBUztRQUNULE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtRQUN0QixTQUFTLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUU7UUFDbkMsUUFBUSxFQUFFLEVBQUU7S0FDYixDQUFBO0lBQ0QsSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDaEIsTUFBTSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO1FBQzFDLE9BQU87WUFDTCxNQUFNLEVBQUUsU0FBUztZQUNqQixlQUFlO1lBQ2YsVUFBVSxFQUFFLEVBQUU7WUFDZCxTQUFTLEVBQUUsRUFBRTtTQUNkLENBQUE7SUFDSCxDQUFDO0lBQ0QsTUFBTSxVQUFVLEdBQUcsQ0FBQyxPQUFZLEVBQUUsU0FBaUIsRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUM3RCxPQUFPO1lBQ0wsR0FBRyxPQUFPO1lBQ1YsU0FBUyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFO1lBQ25DLFNBQVM7WUFDVCxNQUFNO1NBQ1AsQ0FBQTtJQUNILENBQUMsQ0FBQTtJQUNELElBQUksTUFBTSxHQUFHLElBQUksQ0FBQTtJQUNqQixJQUFJLENBQUM7UUFDSCxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLE1BQTZDLENBQUM7YUFDaEcsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLE9BQW1DLEVBQUUsRUFBRTtZQUNwRCxPQUFPLENBQUMsU0FBd0IsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7UUFDN0YsQ0FBQyxDQUFDO2FBQ0QsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLElBQXdDLEVBQUUsRUFBRTtZQUMvRCxPQUFRLE9BQU8sQ0FBQyxTQUF3QixDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtRQUNsRyxDQUFDLENBQUM7YUFDRCxFQUFFLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUM3QixPQUFPLENBQUMsU0FBd0IsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUMzRCxDQUFDLENBQUM7YUFDRCxFQUFFLENBQUMsZ0JBQWdCLEVBQUcsT0FBTyxDQUFDLFNBQXdCLENBQUMsZ0JBQWdCLENBQUM7YUFDeEUsRUFBRSxDQUFDLFNBQVMsRUFBRyxPQUFPLENBQUMsU0FBd0IsQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUMvRCxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDakIsQ0FBQztJQUVELElBQUksTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUM1QixJQUFJLENBQUM7UUFDSCxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtJQUM3QyxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO1lBQzlDLE1BQU0sQ0FBQyxLQUFLLENBQUMsdUNBQXVDLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFBO1lBQzFGLE9BQU07UUFDUixDQUFDO1FBQ0QsTUFBTSxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUN2RSxPQUFNO0lBQ1IsQ0FBQztJQUNELE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUMzQixPQUFPLE1BQU0sWUFBWSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQTtBQUN6QyxDQUFDLENBQUEifQ==
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLXRvb2xzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3J1bi10b29scy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRWxELE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxLQUFLLEVBQUUsTUFBYyxFQUFFLE1BQVcsRUFBRSxPQUFrQixFQUFFLEVBQUU7SUFDaEYsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ3ZDLE1BQU0sZUFBZSxHQUFHO1FBQ3RCLFNBQVM7UUFDVCxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07UUFDdEIsU0FBUyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFO1FBQ25DLFFBQVEsRUFBRSxFQUFFO0tBQ2IsQ0FBQTtJQUNELElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDZCQUE2QixDQUFDLENBQUE7UUFDbEQsT0FBTztZQUNMLE1BQU0sRUFBRSxTQUFTO1lBQ2pCLGVBQWU7WUFDZixVQUFVLEVBQUUsRUFBRTtZQUNkLFNBQVMsRUFBRSxFQUFFO1NBQ2QsQ0FBQTtJQUNILENBQUM7SUFDRCxNQUFNLFVBQVUsR0FBRyxDQUFDLE9BQVksRUFBRSxTQUFpQixFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQzdELE9BQU87WUFDTCxHQUFHLE9BQU87WUFDVixTQUFTLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUU7WUFDbkMsU0FBUztZQUNULE1BQU07U0FDUCxDQUFBO0lBQ0gsQ0FBQyxDQUFBO0lBQ0QsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFBO0lBQ2pCLElBQUksQ0FBQztRQUNILE1BQU0sR0FBRyxNQUFNLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsTUFBNkMsQ0FBQzthQUNoRyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsT0FBbUMsRUFBRSxFQUFFO1lBQ3BELE9BQU8sQ0FBQyxTQUF3QixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtRQUM3RixDQUFDLENBQUM7YUFDRCxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUMsSUFBd0MsRUFBRSxFQUFFO1lBQy9ELE9BQVEsT0FBTyxDQUFDLFNBQXdCLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFBO1FBQ2xHLENBQUMsQ0FBQzthQUNELEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzdCLE9BQU8sQ0FBQyxTQUF3QixDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzNELENBQUMsQ0FBQzthQUNELEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRyxPQUFPLENBQUMsU0FBd0IsQ0FBQyxnQkFBZ0IsQ0FBQzthQUN4RSxFQUFFLENBQUMsU0FBUyxFQUFHLE9BQU8sQ0FBQyxTQUF3QixDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQy9ELENBQUM7SUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1gsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDekIsQ0FBQztJQUVELElBQUksTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUM1QixJQUFJLENBQUM7UUFDSCxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtJQUM3QyxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO1lBQzlDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHVDQUF1QyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQTtZQUNsRyxPQUFNO1FBQ1IsQ0FBQztRQUNELE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDRCQUE0QixFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQy9FLE9BQU07SUFDUixDQUFDO0lBQ0QsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzNCLE9BQU8sTUFBTSxZQUFZLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0FBQ3pDLENBQUMsQ0FBQSJ9
|
||||
File diff suppressed because one or more lines are too long
2
packages/kbot/dist-in/index.d.ts
vendored
2
packages/kbot/dist-in/index.d.ts
vendored
@ -1,5 +1,7 @@
|
||||
import { Logger, ILogObj } from 'tslog';
|
||||
import { IKBotTask } from '@polymech/ai-tools';
|
||||
export declare const logger: Logger<ILogObj>;
|
||||
export declare const getLogger: (options: IKBotTask) => Logger<ILogObj>;
|
||||
export { run } from './commands/run.js';
|
||||
export declare const module_root: () => string;
|
||||
export declare const assistant_supported: Record<string, string>;
|
||||
|
||||
@ -1,10 +1,44 @@
|
||||
import { platform } from 'node:process';
|
||||
import path from 'node:path';
|
||||
import { Logger } from 'tslog';
|
||||
const isWindows = platform === 'win32';
|
||||
import { get_var } from '@polymech/commons';
|
||||
import { MODULE_NAME } from './constants.js';
|
||||
import { createLogger } from '@polymech/log';
|
||||
export const logger = createLogger('llm-tools');
|
||||
let _logger = logger;
|
||||
export const getLogger = (options) => {
|
||||
if (_logger) {
|
||||
return _logger;
|
||||
}
|
||||
const logLevelMap = {
|
||||
'silly': 0,
|
||||
'trace': 1,
|
||||
'debug': 2,
|
||||
'info': 3,
|
||||
'warn': 4,
|
||||
'error': 5,
|
||||
'fatal': 6
|
||||
};
|
||||
let minLevel = logLevelMap['info'];
|
||||
if (options.logLevel) {
|
||||
if (typeof options.logLevel === 'string') {
|
||||
const levelStr = options.logLevel;
|
||||
minLevel = logLevelMap[levelStr.toLowerCase()] || logLevelMap['info'];
|
||||
}
|
||||
else {
|
||||
minLevel = options.logLevel;
|
||||
}
|
||||
}
|
||||
_logger = new Logger({
|
||||
name: MODULE_NAME,
|
||||
minLevel,
|
||||
hideLogPositionForProduction: true,
|
||||
maskPlaceholder: '***',
|
||||
prettyLogTemplate: "{{logLevelName}}\t[{{filePathWithLine}}{{name}}]\t",
|
||||
});
|
||||
return _logger;
|
||||
};
|
||||
export { run } from './commands/run.js';
|
||||
export const module_root = () => path.resolve(path.join(get_var(isWindows ? 'HOMEPATH' : 'HOME'), `.${MODULE_NAME}`));
|
||||
export const assistant_supported = {
|
||||
@ -36,4 +70,4 @@ export * from './zod_schema.js';
|
||||
export { E_OPENAI_MODEL } from './models/cache/openai-models.js';
|
||||
export { E_OPENROUTER_MODEL } from './models/cache/openrouter-models.js';
|
||||
export { E_OPENROUTER_MODEL_FREE } from './models/cache/openrouter-models-free.js';
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUN2QyxPQUFPLElBQUksTUFBTSxXQUFXLENBQUE7QUFFNUIsTUFBTSxTQUFTLEdBQUcsUUFBUSxLQUFLLE9BQU8sQ0FBQTtBQUV0QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDNUMsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxXQUFXLENBQStCLENBQUE7QUFDN0UsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3ZDLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUVySCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBMkI7SUFDekQsSUFBSSxFQUFFLFVBQVU7SUFDaEIsTUFBTSxFQUFFLFlBQVk7SUFDcEIsS0FBSyxFQUFFLGVBQWU7SUFDdEIsTUFBTSxFQUFFLFVBQVU7SUFDbEIsTUFBTSxFQUFFLG9CQUFvQjtJQUM1QixPQUFPLEVBQUUseUVBQXlFO0lBQ2xGLEtBQUssRUFBRSxlQUFlO0lBQ3RCLE9BQU8sRUFBRSxXQUFXO0lBQ3BCLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLEtBQUssRUFBRSxpQkFBaUI7SUFDeEIsT0FBTyxFQUFFLGtCQUFrQjtJQUMzQixLQUFLLEVBQUUsZUFBZTtJQUN0QixNQUFNLEVBQUUsaUJBQWlCO0lBQ3pCLE1BQU0sRUFBRSxZQUFZO0lBQ3BCLE9BQU8sRUFBRSwyRUFBMkU7SUFDcEYsS0FBSyxFQUFFLGVBQWU7SUFDdEIsS0FBSyxFQUFFLGFBQWE7SUFDcEIsS0FBSyxFQUFFLGtCQUFrQjtJQUN6QixNQUFNLEVBQUUsWUFBWTtJQUNwQixLQUFLLEVBQUUsd0JBQXdCO0lBQy9CLE1BQU0sRUFBRSxZQUFZO0NBQ3JCLENBQUE7QUFDRCxjQUFjLFlBQVksQ0FBQTtBQUMxQixjQUFjLGdCQUFnQixDQUFBO0FBQzlCLGNBQWMsaUJBQWlCLENBQUE7QUFFL0IsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFBIn0=
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUN2QyxPQUFPLElBQUksTUFBTSxXQUFXLENBQUE7QUFDNUIsT0FBTyxFQUFFLE1BQU0sRUFBVyxNQUFNLE9BQU8sQ0FBQTtBQUN2QyxNQUFNLFNBQVMsR0FBRyxRQUFRLEtBQUssT0FBTyxDQUFBO0FBRXRDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM1QyxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLFdBQVcsQ0FBK0IsQ0FBQTtBQUU3RSxJQUFJLE9BQU8sR0FBb0IsTUFBTSxDQUFBO0FBRXJDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLE9BQWtCLEVBQW1CLEVBQUU7SUFDL0QsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUNaLE9BQU8sT0FBTyxDQUFBO0lBQ2hCLENBQUM7SUFDRCxNQUFNLFdBQVcsR0FBMkI7UUFDMUMsT0FBTyxFQUFFLENBQUM7UUFDVixPQUFPLEVBQUUsQ0FBQztRQUNWLE9BQU8sRUFBRSxDQUFDO1FBQ1YsTUFBTSxFQUFFLENBQUM7UUFDVCxNQUFNLEVBQUUsQ0FBQztRQUNULE9BQU8sRUFBRSxDQUFDO1FBQ1YsT0FBTyxFQUFFLENBQUM7S0FDWCxDQUFBO0lBRUQsSUFBSSxRQUFRLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ2xDLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3JCLElBQUksT0FBTyxPQUFPLENBQUMsUUFBUSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFrQixDQUFBO1lBQzNDLFFBQVEsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ3ZFLENBQUM7YUFBTSxDQUFDO1lBQ04sUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUE7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLEdBQUcsSUFBSSxNQUFNLENBQVU7UUFDNUIsSUFBSSxFQUFFLFdBQVc7UUFDakIsUUFBUTtRQUNSLDRCQUE0QixFQUFFLElBQUk7UUFDbEMsZUFBZSxFQUFFLEtBQUs7UUFDdEIsaUJBQWlCLEVBQUUsb0RBQW9EO0tBQ3hFLENBQUMsQ0FBQTtJQUNGLE9BQU8sT0FBTyxDQUFBO0FBQ2hCLENBQUMsQ0FBQTtBQUVELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN2QyxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUE7QUFFckgsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQTJCO0lBQ3pELElBQUksRUFBRSxVQUFVO0lBQ2hCLE1BQU0sRUFBRSxZQUFZO0lBQ3BCLEtBQUssRUFBRSxlQUFlO0lBQ3RCLE1BQU0sRUFBRSxVQUFVO0lBQ2xCLE1BQU0sRUFBRSxvQkFBb0I7SUFDNUIsT0FBTyxFQUFFLHlFQUF5RTtJQUNsRixLQUFLLEVBQUUsZUFBZTtJQUN0QixPQUFPLEVBQUUsV0FBVztJQUNwQixPQUFPLEVBQUUsYUFBYTtJQUN0QixLQUFLLEVBQUUsaUJBQWlCO0lBQ3hCLE9BQU8sRUFBRSxrQkFBa0I7SUFDM0IsS0FBSyxFQUFFLGVBQWU7SUFDdEIsTUFBTSxFQUFFLGlCQUFpQjtJQUN6QixNQUFNLEVBQUUsWUFBWTtJQUNwQixPQUFPLEVBQUUsMkVBQTJFO0lBQ3BGLEtBQUssRUFBRSxlQUFlO0lBQ3RCLEtBQUssRUFBRSxhQUFhO0lBQ3BCLEtBQUssRUFBRSxrQkFBa0I7SUFDekIsTUFBTSxFQUFFLFlBQVk7SUFDcEIsS0FBSyxFQUFFLHdCQUF3QjtJQUMvQixNQUFNLEVBQUUsWUFBWTtDQUNyQixDQUFBO0FBQ0QsY0FBYyxZQUFZLENBQUE7QUFDMUIsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLGlCQUFpQixDQUFBO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN4RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQSJ9
|
||||
@ -13,9 +13,11 @@ export const prompt = async (opts) => {
|
||||
};
|
||||
};
|
||||
export const preferences = async (opts) => {
|
||||
let preferencesPath = path.resolve(resolve(opts.preferences, false, env_vars()));
|
||||
// First try local preferences
|
||||
let preferencesPath = path.resolve(path.join(process.cwd(), PREFERENCES_FILE_NAME));
|
||||
if (!exists(preferencesPath)) {
|
||||
preferencesPath = path.resolve(path.join(process.cwd(), PREFERENCES_FILE_NAME));
|
||||
// Fall back to specified preferences path if local file doesn't exist
|
||||
preferencesPath = path.resolve(resolve(opts.preferences, false, env_vars()));
|
||||
}
|
||||
const preferences = read(preferencesPath, 'string');
|
||||
return {
|
||||
@ -23,4 +25,4 @@ export const preferences = async (opts) => {
|
||||
content: `USER Preferences : ${preferences}` || ''
|
||||
};
|
||||
};
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbXB0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Byb21wdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsSUFBSSxJQUFJLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ2hELE9BQU8sRUFBRSxJQUFJLElBQUksTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDcEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQzNDLE9BQU8sS0FBSyxJQUFJLE1BQU0sV0FBVyxDQUFBO0FBRWpDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFdEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLEtBQUssRUFBRSxJQUFlLEVBQW1ELEVBQUU7SUFDN0YsTUFBTSxLQUFLLEdBQUcsTUFBTSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDdEMsT0FBTztRQUNILElBQUksRUFBRSxNQUFNO1FBQ1osT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO0tBQ3ZCLENBQUE7QUFDTCxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsS0FBSyxFQUFFLElBQWUsRUFBbUQsRUFBRTtJQUNsRyxJQUFJLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDaEYsSUFBRyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQzFCLGVBQWUsR0FBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFHLHFCQUFxQixDQUFDLENBQUMsQ0FBQTtJQUNyRixDQUFDO0lBQ0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxRQUFRLENBQVcsQ0FBQTtJQUM3RCxPQUFPO1FBQ0gsSUFBSSxFQUFFLE1BQU07UUFDWixPQUFPLEVBQUUsc0JBQXNCLFdBQVcsRUFBRSxJQUFJLEVBQUU7S0FDckQsQ0FBQTtBQUNMLENBQUMsQ0FBQSJ9
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbXB0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Byb21wdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsSUFBSSxJQUFJLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ2hELE9BQU8sRUFBRSxJQUFJLElBQUksTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDcEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQzNDLE9BQU8sS0FBSyxJQUFJLE1BQU0sV0FBVyxDQUFBO0FBRWpDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFdEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLEtBQUssRUFBRSxJQUFlLEVBQW1ELEVBQUU7SUFDN0YsTUFBTSxLQUFLLEdBQUcsTUFBTSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDdEMsT0FBTztRQUNILElBQUksRUFBRSxNQUFNO1FBQ1osT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO0tBQ3ZCLENBQUE7QUFDTCxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsS0FBSyxFQUFFLElBQWUsRUFBbUQsRUFBRTtJQUNsRyw4QkFBOEI7SUFDOUIsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDLENBQUE7SUFDbkYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQzNCLHNFQUFzRTtRQUN0RSxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ2hGLENBQUM7SUFDRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLFFBQVEsQ0FBVyxDQUFBO0lBQzdELE9BQU87UUFDSCxJQUFJLEVBQUUsTUFBTTtRQUNaLE9BQU8sRUFBRSxzQkFBc0IsV0FBVyxFQUFFLElBQUksRUFBRTtLQUNyRCxDQUFBO0FBQ0wsQ0FBQyxDQUFBIn0=
|
||||
@ -7,11 +7,12 @@ import { RunnableFunctionWithParse } from 'openai/lib/RunnableFunction'
|
||||
|
||||
import { winstonLogger, } from '@polymech/ai-tools'
|
||||
import { IKBotOptions } from './zod_types.js'
|
||||
import { logger as loggerIntern } from './index.js'
|
||||
import { getLogger } from './index.js'
|
||||
|
||||
import { ChatCompletion, ChatCompletionMessage, ChatCompletionMessageParam } from 'openai/resources/index.mjs'
|
||||
|
||||
export const collector = (options: IKBotOptions, client: OpenAI): ICollector => {
|
||||
const loggerIntern = getLogger(options)
|
||||
return {
|
||||
//OpenAI
|
||||
onMessage: (message: ChatCompletionMessageParam) => {
|
||||
|
||||
@ -1,5 +0,0 @@
|
||||
import * as path from 'node:path'
|
||||
import { sync as read } from '@polymech/fs/read'
|
||||
import { sync as exists } from '@polymech/fs/exists'
|
||||
import { Logger } from 'tslog'
|
||||
import { logger } from '../'
|
||||
@ -4,10 +4,8 @@ import { markedTerminal } from 'marked-terminal'
|
||||
import * as path from 'node:path'
|
||||
import { sync as write } from '@polymech/fs/write'
|
||||
import { resolve } from '@polymech/commons'
|
||||
|
||||
import { IKBotTask } from '@polymech/ai-tools'
|
||||
|
||||
import { logger } from '../index.js'
|
||||
import { dumpAsScript } from '../utils/script.js'
|
||||
import { applyFilters, Filter } from '../filters.js'
|
||||
import { variables } from '../variables.js'
|
||||
@ -23,7 +21,7 @@ export const onCompletion = async (result: any = "", options: IKBotTask) => {
|
||||
ROUTER: options.router,
|
||||
}))
|
||||
write(dstPath, result)
|
||||
logger.debug(`Wrote completion result to ${dstPath} : ${options.dst}`)
|
||||
options.logger.debug(`Wrote completion result to ${dstPath} : ${options.dst}`)
|
||||
} else {
|
||||
marked.use(markedTerminal({
|
||||
emoji: false,
|
||||
@ -38,7 +36,7 @@ export const onCompletion = async (result: any = "", options: IKBotTask) => {
|
||||
|
||||
export const runCompletion = async (client: OpenAI, params: any, options: IKBotTask) => {
|
||||
if (options.dry) {
|
||||
logger.info('Dry run - skipping API call')
|
||||
options.logger.info('Dry run - skipping API call')
|
||||
return false
|
||||
}
|
||||
// await client.beta.chat.completions.parse
|
||||
|
||||
@ -1,30 +0,0 @@
|
||||
import { globSync } from 'glob'
|
||||
import * as path from 'node:path'
|
||||
import { forward_slash } from '@polymech/commons'
|
||||
import { logger } from '../'
|
||||
import { IKBotTask } from '@polymech/ai-tools'
|
||||
|
||||
export const runEach = async (opts: IKBotTask, processRun: (args: IKBotTask) => Promise<any>) => {
|
||||
const ret = []
|
||||
|
||||
if (opts.each) {
|
||||
const matches = globSync(opts.each, {
|
||||
cwd: path.resolve(opts.path),
|
||||
absolute: false
|
||||
})
|
||||
if(matches.length === 0) {
|
||||
logger.warn(`No files matching pattern ${opts.each} found in ${opts.path}`)
|
||||
return ret
|
||||
}
|
||||
logger.info(`Processing ${matches.length} files matching pattern ${opts.each}...`)
|
||||
for (const file of matches) {
|
||||
logger.info(`Processing ${file}...`)
|
||||
const fileOpts = { ...opts }
|
||||
fileOpts.include = [ forward_slash(file)]
|
||||
ret.push(await processRun(fileOpts))
|
||||
}
|
||||
} else {
|
||||
ret.push(await processRun(opts))
|
||||
}
|
||||
return ret
|
||||
}
|
||||
@ -5,7 +5,6 @@ import { ChatCompletionToolRunnerParams } from 'openai/lib/ChatCompletionRunner'
|
||||
import { IKBotTask, ICollector } from '@polymech/ai-tools'
|
||||
|
||||
import { content } from '../utils/content.js'
|
||||
import { logger } from '../index.js'
|
||||
import { onCompletion } from './run-completion.js'
|
||||
|
||||
export const runTools = async (client: OpenAI, params: any, options: IKBotTask) => {
|
||||
@ -17,7 +16,7 @@ export const runTools = async (client: OpenAI, params: any, options: IKBotTask)
|
||||
messages: []
|
||||
}
|
||||
if (options.dry) {
|
||||
logger.info('Dry run - skipping API call')
|
||||
options.logger.info('Dry run - skipping API call')
|
||||
return {
|
||||
result: 'DRY RUN',
|
||||
sessionMessages,
|
||||
@ -48,7 +47,7 @@ export const runTools = async (client: OpenAI, params: any, options: IKBotTask)
|
||||
.on('chatCompletion', (options.collector as ICollector).onChatCompletion)
|
||||
.on('content', (options.collector as ICollector).onContent)
|
||||
} catch (e) {
|
||||
logger.trace(e)
|
||||
options.logger.trace(e)
|
||||
}
|
||||
|
||||
let result = content(runner)
|
||||
@ -56,10 +55,10 @@ export const runTools = async (client: OpenAI, params: any, options: IKBotTask)
|
||||
result = await runner.finalChatCompletion()
|
||||
} catch (error) {
|
||||
if (error.message.includes("(reading 'map')")) {
|
||||
logger.error('Failed to complete runner: credits :)', error.message, error.message, error)
|
||||
options.logger.error('Failed to complete runner: credits :)', error.message, error.message, error)
|
||||
return
|
||||
}
|
||||
logger.error('Failed to complete runner:', error.message, error.issues)
|
||||
options.logger.error('Failed to complete runner:', error.message, error.issues)
|
||||
return
|
||||
}
|
||||
const ret = content(result)
|
||||
|
||||
@ -10,10 +10,7 @@ import { ChatCompletionToolRunnerParams } from 'openai/lib/ChatCompletionRunner'
|
||||
import { ChatCompletionMessageParam } from 'openai/resources/index.mjs'
|
||||
|
||||
import { IKBotTask } from '@polymech/ai-tools'
|
||||
|
||||
import { createLogger } from '@polymech/log'
|
||||
import { Logger, ILogObj } from 'tslog'
|
||||
|
||||
import { createClient } from '../client.js'
|
||||
import { OptionsSchema } from '../zod_schema.js'
|
||||
import { get } from '../source.js'
|
||||
@ -29,12 +26,14 @@ import { runCompletion } from './run-completion.js'
|
||||
import { runTools } from './run-tools.js'
|
||||
import { runAssistant } from './run-assistant.js'
|
||||
import { all } from '../models/index.js'
|
||||
import { getLogger } from '../index.js'
|
||||
|
||||
export const processRun = async (opts: IKBotTask) => {
|
||||
|
||||
let options: IKBotTask = null
|
||||
const logger = new Logger<ILogObj>({
|
||||
minLevel: opts.logLevel
|
||||
})
|
||||
const logger = getLogger(opts)
|
||||
opts.logger = logger
|
||||
|
||||
const target = path.resolve(opts.output || opts.path)
|
||||
if (!exists(target)) {
|
||||
dir(target)
|
||||
|
||||
@ -5,9 +5,46 @@ const isWindows = platform === 'win32'
|
||||
|
||||
import { get_var } from '@polymech/commons'
|
||||
import { MODULE_NAME } from './constants.js'
|
||||
import { IKBotTask } from '@polymech/ai-tools'
|
||||
|
||||
import { createLogger } from '@polymech/log'
|
||||
export const logger = createLogger('llm-tools') as unknown as Logger<ILogObj>
|
||||
|
||||
let _logger: Logger<ILogObj> = logger
|
||||
|
||||
export const getLogger = (options: IKBotTask): Logger<ILogObj> => {
|
||||
if (_logger) {
|
||||
return _logger
|
||||
}
|
||||
const logLevelMap: Record<string, number> = {
|
||||
'silly': 0,
|
||||
'trace': 1,
|
||||
'debug': 2,
|
||||
'info': 3,
|
||||
'warn': 4,
|
||||
'error': 5,
|
||||
'fatal': 6
|
||||
}
|
||||
|
||||
let minLevel = logLevelMap['info']
|
||||
if (options.logLevel) {
|
||||
if (typeof options.logLevel === 'string') {
|
||||
const levelStr = options.logLevel as string
|
||||
minLevel = logLevelMap[levelStr.toLowerCase()] || logLevelMap['info']
|
||||
} else {
|
||||
minLevel = options.logLevel
|
||||
}
|
||||
}
|
||||
_logger = new Logger<ILogObj>({
|
||||
name: MODULE_NAME,
|
||||
minLevel,
|
||||
hideLogPositionForProduction: true,
|
||||
maskPlaceholder: '***',
|
||||
prettyLogTemplate: "{{logLevelName}}\t[{{filePathWithLine}}{{name}}]\t",
|
||||
})
|
||||
return _logger
|
||||
}
|
||||
|
||||
export { run } from './commands/run.js'
|
||||
export const module_root = () => path.resolve(path.join(get_var(isWindows ? 'HOMEPATH' : 'HOME'), `.${MODULE_NAME}`))
|
||||
|
||||
|
||||
@ -20,9 +20,11 @@ export const prompt = async (opts: IKBotTask): Promise<ChatCompletionMessagePara
|
||||
}
|
||||
|
||||
export const preferences = async (opts: IKBotTask): Promise<ChatCompletionMessageParam | undefined> => {
|
||||
let preferencesPath = path.resolve(resolve(opts.preferences, false, env_vars()))
|
||||
if(!exists(preferencesPath)) {
|
||||
preferencesPath = path.resolve(path.join(process.cwd(), PREFERENCES_FILE_NAME))
|
||||
// First try local preferences
|
||||
let preferencesPath = path.resolve(path.join(process.cwd(), PREFERENCES_FILE_NAME))
|
||||
if (!exists(preferencesPath)) {
|
||||
// Fall back to specified preferences path if local file doesn't exist
|
||||
preferencesPath = path.resolve(resolve(opts.preferences, false, env_vars()))
|
||||
}
|
||||
const preferences = read(preferencesPath, 'string') as string
|
||||
return {
|
||||
|
||||
@ -1,22 +1,45 @@
|
||||
Here's a comprehensive list of hardware/software resources for cutting HDPE sheets with X-Carve CNC, formatted to your preferences:
|
||||
To cut HDPE sheets using an X-Carve CNC, you'll need the following hardware and software resources:
|
||||
|
||||
## Hardware Requirements
|
||||
- **X-Carve CNC Machine** with vacuum table or clamps
|
||||
- **1/8" (3.175 mm) flat flute cutting bit** - Ideal for plastic cutting[1]
|
||||
- **CNC Clamps** - From X-Carve kit for material securing[1]
|
||||
- **HDPE Sheet** - Measure thickness carefully (typical: 3-6mm)
|
||||
- **Safety Equipment** - Goggles, hearing protection
|
||||
---
|
||||
|
||||
## Software Stack
|
||||
- **Easel CAM Software** (Free) - X-Carve integration with HDPE material profile[1][2]
|
||||
- **Inkscape** (Open-source) - Vector design creation/modification[2]
|
||||
- **The Noun Project** - Source for ready-made SVG vectors ([nounproject.com][3])
|
||||
## **Hardware Resources**
|
||||
1. **X-Carve CNC Machine**
|
||||
- Core tool for milling/cutting operations, compatible with HDPE sheets [1][7].
|
||||
- Optional upgrades available for extended bed sizes (e.g., 1800mm rail extensions) [4].
|
||||
|
||||
## Tutorial Resources
|
||||
- [Complete Spanish video guide with subtitles](https://www.youtube.com/watch?v=4LrrFz802To) [1]
|
||||
- [Alternative manual routing techniques](https://youtu.be/gxkcffQD3eQ) [4]
|
||||
2. **CNC Clamping System**
|
||||
- Secures HDPE sheets using X-Carve clamps to prevent movement during cutting [1][7].
|
||||
|
||||
Addendum: Always verify machine calibration and perform test cuts on scrap material before final operation.
|
||||
3. **1/8" Flat Flute Cutting Bits**
|
||||
- Recommended for clean HDPE cuts (shank diameter: 3.175mm, cutting diameter: 3.175mm) [1][5][7].
|
||||
- Alternative options: Use manual routers/jigsaws with coarse-tooth blades for basic cuts [6].
|
||||
|
||||
kind regards,
|
||||
Guenter
|
||||
4. **HDPE Plastic Sheets**
|
||||
- Ideal thickness depends on project requirements; ensure sheets are measured (height, width, thickness) before cutting [1][7].
|
||||
|
||||
5. **Post-Processing Tools**
|
||||
- Sandpaper/files for smoothing edges after CNC cutting.
|
||||
|
||||
---
|
||||
|
||||
## **Software Resources**
|
||||
1. **Easel (CAM Software)**
|
||||
- Free cloud-based tool for designing, simulating cuts, and generating toolpaths [1][2][7][8].
|
||||
- Key features:
|
||||
- Built-in HDPE material profile [1][7]
|
||||
- SVG/vector file imports [2][7]
|
||||
- 3D machining and automated toolpath generation (with Easel Pro) [2][8]
|
||||
|
||||
2. **Inkscape (Vector Design)**
|
||||
- Open-source software for creating/editing SVG files [1][3][7].
|
||||
- Used with **Path > Trace Bitmap** to convert raster images into CNC-ready vectors [3].
|
||||
|
||||
3. **The Noun Project**
|
||||
- Source for open-source SVG designs compatible with Easel [1][7].
|
||||
|
||||
---
|
||||
|
||||
## **Tutorial Resources**
|
||||
- **Spanish Video Guide**: Step-by-step process with subtitles [YouTube](https://www.youtube.com/watch?v=4LrrFz802To) [1][7].
|
||||
- **Alternative Methods**: Manual cutting demo [YouTube](https://youtu.be/gxkcffQD3eQ) [1].
|
||||
- **Community Support**: Share results on [Precious Plastic forums](https://community.preciousplastic.com) [1][7].
|
||||
@ -24,13 +24,13 @@ describe('Math Operations', () => {
|
||||
it.each(models)('should solve quadratic equation with model %s', async (modelName) => {
|
||||
const result = await runTest(
|
||||
'Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.',
|
||||
'-3,-2',
|
||||
'-2,-3',
|
||||
'quadratic',
|
||||
modelName,
|
||||
TEST_LOG_PATH
|
||||
)
|
||||
testResults.push(result)
|
||||
expect(result.result[0]?.trim()?.toLowerCase()).toEqual('-3,-2')
|
||||
expect(result.result[0]?.trim()?.toLowerCase()).toEqual('-2,-3')
|
||||
}, { timeout: TEST_TIMEOUT })
|
||||
|
||||
it.each(models)('should calculate factorial with model %s', async (modelName) => {
|
||||
|
||||
@ -6403,6 +6403,779 @@
|
||||
"passed": true,
|
||||
"duration": 760,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-3,-2",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:08:37.779Z",
|
||||
"passed": false,
|
||||
"duration": 1244,
|
||||
"reason": "Expected -3,-2, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"The solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.\n\n\\boxed{-2}, \\boxed{-3}"
|
||||
],
|
||||
"expected": "-3,-2",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:08:48.803Z",
|
||||
"passed": false,
|
||||
"duration": 11013,
|
||||
"reason": "Expected -3,-2, but got the solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.\n\n\\boxed{-2}, \\boxed{-3}",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-3,-2",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:08:50.291Z",
|
||||
"passed": false,
|
||||
"duration": 1482,
|
||||
"reason": "Expected -3,-2, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:08:51.033Z",
|
||||
"passed": true,
|
||||
"duration": 736,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:08:55.877Z",
|
||||
"passed": true,
|
||||
"duration": 4838,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:08:56.613Z",
|
||||
"passed": true,
|
||||
"duration": 730,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:08:57.421Z",
|
||||
"passed": true,
|
||||
"duration": 802,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"The 6th number in the Fibonacci sequence is 5. \n\n5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:09:04.449Z",
|
||||
"passed": false,
|
||||
"duration": 7023,
|
||||
"reason": "Expected 8, but got the 6th number in the fibonacci sequence is 5. \n\n5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:09:05.286Z",
|
||||
"passed": false,
|
||||
"duration": 831,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:09:06.233Z",
|
||||
"passed": true,
|
||||
"duration": 940,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:09:08.662Z",
|
||||
"passed": true,
|
||||
"duration": 2423,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:09:09.441Z",
|
||||
"passed": true,
|
||||
"duration": 773,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:09:10.298Z",
|
||||
"passed": true,
|
||||
"duration": 851,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:09:11.870Z",
|
||||
"passed": true,
|
||||
"duration": 1566,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:09:12.628Z",
|
||||
"passed": true,
|
||||
"duration": 753,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:07.251Z",
|
||||
"passed": false,
|
||||
"duration": 1329,
|
||||
"reason": "Expected -2,-3, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:14.807Z",
|
||||
"passed": false,
|
||||
"duration": 7547,
|
||||
"reason": "Expected -2,-3, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:15.551Z",
|
||||
"passed": false,
|
||||
"duration": 738,
|
||||
"reason": "Expected -2,-3, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:16.305Z",
|
||||
"passed": true,
|
||||
"duration": 749,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:21.413Z",
|
||||
"passed": true,
|
||||
"duration": 5102,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:22.690Z",
|
||||
"passed": true,
|
||||
"duration": 1271,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:23.404Z",
|
||||
"passed": true,
|
||||
"duration": 707,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:32.032Z",
|
||||
"passed": false,
|
||||
"duration": 8621,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:33.022Z",
|
||||
"passed": false,
|
||||
"duration": 983,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:33.875Z",
|
||||
"passed": true,
|
||||
"duration": 845,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:37.488Z",
|
||||
"passed": true,
|
||||
"duration": 3608,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:38.246Z",
|
||||
"passed": true,
|
||||
"duration": 753,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:39.169Z",
|
||||
"passed": true,
|
||||
"duration": 918,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:43.117Z",
|
||||
"passed": true,
|
||||
"duration": 3943,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:44.077Z",
|
||||
"passed": true,
|
||||
"duration": 954,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-3, -2"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:09:38.709Z",
|
||||
"passed": false,
|
||||
"duration": 1685,
|
||||
"reason": "Expected -2,-3, but got -3, -2",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"The solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.\n\nSpecific steps:\n\n1. **Identify coefficients**: a = 1, b = 5, c = 6.\n2. **Calculate discriminant**: b² - 4ac = 25 - 24 = 1.\n3. **Apply quadratic formula**: x = (-5 ± √1)/2.\n4. **Compute solutions**: x = (-5 + 1)/2 = -2 and x = (-5 - 1)/2 = -3.\n\n-2, -3\n\nAnswer: -2,-3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:09:49.547Z",
|
||||
"passed": false,
|
||||
"duration": 10827,
|
||||
"reason": "Expected -2,-3, but got the solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.\n\nspecific steps:\n\n1. **identify coefficients**: a = 1, b = 5, c = 6.\n2. **calculate discriminant**: b² - 4ac = 25 - 24 = 1.\n3. **apply quadratic formula**: x = (-5 ± √1)/2.\n4. **compute solutions**: x = (-5 + 1)/2 = -2 and x = (-5 - 1)/2 = -3.\n\n-2, -3\n\nanswer: -2,-3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:09:50.489Z",
|
||||
"passed": false,
|
||||
"duration": 935,
|
||||
"reason": "Expected -2,-3, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:09:54.489Z",
|
||||
"passed": true,
|
||||
"duration": 3991,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5! = 120\n\nThe factorial of 5 is calculated as:\n\n5 × 4 × 3 × 2 × 1 = 120\n\n**Answer:** 120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:10:03.614Z",
|
||||
"passed": false,
|
||||
"duration": 9116,
|
||||
"reason": "Expected 120, but got 5! = 120\n\nthe factorial of 5 is calculated as:\n\n5 × 4 × 3 × 2 × 1 = 120\n\n**answer:** 120",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:10:04.483Z",
|
||||
"passed": true,
|
||||
"duration": 861,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:10:05.284Z",
|
||||
"passed": true,
|
||||
"duration": 792,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:10:13.584Z",
|
||||
"passed": false,
|
||||
"duration": 8292,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:10:14.350Z",
|
||||
"passed": false,
|
||||
"duration": 756,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:10:15.250Z",
|
||||
"passed": true,
|
||||
"duration": 892,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:10:17.013Z",
|
||||
"passed": true,
|
||||
"duration": 1755,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:10:17.849Z",
|
||||
"passed": true,
|
||||
"duration": 828,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:10:18.651Z",
|
||||
"passed": true,
|
||||
"duration": 795,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:10:25.922Z",
|
||||
"passed": true,
|
||||
"duration": 7263,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:10:26.895Z",
|
||||
"passed": true,
|
||||
"duration": 966,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "addition",
|
||||
"prompt": "add 5 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:14:04.393Z",
|
||||
"passed": true,
|
||||
"duration": 1484,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "addition",
|
||||
"prompt": "add 5 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:14:12.861Z",
|
||||
"passed": true,
|
||||
"duration": 8460,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "addition",
|
||||
"prompt": "add 5 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:14:13.779Z",
|
||||
"passed": true,
|
||||
"duration": 910,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "multiplication",
|
||||
"prompt": "multiply 8 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"24"
|
||||
],
|
||||
"expected": "24",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:14:14.740Z",
|
||||
"passed": true,
|
||||
"duration": 955,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "multiplication",
|
||||
"prompt": "multiply 8 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"24"
|
||||
],
|
||||
"expected": "24",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:14:22.399Z",
|
||||
"passed": true,
|
||||
"duration": 7653,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "multiplication",
|
||||
"prompt": "multiply 8 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"24"
|
||||
],
|
||||
"expected": "24",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:14:23.502Z",
|
||||
"passed": true,
|
||||
"duration": 1095,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "division",
|
||||
"prompt": "divide 15 by 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "5",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:14:24.325Z",
|
||||
"passed": true,
|
||||
"duration": 816,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "division",
|
||||
"prompt": "divide 15 by 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"15 divided by 3 is 5. \n\nAnswer: 5"
|
||||
],
|
||||
"expected": "5",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:14:40.987Z",
|
||||
"passed": false,
|
||||
"duration": 16655,
|
||||
"reason": "Expected 5, but got 15 divided by 3 is 5. \n\nanswer: 5",
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "division",
|
||||
"prompt": "divide 15 by 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "5",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:14:41.951Z",
|
||||
"passed": true,
|
||||
"duration": 954,
|
||||
"category": "basic"
|
||||
}
|
||||
],
|
||||
"highscores": [
|
||||
@ -6411,8 +7184,8 @@
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 1295,
|
||||
"duration_secs": 1.295
|
||||
"duration": 935,
|
||||
"duration_secs": 0.935
|
||||
},
|
||||
{
|
||||
"model": "anthropic/claude-3.5-sonnet",
|
||||
@ -6425,14 +7198,14 @@
|
||||
"test": "factorial",
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 785,
|
||||
"duration_secs": 0.785
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 861,
|
||||
"duration_secs": 0.861
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 876,
|
||||
"duration_secs": 0.876
|
||||
"model": "anthropic/claude-3.5-sonnet",
|
||||
"duration": 1454,
|
||||
"duration_secs": 1.454
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -6440,14 +7213,14 @@
|
||||
"test": "fibonacci",
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 898,
|
||||
"duration_secs": 0.898
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 756,
|
||||
"duration_secs": 0.756
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 1149,
|
||||
"duration_secs": 1.149
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 792,
|
||||
"duration_secs": 0.792
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -6460,9 +7233,9 @@
|
||||
"duration_secs": 0.819
|
||||
},
|
||||
{
|
||||
"model": "qwen/qwq-32b",
|
||||
"duration": 890,
|
||||
"duration_secs": 0.89
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 828,
|
||||
"duration_secs": 0.828
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -6471,13 +7244,13 @@
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 866,
|
||||
"duration_secs": 0.866
|
||||
"duration": 795,
|
||||
"duration_secs": 0.795
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 875,
|
||||
"duration_secs": 0.875
|
||||
"duration": 966,
|
||||
"duration_secs": 0.966
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -6486,13 +7259,13 @@
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 791,
|
||||
"duration_secs": 0.791
|
||||
"duration": 910,
|
||||
"duration_secs": 0.91
|
||||
},
|
||||
{
|
||||
"model": "anthropic/claude-3.5-sonnet",
|
||||
"duration": 1689,
|
||||
"duration_secs": 1.689
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 1484,
|
||||
"duration_secs": 1.484
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -6500,14 +7273,14 @@
|
||||
"test": "multiplication",
|
||||
"rankings": [
|
||||
{
|
||||
"model": "anthropic/claude-3.5-sonnet",
|
||||
"duration": 1190,
|
||||
"duration_secs": 1.19
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 955,
|
||||
"duration_secs": 0.955
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 1206,
|
||||
"duration_secs": 1.206
|
||||
"duration": 1095,
|
||||
"duration_secs": 1.095
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -6515,14 +7288,14 @@
|
||||
"test": "division",
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 760,
|
||||
"duration_secs": 0.76
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 816,
|
||||
"duration_secs": 0.816
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 783,
|
||||
"duration_secs": 0.783
|
||||
"model": "qwen/qwq-32b",
|
||||
"duration": 917,
|
||||
"duration_secs": 0.917
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -6587,5 +7360,5 @@
|
||||
]
|
||||
}
|
||||
],
|
||||
"lastUpdated": "2025-04-02T22:06:51.780Z"
|
||||
"lastUpdated": "2025-04-03T17:14:41.955Z"
|
||||
}
|
||||
@ -1124,6 +1124,133 @@
|
||||
"passed": true,
|
||||
"duration": 760,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "addition",
|
||||
"prompt": "add 5 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:14:04.393Z",
|
||||
"passed": true,
|
||||
"duration": 1484,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "addition",
|
||||
"prompt": "add 5 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:14:12.861Z",
|
||||
"passed": true,
|
||||
"duration": 8460,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "addition",
|
||||
"prompt": "add 5 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:14:13.779Z",
|
||||
"passed": true,
|
||||
"duration": 910,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "multiplication",
|
||||
"prompt": "multiply 8 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"24"
|
||||
],
|
||||
"expected": "24",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:14:14.740Z",
|
||||
"passed": true,
|
||||
"duration": 955,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "multiplication",
|
||||
"prompt": "multiply 8 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"24"
|
||||
],
|
||||
"expected": "24",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:14:22.399Z",
|
||||
"passed": true,
|
||||
"duration": 7653,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "multiplication",
|
||||
"prompt": "multiply 8 and 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"24"
|
||||
],
|
||||
"expected": "24",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:14:23.502Z",
|
||||
"passed": true,
|
||||
"duration": 1095,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "division",
|
||||
"prompt": "divide 15 by 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "5",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:14:24.325Z",
|
||||
"passed": true,
|
||||
"duration": 816,
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "division",
|
||||
"prompt": "divide 15 by 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"15 divided by 3 is 5. \n\nAnswer: 5"
|
||||
],
|
||||
"expected": "5",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:14:40.987Z",
|
||||
"passed": false,
|
||||
"duration": 16655,
|
||||
"reason": "Expected 5, but got 15 divided by 3 is 5. \n\nanswer: 5",
|
||||
"category": "basic"
|
||||
},
|
||||
{
|
||||
"test": "division",
|
||||
"prompt": "divide 15 by 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "5",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:14:41.951Z",
|
||||
"passed": true,
|
||||
"duration": 954,
|
||||
"category": "basic"
|
||||
}
|
||||
],
|
||||
"highscores": [
|
||||
@ -1132,13 +1259,13 @@
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 791,
|
||||
"duration_secs": 0.791
|
||||
"duration": 910,
|
||||
"duration_secs": 0.91
|
||||
},
|
||||
{
|
||||
"model": "anthropic/claude-3.5-sonnet",
|
||||
"duration": 1689,
|
||||
"duration_secs": 1.689
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 1484,
|
||||
"duration_secs": 1.484
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -1146,14 +1273,14 @@
|
||||
"test": "multiplication",
|
||||
"rankings": [
|
||||
{
|
||||
"model": "anthropic/claude-3.5-sonnet",
|
||||
"duration": 1190,
|
||||
"duration_secs": 1.19
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 955,
|
||||
"duration_secs": 0.955
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 1206,
|
||||
"duration_secs": 1.206
|
||||
"duration": 1095,
|
||||
"duration_secs": 1.095
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -1161,17 +1288,17 @@
|
||||
"test": "division",
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 760,
|
||||
"duration_secs": 0.76
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 816,
|
||||
"duration_secs": 0.816
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 783,
|
||||
"duration_secs": 0.783
|
||||
"model": "qwen/qwq-32b",
|
||||
"duration": 917,
|
||||
"duration_secs": 0.917
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"lastUpdated": "2025-04-02T22:06:51.777Z"
|
||||
"lastUpdated": "2025-04-03T17:14:41.951Z"
|
||||
}
|
||||
@ -6,15 +6,15 @@
|
||||
|
||||
| Test | Model | Duration (ms) | Duration (s) |
|
||||
|------|-------|--------------|--------------|
|
||||
| addition | openai/gpt-4o-mini | 791 | 0.79 |
|
||||
| addition | deepseek/deepseek-r1-distill-qwen-14b:free | 2228 | 2.23 |
|
||||
| addition | openai/gpt-3.5-turbo | 2263 | 2.26 |
|
||||
| multiplication | openai/gpt-4o-mini | 1206 | 1.21 |
|
||||
| multiplication | openai/gpt-3.5-turbo | 1300 | 1.30 |
|
||||
| multiplication | deepseek/deepseek-r1-distill-qwen-14b:free | 2782 | 2.78 |
|
||||
| division | openai/gpt-4o-mini | 760 | 0.76 |
|
||||
| division | openai/gpt-3.5-turbo | 783 | 0.78 |
|
||||
| division | deepseek/deepseek-r1-distill-qwen-14b:free | 2982 | 2.98 |
|
||||
| addition | openai/gpt-4o-mini | 910 | 0.91 |
|
||||
| addition | openai/gpt-3.5-turbo | 1484 | 1.48 |
|
||||
| addition | deepseek/deepseek-r1-distill-qwen-14b:free | 8460 | 8.46 |
|
||||
| multiplication | openai/gpt-3.5-turbo | 955 | 0.95 |
|
||||
| multiplication | openai/gpt-4o-mini | 1095 | 1.09 |
|
||||
| multiplication | deepseek/deepseek-r1-distill-qwen-14b:free | 7653 | 7.65 |
|
||||
| division | openai/gpt-3.5-turbo | 816 | 0.82 |
|
||||
| division | openai/gpt-4o-mini | 954 | 0.95 |
|
||||
| division | deepseek/deepseek-r1-distill-qwen-14b:free | 16655 | 16.66 |
|
||||
|
||||
## Summary
|
||||
|
||||
@ -22,18 +22,22 @@
|
||||
- Passed: 8
|
||||
- Failed: 1
|
||||
- Success Rate: 88.89%
|
||||
- Average Duration: 1677ms (1.68s)
|
||||
- Average Duration: 4331ms (4.33s)
|
||||
|
||||
## Failed Tests
|
||||
|
||||
### multiplication - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
### division - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `multiply 8 and 3. Return only the number, no explanation.`
|
||||
- Expected: `24`
|
||||
- Actual: `8 × 3 = 24`
|
||||
- Duration: 2782ms (2.78s)
|
||||
- Reason: Expected 24, but got 8 × 3 = 24
|
||||
- Timestamp: 4/3/2025, 12:06:46 AM
|
||||
- Prompt: `divide 15 by 3. Return only the number, no explanation.`
|
||||
- Expected: `5`
|
||||
- Actual: `15 divided by 3 is 5.
|
||||
|
||||
Answer: 5`
|
||||
- Duration: 16655ms (16.66s)
|
||||
- Reason: Expected 5, but got 15 divided by 3 is 5.
|
||||
|
||||
answer: 5
|
||||
- Timestamp: 4/3/2025, 7:14:40 PM
|
||||
|
||||
## Passed Tests
|
||||
|
||||
@ -42,62 +46,62 @@
|
||||
- Prompt: `add 5 and 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 2263ms (2.26s)
|
||||
- Timestamp: 4/3/2025, 12:06:38 AM
|
||||
- Duration: 1484ms (1.48s)
|
||||
- Timestamp: 4/3/2025, 7:14:04 PM
|
||||
|
||||
### addition - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `add 5 and 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 2228ms (2.23s)
|
||||
- Timestamp: 4/3/2025, 12:06:41 AM
|
||||
- Duration: 8460ms (8.46s)
|
||||
- Timestamp: 4/3/2025, 7:14:12 PM
|
||||
|
||||
### addition - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `add 5 and 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 791ms (0.79s)
|
||||
- Timestamp: 4/3/2025, 12:06:41 AM
|
||||
- Duration: 910ms (0.91s)
|
||||
- Timestamp: 4/3/2025, 7:14:13 PM
|
||||
|
||||
### multiplication - openai/gpt-3.5-turbo
|
||||
|
||||
- Prompt: `multiply 8 and 3. Return only the number, no explanation.`
|
||||
- Expected: `24`
|
||||
- Actual: `24`
|
||||
- Duration: 1300ms (1.30s)
|
||||
- Timestamp: 4/3/2025, 12:06:43 AM
|
||||
- Duration: 955ms (0.95s)
|
||||
- Timestamp: 4/3/2025, 7:14:14 PM
|
||||
|
||||
### multiplication - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `multiply 8 and 3. Return only the number, no explanation.`
|
||||
- Expected: `24`
|
||||
- Actual: `24`
|
||||
- Duration: 7653ms (7.65s)
|
||||
- Timestamp: 4/3/2025, 7:14:22 PM
|
||||
|
||||
### multiplication - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `multiply 8 and 3. Return only the number, no explanation.`
|
||||
- Expected: `24`
|
||||
- Actual: `24`
|
||||
- Duration: 1206ms (1.21s)
|
||||
- Timestamp: 4/3/2025, 12:06:47 AM
|
||||
- Duration: 1095ms (1.09s)
|
||||
- Timestamp: 4/3/2025, 7:14:23 PM
|
||||
|
||||
### division - openai/gpt-3.5-turbo
|
||||
|
||||
- Prompt: `divide 15 by 3. Return only the number, no explanation.`
|
||||
- Expected: `5`
|
||||
- Actual: `5`
|
||||
- Duration: 783ms (0.78s)
|
||||
- Timestamp: 4/3/2025, 12:06:48 AM
|
||||
|
||||
### division - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `divide 15 by 3. Return only the number, no explanation.`
|
||||
- Expected: `5`
|
||||
- Actual: `5`
|
||||
- Duration: 2982ms (2.98s)
|
||||
- Timestamp: 4/3/2025, 12:06:51 AM
|
||||
- Duration: 816ms (0.82s)
|
||||
- Timestamp: 4/3/2025, 7:14:24 PM
|
||||
|
||||
### division - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `divide 15 by 3. Return only the number, no explanation.`
|
||||
- Expected: `5`
|
||||
- Actual: `5`
|
||||
- Duration: 760ms (0.76s)
|
||||
- Timestamp: 4/3/2025, 12:06:51 AM
|
||||
- Duration: 954ms (0.95s)
|
||||
- Timestamp: 4/3/2025, 7:14:41 PM
|
||||
|
||||
|
||||
@ -2182,6 +2182,652 @@
|
||||
"duration": 1478,
|
||||
"reason": "Expected -3,-2, but got -3, -2",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-3,-2",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:08:37.779Z",
|
||||
"passed": false,
|
||||
"duration": 1244,
|
||||
"reason": "Expected -3,-2, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"The solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.\n\n\\boxed{-2}, \\boxed{-3}"
|
||||
],
|
||||
"expected": "-3,-2",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:08:48.803Z",
|
||||
"passed": false,
|
||||
"duration": 11013,
|
||||
"reason": "Expected -3,-2, but got the solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.\n\n\\boxed{-2}, \\boxed{-3}",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-3,-2",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:08:50.291Z",
|
||||
"passed": false,
|
||||
"duration": 1482,
|
||||
"reason": "Expected -3,-2, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:08:51.033Z",
|
||||
"passed": true,
|
||||
"duration": 736,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:08:55.877Z",
|
||||
"passed": true,
|
||||
"duration": 4838,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:08:56.613Z",
|
||||
"passed": true,
|
||||
"duration": 730,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:08:57.421Z",
|
||||
"passed": true,
|
||||
"duration": 802,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"The 6th number in the Fibonacci sequence is 5. \n\n5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:09:04.449Z",
|
||||
"passed": false,
|
||||
"duration": 7023,
|
||||
"reason": "Expected 8, but got the 6th number in the fibonacci sequence is 5. \n\n5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:09:05.286Z",
|
||||
"passed": false,
|
||||
"duration": 831,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:09:06.233Z",
|
||||
"passed": true,
|
||||
"duration": 940,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:09:08.662Z",
|
||||
"passed": true,
|
||||
"duration": 2423,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:09:09.441Z",
|
||||
"passed": true,
|
||||
"duration": 773,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:09:10.298Z",
|
||||
"passed": true,
|
||||
"duration": 851,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:09:11.870Z",
|
||||
"passed": true,
|
||||
"duration": 1566,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:09:12.628Z",
|
||||
"passed": true,
|
||||
"duration": 753,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:07.251Z",
|
||||
"passed": false,
|
||||
"duration": 1329,
|
||||
"reason": "Expected -2,-3, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:14.807Z",
|
||||
"passed": false,
|
||||
"duration": 7547,
|
||||
"reason": "Expected -2,-3, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:15.551Z",
|
||||
"passed": false,
|
||||
"duration": 738,
|
||||
"reason": "Expected -2,-3, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:16.305Z",
|
||||
"passed": true,
|
||||
"duration": 749,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:21.413Z",
|
||||
"passed": true,
|
||||
"duration": 5102,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:22.690Z",
|
||||
"passed": true,
|
||||
"duration": 1271,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:23.404Z",
|
||||
"passed": true,
|
||||
"duration": 707,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:32.032Z",
|
||||
"passed": false,
|
||||
"duration": 8621,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:33.022Z",
|
||||
"passed": false,
|
||||
"duration": 983,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:33.875Z",
|
||||
"passed": true,
|
||||
"duration": 845,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:37.488Z",
|
||||
"passed": true,
|
||||
"duration": 3608,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:38.246Z",
|
||||
"passed": true,
|
||||
"duration": 753,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-02T22:11:39.169Z",
|
||||
"passed": true,
|
||||
"duration": 918,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-02T22:11:43.117Z",
|
||||
"passed": true,
|
||||
"duration": 3943,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-02T22:11:44.077Z",
|
||||
"passed": true,
|
||||
"duration": 954,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-3, -2"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:09:38.709Z",
|
||||
"passed": false,
|
||||
"duration": 1685,
|
||||
"reason": "Expected -2,-3, but got -3, -2",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"The solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.\n\nSpecific steps:\n\n1. **Identify coefficients**: a = 1, b = 5, c = 6.\n2. **Calculate discriminant**: b² - 4ac = 25 - 24 = 1.\n3. **Apply quadratic formula**: x = (-5 ± √1)/2.\n4. **Compute solutions**: x = (-5 + 1)/2 = -2 and x = (-5 - 1)/2 = -3.\n\n-2, -3\n\nAnswer: -2,-3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:09:49.547Z",
|
||||
"passed": false,
|
||||
"duration": 10827,
|
||||
"reason": "Expected -2,-3, but got the solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.\n\nspecific steps:\n\n1. **identify coefficients**: a = 1, b = 5, c = 6.\n2. **calculate discriminant**: b² - 4ac = 25 - 24 = 1.\n3. **apply quadratic formula**: x = (-5 ± √1)/2.\n4. **compute solutions**: x = (-5 + 1)/2 = -2 and x = (-5 - 1)/2 = -3.\n\n-2, -3\n\nanswer: -2,-3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "quadratic",
|
||||
"prompt": "Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.",
|
||||
"result": [
|
||||
"-2, -3"
|
||||
],
|
||||
"expected": "-2,-3",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:09:50.489Z",
|
||||
"passed": false,
|
||||
"duration": 935,
|
||||
"reason": "Expected -2,-3, but got -2, -3",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:09:54.489Z",
|
||||
"passed": true,
|
||||
"duration": 3991,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5! = 120\n\nThe factorial of 5 is calculated as:\n\n5 × 4 × 3 × 2 × 1 = 120\n\n**Answer:** 120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:10:03.614Z",
|
||||
"passed": false,
|
||||
"duration": 9116,
|
||||
"reason": "Expected 120, but got 5! = 120\n\nthe factorial of 5 is calculated as:\n\n5 × 4 × 3 × 2 × 1 = 120\n\n**answer:** 120",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "factorial",
|
||||
"prompt": "Calculate 5! (factorial of 5). Return only the number, no explanation.",
|
||||
"result": [
|
||||
"120"
|
||||
],
|
||||
"expected": "120",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:10:04.483Z",
|
||||
"passed": true,
|
||||
"duration": 861,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:10:05.284Z",
|
||||
"passed": true,
|
||||
"duration": 792,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:10:13.584Z",
|
||||
"passed": false,
|
||||
"duration": 8292,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "fibonacci",
|
||||
"prompt": "Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"5"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:10:14.350Z",
|
||||
"passed": false,
|
||||
"duration": 756,
|
||||
"reason": "Expected 8, but got 5",
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:10:15.250Z",
|
||||
"passed": true,
|
||||
"duration": 892,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:10:17.013Z",
|
||||
"passed": true,
|
||||
"duration": 1755,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "square_root",
|
||||
"prompt": "Calculate the square root of 16. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"4"
|
||||
],
|
||||
"expected": "4",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:10:17.849Z",
|
||||
"passed": true,
|
||||
"duration": 828,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"router": "openai/gpt-3.5-turbo",
|
||||
"timestamp": "2025-04-03T17:10:18.651Z",
|
||||
"passed": true,
|
||||
"duration": 795,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"router": "deepseek/deepseek-r1-distill-qwen-14b:free",
|
||||
"timestamp": "2025-04-03T17:10:25.922Z",
|
||||
"passed": true,
|
||||
"duration": 7263,
|
||||
"category": "math"
|
||||
},
|
||||
{
|
||||
"test": "power",
|
||||
"prompt": "Calculate 2 raised to the power of 3. Return only the number, no explanation.",
|
||||
"result": [
|
||||
"8"
|
||||
],
|
||||
"expected": "8",
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"router": "openai/gpt-4o-mini",
|
||||
"timestamp": "2025-04-03T17:10:26.895Z",
|
||||
"passed": true,
|
||||
"duration": 966,
|
||||
"category": "math"
|
||||
}
|
||||
],
|
||||
"highscores": [
|
||||
@ -2190,8 +2836,8 @@
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 1295,
|
||||
"duration_secs": 1.295
|
||||
"duration": 935,
|
||||
"duration_secs": 0.935
|
||||
},
|
||||
{
|
||||
"model": "anthropic/claude-3.5-sonnet",
|
||||
@ -2204,14 +2850,14 @@
|
||||
"test": "factorial",
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 785,
|
||||
"duration_secs": 0.785
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 861,
|
||||
"duration_secs": 0.861
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 876,
|
||||
"duration_secs": 0.876
|
||||
"model": "anthropic/claude-3.5-sonnet",
|
||||
"duration": 1454,
|
||||
"duration_secs": 1.454
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -2219,14 +2865,14 @@
|
||||
"test": "fibonacci",
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 898,
|
||||
"duration_secs": 0.898
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 756,
|
||||
"duration_secs": 0.756
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 1149,
|
||||
"duration_secs": 1.149
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 792,
|
||||
"duration_secs": 0.792
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -2239,9 +2885,9 @@
|
||||
"duration_secs": 0.819
|
||||
},
|
||||
{
|
||||
"model": "qwen/qwq-32b",
|
||||
"duration": 890,
|
||||
"duration_secs": 0.89
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 828,
|
||||
"duration_secs": 0.828
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -2250,16 +2896,16 @@
|
||||
"rankings": [
|
||||
{
|
||||
"model": "openai/gpt-3.5-turbo",
|
||||
"duration": 866,
|
||||
"duration_secs": 0.866
|
||||
"duration": 795,
|
||||
"duration_secs": 0.795
|
||||
},
|
||||
{
|
||||
"model": "openai/gpt-4o-mini",
|
||||
"duration": 875,
|
||||
"duration_secs": 0.875
|
||||
"duration": 966,
|
||||
"duration_secs": 0.966
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"lastUpdated": "2025-04-02T13:43:41.958Z"
|
||||
"lastUpdated": "2025-04-03T17:10:26.897Z"
|
||||
}
|
||||
@ -2,283 +2,195 @@
|
||||
|
||||
## Highscores
|
||||
|
||||
### Performance Rankings (Duration)
|
||||
|
||||
| Test | Model | Duration (ms) | Duration (s) |
|
||||
|------|-------|--------------|--------------|
|
||||
| factorial | openai/gpt-3.5-turbo | 827 | 0.83 |
|
||||
| factorial | openai/gpt-4o-mini | 956 | 0.96 |
|
||||
| square_root | openai/gpt-4o-mini | 964 | 0.96 |
|
||||
| square_root | openai/gpt-3.5-turbo | 1080 | 1.08 |
|
||||
| power | anthropic/claude-3.5-sonnet | 1136 | 1.14 |
|
||||
| power | openai/gpt-4o-mini | 1259 | 1.26 |
|
||||
| power | openai/gpt-3.5-turbo | 1498 | 1.50 |
|
||||
| fibonacci | openai/gpt-3.5-turbo | 1543 | 1.54 |
|
||||
| fibonacci | openai/gpt-4o-mini | 1673 | 1.67 |
|
||||
| factorial | anthropic/claude-3.5-sonnet | 1853 | 1.85 |
|
||||
| fibonacci | anthropic/claude-3.5-sonnet | 2004 | 2.00 |
|
||||
| square_root | anthropic/claude-3.5-sonnet | 2012 | 2.01 |
|
||||
| factorial | deepseek/deepseek-r1-distill-qwen-14b:free | 4814 | 4.81 |
|
||||
| power | deepseek/deepseek-r1 | 5414 | 5.41 |
|
||||
| square_root | qwen/qwq-32b | 5888 | 5.89 |
|
||||
| square_root | deepseek/deepseek-r1-distill-qwen-14b:free | 6114 | 6.11 |
|
||||
| quadratic | qwen/qwq-32b | 6795 | 6.79 |
|
||||
| factorial | qwen/qwq-32b | 6892 | 6.89 |
|
||||
| power | qwen/qwq-32b | 7572 | 7.57 |
|
||||
| power | deepseek/deepseek-r1-distill-qwen-14b:free | 9891 | 9.89 |
|
||||
| square_root | deepseek/deepseek-r1 | 10309 | 10.31 |
|
||||
| factorial | deepseek/deepseek-r1 | 11193 | 11.19 |
|
||||
| quadratic | openai/gpt-4o-mini | 935 | 0.94 |
|
||||
| quadratic | openai/gpt-3.5-turbo | 1685 | 1.69 |
|
||||
| quadratic | deepseek/deepseek-r1-distill-qwen-14b:free | 10827 | 10.83 |
|
||||
| factorial | openai/gpt-4o-mini | 861 | 0.86 |
|
||||
| factorial | openai/gpt-3.5-turbo | 3991 | 3.99 |
|
||||
| factorial | deepseek/deepseek-r1-distill-qwen-14b:free | 9116 | 9.12 |
|
||||
| fibonacci | openai/gpt-4o-mini | 756 | 0.76 |
|
||||
| fibonacci | openai/gpt-3.5-turbo | 792 | 0.79 |
|
||||
| fibonacci | deepseek/deepseek-r1-distill-qwen-14b:free | 8292 | 8.29 |
|
||||
| square_root | openai/gpt-4o-mini | 828 | 0.83 |
|
||||
| square_root | openai/gpt-3.5-turbo | 892 | 0.89 |
|
||||
| square_root | deepseek/deepseek-r1-distill-qwen-14b:free | 1755 | 1.75 |
|
||||
| power | openai/gpt-3.5-turbo | 795 | 0.80 |
|
||||
| power | openai/gpt-4o-mini | 966 | 0.97 |
|
||||
| power | deepseek/deepseek-r1-distill-qwen-14b:free | 7263 | 7.26 |
|
||||
|
||||
## Summary
|
||||
|
||||
- Total Tests: 29
|
||||
- Passed: 22
|
||||
- Failed: 7
|
||||
- Success Rate: 75.86%
|
||||
- Average Duration: 4745ms (4.75s)
|
||||
- Total Tests: 15
|
||||
- Passed: 9
|
||||
- Failed: 6
|
||||
- Success Rate: 60.00%
|
||||
- Average Duration: 3317ms (3.32s)
|
||||
|
||||
## Failed Tests
|
||||
|
||||
### quadratic - anthropic/claude-3.5-sonnet
|
||||
|
||||
- Prompt: `Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.`
|
||||
- Expected: `-3,-2`
|
||||
- Actual: `-2,-3`
|
||||
- Duration: 1892ms (1892.00s)
|
||||
- Reason: Expected -3,-2, but got -2,-3
|
||||
- Timestamp: 4/2/2025, 3:32:51 PM
|
||||
|
||||
### quadratic - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.`
|
||||
- Expected: `-3,-2`
|
||||
- Actual: `-2, -3`
|
||||
- Duration: 853ms (853.00s)
|
||||
- Reason: Expected -3,-2, but got -2, -3
|
||||
- Timestamp: 4/2/2025, 3:32:59 PM
|
||||
|
||||
### quadratic - openai/gpt-3.5-turbo
|
||||
|
||||
- Prompt: `Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.`
|
||||
- Expected: `-3,-2`
|
||||
- Actual: `-2, -3`
|
||||
- Duration: 832ms (832.00s)
|
||||
- Reason: Expected -3,-2, but got -2, -3
|
||||
- Timestamp: 4/2/2025, 3:32:59 PM
|
||||
|
||||
### quadratic - deepseek/deepseek-r1
|
||||
|
||||
- Prompt: `Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.`
|
||||
- Expected: `-3,-2`
|
||||
- Actual: `-2, -3`
|
||||
- Duration: 19850ms (19850.00s)
|
||||
- Reason: Expected -3,-2, but got -2, -3
|
||||
- Timestamp: 4/2/2025, 3:33:19 PM
|
||||
- Expected: `-2,-3`
|
||||
- Actual: `-3, -2`
|
||||
- Duration: 1685ms (1.69s)
|
||||
- Reason: Expected -2,-3, but got -3, -2
|
||||
- Timestamp: 4/3/2025, 7:09:38 PM
|
||||
|
||||
### quadratic - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.`
|
||||
- Expected: `-3,-2`
|
||||
- Actual: `The solutions to the quadratic equation x² + 5x + 6 = 0 are x = -2 and x = -3.
|
||||
- Expected: `-2,-3`
|
||||
- Actual: `The solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.
|
||||
|
||||
-2,-3`
|
||||
- Duration: 15811ms (15811.00s)
|
||||
- Reason: Expected -3,-2, but got the solutions to the quadratic equation x² + 5x + 6 = 0 are x = -2 and x = -3.
|
||||
Specific steps:
|
||||
|
||||
-2,-3
|
||||
- Timestamp: 4/2/2025, 3:33:35 PM
|
||||
1. **Identify coefficients**: a = 1, b = 5, c = 6.
|
||||
2. **Calculate discriminant**: b² - 4ac = 25 - 24 = 1.
|
||||
3. **Apply quadratic formula**: x = (-5 ± √1)/2.
|
||||
4. **Compute solutions**: x = (-5 + 1)/2 = -2 and x = (-5 - 1)/2 = -3.
|
||||
|
||||
### fibonacci - qwen/qwq-32b
|
||||
-2, -3
|
||||
|
||||
- Prompt: `Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `5`
|
||||
- Duration: 1509ms (1509.00s)
|
||||
- Reason: Expected 8, but got 5
|
||||
- Timestamp: 4/2/2025, 3:34:05 PM
|
||||
Answer: -2,-3`
|
||||
- Duration: 10827ms (10.83s)
|
||||
- Reason: Expected -2,-3, but got the solutions to the quadratic equation x² + 5x + 6 = 0 are -2 and -3.
|
||||
|
||||
specific steps:
|
||||
|
||||
1. **identify coefficients**: a = 1, b = 5, c = 6.
|
||||
2. **calculate discriminant**: b² - 4ac = 25 - 24 = 1.
|
||||
3. **apply quadratic formula**: x = (-5 ± √1)/2.
|
||||
4. **compute solutions**: x = (-5 + 1)/2 = -2 and x = (-5 - 1)/2 = -3.
|
||||
|
||||
-2, -3
|
||||
|
||||
answer: -2,-3
|
||||
- Timestamp: 4/3/2025, 7:09:49 PM
|
||||
|
||||
### quadratic - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.`
|
||||
- Expected: `-2,-3`
|
||||
- Actual: `-2, -3`
|
||||
- Duration: 935ms (0.94s)
|
||||
- Reason: Expected -2,-3, but got -2, -3
|
||||
- Timestamp: 4/3/2025, 7:09:50 PM
|
||||
|
||||
### factorial - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `Calculate 5! (factorial of 5). Return only the number, no explanation.`
|
||||
- Expected: `120`
|
||||
- Actual: `5! = 120
|
||||
|
||||
The factorial of 5 is calculated as:
|
||||
|
||||
5 × 4 × 3 × 2 × 1 = 120
|
||||
|
||||
**Answer:** 120`
|
||||
- Duration: 9116ms (9.12s)
|
||||
- Reason: Expected 120, but got 5! = 120
|
||||
|
||||
the factorial of 5 is calculated as:
|
||||
|
||||
5 × 4 × 3 × 2 × 1 = 120
|
||||
|
||||
**answer:** 120
|
||||
- Timestamp: 4/3/2025, 7:10:03 PM
|
||||
|
||||
### fibonacci - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `5`
|
||||
- Duration: 5171ms (5171.00s)
|
||||
- Duration: 8292ms (8.29s)
|
||||
- Reason: Expected 8, but got 5
|
||||
- Timestamp: 4/2/2025, 3:34:44 PM
|
||||
- Timestamp: 4/3/2025, 7:10:13 PM
|
||||
|
||||
### fibonacci - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `5`
|
||||
- Duration: 756ms (0.76s)
|
||||
- Reason: Expected 8, but got 5
|
||||
- Timestamp: 4/3/2025, 7:10:14 PM
|
||||
|
||||
## Passed Tests
|
||||
|
||||
### quadratic - qwen/qwq-32b
|
||||
|
||||
- Prompt: `Solve the quadratic equation x² + 5x + 6 = 0. Return only the solutions as comma-separated numbers, no explanation.`
|
||||
- Expected: `-3,-2`
|
||||
- Actual: `-3,-2`
|
||||
- Duration: 6795ms (6795.00s)
|
||||
- Timestamp: 4/2/2025, 3:32:58 PM
|
||||
|
||||
### factorial - anthropic/claude-3.5-sonnet
|
||||
|
||||
- Prompt: `Calculate 5! (factorial of 5). Return only the number, no explanation.`
|
||||
- Expected: `120`
|
||||
- Actual: `120`
|
||||
- Duration: 1853ms (1853.00s)
|
||||
- Timestamp: 4/2/2025, 3:33:37 PM
|
||||
|
||||
### factorial - qwen/qwq-32b
|
||||
|
||||
- Prompt: `Calculate 5! (factorial of 5). Return only the number, no explanation.`
|
||||
- Expected: `120`
|
||||
- Actual: `120`
|
||||
- Duration: 6892ms (6892.00s)
|
||||
- Timestamp: 4/2/2025, 3:33:44 PM
|
||||
|
||||
### factorial - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Calculate 5! (factorial of 5). Return only the number, no explanation.`
|
||||
- Expected: `120`
|
||||
- Actual: `120`
|
||||
- Duration: 956ms (956.00s)
|
||||
- Timestamp: 4/2/2025, 3:33:45 PM
|
||||
|
||||
### factorial - openai/gpt-3.5-turbo
|
||||
|
||||
- Prompt: `Calculate 5! (factorial of 5). Return only the number, no explanation.`
|
||||
- Expected: `120`
|
||||
- Actual: `120`
|
||||
- Duration: 827ms (827.00s)
|
||||
- Timestamp: 4/2/2025, 3:33:46 PM
|
||||
- Duration: 3991ms (3.99s)
|
||||
- Timestamp: 4/3/2025, 7:09:54 PM
|
||||
|
||||
### factorial - deepseek/deepseek-r1
|
||||
### factorial - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Calculate 5! (factorial of 5). Return only the number, no explanation.`
|
||||
- Expected: `120`
|
||||
- Actual: `120`
|
||||
- Duration: 11193ms (11193.00s)
|
||||
- Timestamp: 4/2/2025, 3:33:57 PM
|
||||
|
||||
### factorial - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `Calculate 5! (factorial of 5). Return only the number, no explanation.`
|
||||
- Expected: `120`
|
||||
- Actual: `120`
|
||||
- Duration: 4814ms (4814.00s)
|
||||
- Timestamp: 4/2/2025, 3:34:02 PM
|
||||
|
||||
### fibonacci - anthropic/claude-3.5-sonnet
|
||||
|
||||
- Prompt: `Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 2004ms (2004.00s)
|
||||
- Timestamp: 4/2/2025, 3:34:04 PM
|
||||
|
||||
### fibonacci - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 1673ms (1673.00s)
|
||||
- Timestamp: 4/2/2025, 3:34:07 PM
|
||||
- Duration: 861ms (0.86s)
|
||||
- Timestamp: 4/3/2025, 7:10:04 PM
|
||||
|
||||
### fibonacci - openai/gpt-3.5-turbo
|
||||
|
||||
- Prompt: `Calculate the 6th number in the Fibonacci sequence. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 1543ms (1543.00s)
|
||||
- Timestamp: 4/2/2025, 3:34:08 PM
|
||||
|
||||
### square_root - anthropic/claude-3.5-sonnet
|
||||
|
||||
- Prompt: `Calculate the square root of 16. Return only the number, no explanation.`
|
||||
- Expected: `4`
|
||||
- Actual: `4`
|
||||
- Duration: 2012ms (2012.00s)
|
||||
- Timestamp: 4/2/2025, 3:34:46 PM
|
||||
|
||||
### square_root - qwen/qwq-32b
|
||||
|
||||
- Prompt: `Calculate the square root of 16. Return only the number, no explanation.`
|
||||
- Expected: `4`
|
||||
- Actual: `4`
|
||||
- Duration: 5888ms (5888.00s)
|
||||
- Timestamp: 4/2/2025, 3:34:52 PM
|
||||
|
||||
### square_root - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Calculate the square root of 16. Return only the number, no explanation.`
|
||||
- Expected: `4`
|
||||
- Actual: `4`
|
||||
- Duration: 964ms (964.00s)
|
||||
- Timestamp: 4/2/2025, 3:34:52 PM
|
||||
- Duration: 792ms (0.79s)
|
||||
- Timestamp: 4/3/2025, 7:10:05 PM
|
||||
|
||||
### square_root - openai/gpt-3.5-turbo
|
||||
|
||||
- Prompt: `Calculate the square root of 16. Return only the number, no explanation.`
|
||||
- Expected: `4`
|
||||
- Actual: `4`
|
||||
- Duration: 1080ms (1080.00s)
|
||||
- Timestamp: 4/2/2025, 3:34:54 PM
|
||||
|
||||
### square_root - deepseek/deepseek-r1
|
||||
|
||||
- Prompt: `Calculate the square root of 16. Return only the number, no explanation.`
|
||||
- Expected: `4`
|
||||
- Actual: `4`
|
||||
- Duration: 10309ms (10309.00s)
|
||||
- Timestamp: 4/2/2025, 3:35:04 PM
|
||||
- Duration: 892ms (0.89s)
|
||||
- Timestamp: 4/3/2025, 7:10:15 PM
|
||||
|
||||
### square_root - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `Calculate the square root of 16. Return only the number, no explanation.`
|
||||
- Expected: `4`
|
||||
- Actual: `4`
|
||||
- Duration: 6114ms (6114.00s)
|
||||
- Timestamp: 4/2/2025, 3:35:10 PM
|
||||
- Duration: 1755ms (1.75s)
|
||||
- Timestamp: 4/3/2025, 7:10:17 PM
|
||||
|
||||
### power - anthropic/claude-3.5-sonnet
|
||||
### square_root - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Calculate 2 raised to the power of 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 1136ms (1136.00s)
|
||||
- Timestamp: 4/2/2025, 3:35:11 PM
|
||||
|
||||
### power - qwen/qwq-32b
|
||||
|
||||
- Prompt: `Calculate 2 raised to the power of 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 7572ms (7572.00s)
|
||||
- Timestamp: 4/2/2025, 3:35:19 PM
|
||||
|
||||
### power - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Calculate 2 raised to the power of 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 1259ms (1259.00s)
|
||||
- Timestamp: 4/2/2025, 3:35:20 PM
|
||||
- Prompt: `Calculate the square root of 16. Return only the number, no explanation.`
|
||||
- Expected: `4`
|
||||
- Actual: `4`
|
||||
- Duration: 828ms (0.83s)
|
||||
- Timestamp: 4/3/2025, 7:10:17 PM
|
||||
|
||||
### power - openai/gpt-3.5-turbo
|
||||
|
||||
- Prompt: `Calculate 2 raised to the power of 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 1498ms (1498.00s)
|
||||
- Timestamp: 4/2/2025, 3:35:21 PM
|
||||
|
||||
### power - deepseek/deepseek-r1
|
||||
|
||||
- Prompt: `Calculate 2 raised to the power of 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 5414ms (5414.00s)
|
||||
- Timestamp: 4/2/2025, 3:35:27 PM
|
||||
- Duration: 795ms (0.80s)
|
||||
- Timestamp: 4/3/2025, 7:10:18 PM
|
||||
|
||||
### power - deepseek/deepseek-r1-distill-qwen-14b:free
|
||||
|
||||
- Prompt: `Calculate 2 raised to the power of 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 9891ms (9891.00s)
|
||||
- Timestamp: 4/2/2025, 3:35:37 PM
|
||||
- Duration: 7263ms (7.26s)
|
||||
- Timestamp: 4/3/2025, 7:10:25 PM
|
||||
|
||||
### power - openai/gpt-4o-mini
|
||||
|
||||
- Prompt: `Calculate 2 raised to the power of 3. Return only the number, no explanation.`
|
||||
- Expected: `8`
|
||||
- Actual: `8`
|
||||
- Duration: 966ms (0.97s)
|
||||
- Timestamp: 4/3/2025, 7:10:26 PM
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user