p101
This commit is contained in:
@@ -67,4 +67,45 @@ final class AdminEvalController extends AbstractController
|
||||
'type' => $type,
|
||||
]);
|
||||
}
|
||||
|
||||
#[Route('/case/create', name: 'admin_evals_case_create', methods: ['POST'])]
|
||||
public function createCase(Request $request, EvalAdminService $evals): Response
|
||||
{
|
||||
$this->denyAccessUnlessGranted(ApplicationRoles::ROLE_KNOWLEDGE_ADMIN);
|
||||
|
||||
if (!$this->isCsrfTokenValid('admin_eval_case_create', (string) $request->request->get('_token'))) {
|
||||
throw $this->createAccessDeniedException();
|
||||
}
|
||||
|
||||
$type = trim((string) $request->request->get('type', 'retrieval'));
|
||||
|
||||
try {
|
||||
$created = $evals->createCase(
|
||||
type: $type,
|
||||
id: (string) $request->request->get('id', ''),
|
||||
prompt: (string) $request->request->get('prompt', ''),
|
||||
assertJson: (string) $request->request->get('assert_json', ''),
|
||||
historyJson: (string) $request->request->get('history_json', ''),
|
||||
requestContextHint: (string) $request->request->get('request_context_hint', ''),
|
||||
);
|
||||
|
||||
$type = (string) ($created['type'] ?? $type);
|
||||
|
||||
$this->addFlash(
|
||||
'success',
|
||||
sprintf('Eval-Case "%s" wurde in %s.ndjson gespeichert.', (string) ($created['id'] ?? ''), $type)
|
||||
);
|
||||
} catch (\Throwable $e) {
|
||||
$this->addFlash('danger', $e->getMessage());
|
||||
}
|
||||
|
||||
if (!in_array($type, $evals->supportedTypeNames(), true)) {
|
||||
$type = 'retrieval';
|
||||
}
|
||||
|
||||
return $this->redirectToRoute('admin_evals_index', [
|
||||
'type' => $type,
|
||||
]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user