diff --git a/backend/src/main/java/org/raddatz/familienarchiv/search/NlpClient.java b/backend/src/main/java/org/raddatz/familienarchiv/search/NlpClient.java new file mode 100644 index 00000000..c7889c7e --- /dev/null +++ b/backend/src/main/java/org/raddatz/familienarchiv/search/NlpClient.java @@ -0,0 +1,5 @@ +package org.raddatz.familienarchiv.search; + +public interface NlpClient { + NlpExtraction parse(String query, String lang); +} diff --git a/backend/src/main/java/org/raddatz/familienarchiv/search/NlpExtraction.java b/backend/src/main/java/org/raddatz/familienarchiv/search/NlpExtraction.java new file mode 100644 index 00000000..73c36027 --- /dev/null +++ b/backend/src/main/java/org/raddatz/familienarchiv/search/NlpExtraction.java @@ -0,0 +1,14 @@ +package org.raddatz.familienarchiv.search; + +import java.time.LocalDate; +import java.util.List; + +record NlpExtraction( + List personNames, + String personRole, + LocalDate dateFrom, + LocalDate dateTo, + List keywords, + String rawQuery +) { +} diff --git a/backend/src/main/java/org/raddatz/familienarchiv/search/NlpHealthClient.java b/backend/src/main/java/org/raddatz/familienarchiv/search/NlpHealthClient.java new file mode 100644 index 00000000..a02475c2 --- /dev/null +++ b/backend/src/main/java/org/raddatz/familienarchiv/search/NlpHealthClient.java @@ -0,0 +1,5 @@ +package org.raddatz.familienarchiv.search; + +public interface NlpHealthClient { + boolean isHealthy(); +}