Neuer Admin-Reiter "KI": zeigt die letzten vier Zeichen des hinterlegten OpenAI-Schluessels samt Quelle, nimmt einen neuen an (vorher gegen /v1/models geprueft) und laesst je Einsatzzweck das Modell per Dropdown waehlen - Scanner-Bewertung, Abgleich "bereits beworben", erweiterte Suche. Die Auswahl kommt live von OpenAI, Vorgaben sind die bisher fest verdrahteten Modelle. Reasoning-Modelle bekommen reasoning_effort statt temperature, damit ein Wechsel keinen 400er ausloest. Schluesselfeld aus dem Scanner-Reiter entfernt; Doku in docs/14-ki.md. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
44 lines
1.4 KiB
JavaScript
44 lines
1.4 KiB
JavaScript
/*
|
|
* Prueft die Modellwahl, soweit es ohne Datenbank und OpenAI geht: welche
|
|
* Namen angenommen werden und welche Modelle als Reasoning-Modell gelten
|
|
* (die bekommen reasoning_effort statt temperature).
|
|
*/
|
|
const { AI_PURPOSES, isReasoningModel, isValidModel } = await import('../src/ai.js');
|
|
|
|
let failures = 0;
|
|
|
|
function check(name, condition) {
|
|
if (condition) {
|
|
console.log(` ok ${name}`);
|
|
} else {
|
|
failures += 1;
|
|
console.log(` FAIL ${name}`);
|
|
}
|
|
}
|
|
|
|
console.log('KI-Einstellungen');
|
|
|
|
check('Vorgabe Bewertung ist gpt-4o-mini', AI_PURPOSES.matching.fallback === 'gpt-4o-mini');
|
|
check('Vorgabe Abgleich ist gpt-5.6-luna', AI_PURPOSES.applied.fallback === 'gpt-5.6-luna');
|
|
|
|
for (const name of ['gpt-4o-mini', 'gpt-5.6-luna', 'o4-mini', 'gpt-4o-2024-08-06', 'ft:gpt-4o-mini:perinco:x:1']) {
|
|
check(`gueltig: ${name}`, isValidModel(name));
|
|
}
|
|
for (const name of ['', ' gpt-4o', 'gpt 4o', 'gpt-4o;drop', 'x'.repeat(101), null]) {
|
|
check(`ungueltig: ${JSON.stringify(name)?.slice(0, 20)}`, !isValidModel(name));
|
|
}
|
|
|
|
for (const name of ['o1', 'o3-mini', 'o4-mini', 'gpt-5', 'gpt-5.6-luna']) {
|
|
check(`reasoning: ${name}`, isReasoningModel(name));
|
|
}
|
|
for (const name of ['gpt-4o-mini', 'gpt-4.1', 'chatgpt-4o-latest']) {
|
|
check(`klassisch: ${name}`, !isReasoningModel(name));
|
|
}
|
|
|
|
if (failures) {
|
|
console.log(`\n${failures} Pruefung(en) fehlgeschlagen.`);
|
|
process.exit(1);
|
|
}
|
|
console.log('\nAlles gruen.');
|
|
process.exit(0);
|