fix Analyse

This commit is contained in:
nadja
2026-08-26 15:41:44 +02:00
parent 146dad6f79
commit dbd31c6cd0
7 changed files with 22 additions and 30 deletions

View File

@@ -2,8 +2,8 @@ FROM node:20-alpine
WORKDIR /app WORKDIR /app
COPY package.json package-lock.json ./ COPY package.json ./
RUN npm ci --omit=dev RUN npm install --omit=dev
COPY . . COPY . .

View File

@@ -1,4 +0,0 @@
{
"events": [],
"_counter": 0
}

View File

@@ -13,7 +13,11 @@ function loadDB() {
} }
function saveDB(data) { function saveDB(data) {
try {
writeFileSync(DB_FILE, JSON.stringify(data, null, 2)); writeFileSync(DB_FILE, JSON.stringify(data, null, 2));
} catch (e) {
console.error('DB Schreibfehler:', e.message);
}
} }
let db = loadDB(); let db = loadDB();

View File

@@ -10,7 +10,6 @@
"bcryptjs": "^2.4.3", "bcryptjs": "^2.4.3",
"cors": "^2.8.5", "cors": "^2.8.5",
"express": "^4.21.0", "express": "^4.21.0",
"jsonwebtoken": "^9.0.2", "jsonwebtoken": "^9.0.2"
"node-fetch": "^3.3.2"
} }
} }

View File

@@ -1,25 +1,18 @@
export const SYSTEM_PROMPT = `Du bist ein Assistent der aus TikTok-Videobeschreibungen Rezepte extrahiert. export const SYSTEM_PROMPT = `Du bist ein Experte für die Rezepteextraktion. Analysiere den gegebenen Text und extrahiere ein Rezept daraus.
Du antwortest NUR mit validem JSON, keinem anderen Text.
Das JSON muss dieses Schema haben: Antworte NUR mit einem JSON-Objekt in diesem Format (kein Markdown, kein Text davor oder danach):
{ {
"name": "Name des Rezepts", "name": "Name des Rezepts",
"description": "Kurze Beschreibung des Gerichts", "description": "Kurze Beschreibung des Gerichts",
"category": "Frühstück|Hauptgericht|Dessert|Snack|Getränk|Sonstiges", "ingredients": ["Zutat 1 (Menge)", "Zutat 2 (Menge)"],
"ingredients": [ "steps": ["Schritt 1", "Schritt 2"],
{ "name": "Zutat", "amount": "Menge", "unit": "Einheit" } "category": "Kategorie (z.B. Hauptgericht, Dessert, Snack, Suppe, Salat, Getränk, Sonstiges)"
],
"steps": [
"Schritt 1 Beschreibung",
"Schritt 2 Beschreibung"
]
} }
Regeln: Regeln:
- Extrahiere alle Zutaten mit Menge und Einheit aus dem Text - Alle Texte auf Deutsch
- Wenn keine Menge angegeben ist, setze amount auf "" - Mengenangaben beibehalten wenn vorhanden
- Wenn keine Einheit angegeben ist, setze unit auf "" - Schritte logisch sortieren
- Kategorie muss eines dieser sein: Frühstück, Hauptgericht, Dessert, Snack, Getränk, Sonstiges - Kategorie sinnvoll zuordnen
- steps ist eine sortierte Liste der Zubereitungsschritte - Wenn Informationen fehlen, sinnvolle Werte verwenden
- Wenn du die Zubereitung nicht erkennen kannst, gib einen sinnvollen Standard basierend auf dem Rezeptnamen - Antworte NUR mit dem JSON-Objekt`;
- Gib NUR das JSON-Objekt zurück, kein Markdown, kein Code-Block`;

View File

@@ -2,8 +2,8 @@ FROM node:20-alpine AS build
WORKDIR /app WORKDIR /app
COPY package.json package-lock.json ./ COPY package.json ./
RUN npm ci RUN npm install
COPY . . COPY . .
RUN npm run build RUN npm run build

View File

@@ -6,7 +6,7 @@ server {
index index.html; index index.html;
location /api/ { location /api/ {
proxy_pass http://backend:3500; proxy_pass http://backend:3001;
proxy_http_version 1.1; proxy_http_version 1.1;
proxy_set_header Host $host; proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-IP $remote_addr;