KI-gestützte Planungsunterstützung (4.5.9) + Kompetenzkatalog-Import (8.1.2)
KI-Unterstützung: neuer Einstellungen-Tab (Anmeldung, Guthaben) und Button im Planungs-Tab, der Einheiten+Stunden als JSON an ein neues PHP-Backend (ai-backend/) sendet und die Antwort als prüfbare Vorschlagsliste zurückbringt. Provider-Aufruf, Guthabenverwaltung und Abrechnung nach echten Token-Kosten laufen serverseitig, der Desktop-Client sieht nie einen LLM-API-Key. Zentral abgesichert: eine von der KI zurückgegebene Stunden-Id, die zu keiner echten Lesson der Einheit passt, wird nie als Update übernommen, sondern immer als neue Stunde behandelt. Kompetenzkatalog-Import (8.1.2): JSON-Export/Import für Kompetenzkataloge.
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
require_once __DIR__ . '/ProviderInterface.php';
|
||||
|
||||
/**
|
||||
* Für lokale Smoke-Tests ohne echten API-Key (siehe README.md) — liefert eine feste,
|
||||
* valide AiPlanningResponse-JSON zurück statt einen echten LLM-Aufruf zu machen. Niemals als
|
||||
* Standard-Provider in config.php eintragen, nur über eine explizite lokale Umgebungsvariable
|
||||
* (siehe plan.php) für Entwicklungszwecke aktivieren.
|
||||
*/
|
||||
class FakeProvider implements ProviderInterface
|
||||
{
|
||||
public function sendMessage(string $systemPrompt, string $userContent, int $maxTokens): array
|
||||
{
|
||||
return [
|
||||
'content' => json_encode([
|
||||
'lessons' => [
|
||||
[
|
||||
'id' => null,
|
||||
'date' => null,
|
||||
'lessonNumber' => null,
|
||||
'topic' => 'Fake-Vorschlag zum Testen',
|
||||
'startTime' => null,
|
||||
'phases' => [],
|
||||
'homework' => null,
|
||||
'reflection' => null,
|
||||
],
|
||||
],
|
||||
'summary' => 'Antwort des FakeProvider (kein echter KI-Aufruf).',
|
||||
]),
|
||||
'inputTokens' => 42,
|
||||
'outputTokens' => 17,
|
||||
];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user