fix: Sidebar — OCR-Labeling entfernt (nur im Lehrer Admin noetig)
All checks were successful
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-ai-compliance (push) Successful in 35s
CI / test-python-backend-compliance (push) Successful in 40s
CI / test-python-document-crawler (push) Successful in 22s
CI / test-python-dsms-gateway (push) Successful in 22s
All checks were successful
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-ai-compliance (push) Successful in 35s
CI / test-python-backend-compliance (push) Successful in 40s
CI / test-python-document-crawler (push) Successful in 22s
CI / test-python-dsms-gateway (push) Successful in 22s
OCR-Labeling ist bereits im Core Admin (macmini:3002/ai/ocr-pipeline) vorhanden und wird im Compliance Dashboard nicht benoetigt. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -256,28 +256,6 @@ export const MODULE_REGISTRY: BackendModule[] = [
|
|||||||
},
|
},
|
||||||
priority: 'medium'
|
priority: 'medium'
|
||||||
},
|
},
|
||||||
{
|
|
||||||
id: 'ocr-labeling',
|
|
||||||
name: 'OCR-Labeling',
|
|
||||||
description: 'Handschrift-Training und Label-Verwaltung',
|
|
||||||
category: 'ai',
|
|
||||||
backend: {
|
|
||||||
service: 'python-backend',
|
|
||||||
port: 8000,
|
|
||||||
basePath: '/api/ocr',
|
|
||||||
endpoints: [
|
|
||||||
{ path: '/samples', method: 'GET', description: 'Training-Samples' },
|
|
||||||
{ path: '/labels', method: 'GET', description: 'Label-Kategorien' },
|
|
||||||
{ path: '/train', method: 'POST', description: 'Training starten' },
|
|
||||||
]
|
|
||||||
},
|
|
||||||
frontend: {
|
|
||||||
adminV2Page: '/ai/ocr-labeling',
|
|
||||||
oldAdminPage: '/admin/ocr-labeling',
|
|
||||||
status: 'not-connected'
|
|
||||||
},
|
|
||||||
priority: 'medium'
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
id: 'rag-management',
|
id: 'rag-management',
|
||||||
name: 'RAG & Daten',
|
name: 'RAG & Daten',
|
||||||
|
|||||||
@@ -42,18 +42,8 @@ export const navigation: NavCategory[] = [
|
|||||||
description: 'LLM, OCR, RAG & Machine Learning',
|
description: 'LLM, OCR, RAG & Machine Learning',
|
||||||
modules: [
|
modules: [
|
||||||
// -----------------------------------------------------------------------
|
// -----------------------------------------------------------------------
|
||||||
// KI-Daten-Pipeline: OCR -> Indexierung -> Suche
|
// KI-Daten-Pipeline: Indexierung -> Suche
|
||||||
// -----------------------------------------------------------------------
|
// -----------------------------------------------------------------------
|
||||||
{
|
|
||||||
id: 'ocr-labeling',
|
|
||||||
name: 'OCR-Labeling',
|
|
||||||
href: '/ai/ocr-labeling',
|
|
||||||
description: 'Handschrift-Training & Labels',
|
|
||||||
purpose: 'Labeln Sie Handschrift-Samples fuer das Training von TrOCR-Modellen. Erstellen Sie Ground Truth Daten, die zur RAG Pipeline exportiert werden koennen.',
|
|
||||||
audience: ['Entwickler', 'Data Scientists', 'QA'],
|
|
||||||
oldAdminPath: '/admin/ocr-labeling',
|
|
||||||
subgroup: 'KI-Daten-Pipeline',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
id: 'rag-pipeline',
|
id: 'rag-pipeline',
|
||||||
name: 'RAG Pipeline',
|
name: 'RAG Pipeline',
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
/**
|
/**
|
||||||
* Shared Types & Constants for AI Modules
|
* Shared Types & Constants for AI Modules
|
||||||
*
|
*
|
||||||
* Diese Datei enthält gemeinsame Typen und Konstanten für die drei AI-Module:
|
* Diese Datei enthält gemeinsame Typen und Konstanten für die AI-Module:
|
||||||
* - OCR-Labeling: Ground Truth für Handschrift-OCR
|
|
||||||
* - RAG Pipeline: Dokument-Indexierung (NiBiS, EH, Schulordnungen)
|
* - RAG Pipeline: Dokument-Indexierung (NiBiS, EH, Schulordnungen)
|
||||||
* - Daten & RAG: Vektor-Suche & Collection-Mapping
|
* - Daten & RAG: Vektor-Suche & Collection-Mapping
|
||||||
*
|
*
|
||||||
@@ -50,11 +49,6 @@ export type IndexingJobStatus =
|
|||||||
| 'failed'
|
| 'failed'
|
||||||
| 'paused'
|
| 'paused'
|
||||||
|
|
||||||
/**
|
|
||||||
* Status für OCR-Labeling Items
|
|
||||||
*/
|
|
||||||
export type OCRLabelingStatus = 'pending' | 'confirmed' | 'corrected' | 'skipped'
|
|
||||||
|
|
||||||
// =============================================================================
|
// =============================================================================
|
||||||
// Cross-Module Navigation
|
// Cross-Module Navigation
|
||||||
// =============================================================================
|
// =============================================================================
|
||||||
@@ -80,16 +74,9 @@ export interface AIModuleLink {
|
|||||||
/**
|
/**
|
||||||
* KI-Daten-Pipeline Module
|
* KI-Daten-Pipeline Module
|
||||||
* Diese Module bilden eine zusammenhaengende Pipeline mit Datenfluss.
|
* Diese Module bilden eine zusammenhaengende Pipeline mit Datenfluss.
|
||||||
* Datenfluss: OCR-Labeling → RAG Pipeline → Daten & RAG
|
* Datenfluss: RAG Pipeline → Daten & RAG
|
||||||
*/
|
*/
|
||||||
export const AI_PIPELINE_MODULES: AIModuleLink[] = [
|
export const AI_PIPELINE_MODULES: AIModuleLink[] = [
|
||||||
{
|
|
||||||
id: 'ocr-labeling',
|
|
||||||
name: 'OCR-Labeling',
|
|
||||||
href: '/ai/ocr-labeling',
|
|
||||||
description: 'Handschrift-Training & Ground Truth Erfassung',
|
|
||||||
icon: '🏷️',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
id: 'rag-pipeline',
|
id: 'rag-pipeline',
|
||||||
name: 'RAG Pipeline',
|
name: 'RAG Pipeline',
|
||||||
@@ -142,21 +129,7 @@ export const AI_MODULES: AIModuleLink[] = [
|
|||||||
*/
|
*/
|
||||||
export const AI_MODULE_RELATIONS: Record<string, AIModuleLink[]> = {
|
export const AI_MODULE_RELATIONS: Record<string, AIModuleLink[]> = {
|
||||||
// KI-Daten-Pipeline Relations
|
// KI-Daten-Pipeline Relations
|
||||||
'ocr-labeling': [
|
|
||||||
{
|
|
||||||
id: 'rag-pipeline',
|
|
||||||
name: 'RAG Pipeline',
|
|
||||||
href: '/ai/rag-pipeline',
|
|
||||||
description: 'Trainierte Daten indexieren',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
'rag-pipeline': [
|
'rag-pipeline': [
|
||||||
{
|
|
||||||
id: 'ocr-labeling',
|
|
||||||
name: 'OCR-Labeling',
|
|
||||||
href: '/ai/ocr-labeling',
|
|
||||||
description: 'Ground Truth erstellen',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
id: 'rag',
|
id: 'rag',
|
||||||
name: 'Daten & RAG',
|
name: 'Daten & RAG',
|
||||||
@@ -214,17 +187,9 @@ export interface DataFlowConnection {
|
|||||||
/**
|
/**
|
||||||
* Definiert den Datenfluss zwischen den AI-Modulen
|
* Definiert den Datenfluss zwischen den AI-Modulen
|
||||||
*
|
*
|
||||||
* OCR-Labeling → RAG Pipeline: Ground Truth für Training
|
|
||||||
* RAG Pipeline → Daten & RAG: Embeddings für Vektor-Suche
|
* RAG Pipeline → Daten & RAG: Embeddings für Vektor-Suche
|
||||||
* Daten & RAG → Klausur-Korrektur: RAG-Suche für Bewertung
|
|
||||||
*/
|
*/
|
||||||
export const DATA_FLOW_CONNECTIONS: DataFlowConnection[] = [
|
export const DATA_FLOW_CONNECTIONS: DataFlowConnection[] = [
|
||||||
{
|
|
||||||
from: 'ocr-labeling',
|
|
||||||
to: 'rag-pipeline',
|
|
||||||
label: 'Ground Truth',
|
|
||||||
description: 'Gelabelte Handschriftproben für OCR-Training',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
from: 'rag-pipeline',
|
from: 'rag-pipeline',
|
||||||
to: 'rag',
|
to: 'rag',
|
||||||
@@ -241,16 +206,6 @@ export const DATA_FLOW_CONNECTIONS: DataFlowConnection[] = [
|
|||||||
* Backend-Endpunkte für die AI-Module
|
* Backend-Endpunkte für die AI-Module
|
||||||
*/
|
*/
|
||||||
export const AI_API_ENDPOINTS = {
|
export const AI_API_ENDPOINTS = {
|
||||||
/** OCR-Labeling Endpoints */
|
|
||||||
OCR_LABELING: {
|
|
||||||
SESSIONS: '/api/v1/ocr-label/sessions',
|
|
||||||
QUEUE: '/api/v1/ocr-label/queue',
|
|
||||||
CONFIRM: '/api/v1/ocr-label/confirm',
|
|
||||||
CORRECT: '/api/v1/ocr-label/correct',
|
|
||||||
SKIP: '/api/v1/ocr-label/skip',
|
|
||||||
STATS: '/api/v1/ocr-label/stats',
|
|
||||||
EXPORT: '/api/v1/ocr-label/export',
|
|
||||||
},
|
|
||||||
/** RAG Pipeline Endpoints */
|
/** RAG Pipeline Endpoints */
|
||||||
RAG_PIPELINE: {
|
RAG_PIPELINE: {
|
||||||
JOBS: '/api/ai/rag-pipeline?action=jobs',
|
JOBS: '/api/ai/rag-pipeline?action=jobs',
|
||||||
|
|||||||
Reference in New Issue
Block a user