From 19e957153f6cababb3089559bb2104dd3c7e358d Mon Sep 17 00:00:00 2001 From: sebastjanartic <45803536-sebastjanartic@users.noreply.replit.com> Date: Tue, 2 Sep 2025 14:32:40 +0000 Subject: [PATCH] Improve AI description generation to handle different content types Update the AI service to allow specifying content type (e.g., 'oddaja' for shows) and adjust prompts accordingly to generate more relevant descriptions for various media formats. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1 Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R --- attached_assets/image_1756823508255.png | Bin 0 -> 47362 bytes server/aiService.ts | 32 ++++++++++++++++++------ server/routes.ts | 3 ++- 3 files changed, 26 insertions(+), 9 deletions(-) create mode 100644 attached_assets/image_1756823508255.png diff --git a/attached_assets/image_1756823508255.png b/attached_assets/image_1756823508255.png new file mode 100644 index 0000000000000000000000000000000000000000..7cca946c2ac0c2469d796b1707954ab9b73a35d1 GIT binary patch literal 47362 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

%2JBm7-EYe}_ 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 d5ZCwi7 `${i+1}. ${desc.substring(0, 100)}...`).join('\n')}\n\nErstelle eine VÖLLIG ANDERE Beschreibung mit anderen Worten, Fokus und Stil.` : ''; - const prompt = `Analysiere diesen Musikvideo-Titel: "${title}" + // Determine content type specific instructions + const isShow = contentType === 'oddaja'; + const contentTypeText = isShow ? 'Show/Sendung-Titel' : 'Musikvideo-Titel'; + const contentDescription = isShow + ? `WICHTIG: Dies ist eine TV-SENDUNG/SHOW (oddaja), NICHT ein Musikvideo! -Schreibe auf DEUTSCH eine informative Beschreibung. - -Aus dem Titel extrahieren: +Analysiere den Show-Titel und beschreibe: +- Die Show/Sendung und ihr Format +- Die Gastgeber oder Moderatoren +- Das Thema oder den Inhalt der Episode +- Für wen die Show gedacht ist (Zielgruppe) +- Art der Sendung (Talk-Show, Musiksendung, Unterhaltung, etc.)` + : `Aus dem Titel extrahieren: - Name des Interpreten/Künstlers - Titel des Liedes/Stücks - Art des Inhalts (Lied, Instrumental, Live-Auftritt, etc.) @@ -65,7 +75,13 @@ Erstelle eine informative Beschreibung, die Folgendes beinhaltet: ${includeArtistInfo ? '- Informationen über den Interpreten (Musikstil, kurze Geschichte, bekannte Stücke)' : ''} - Beschreibung des Musikstils und Genres - Kurzer Hintergrund zum Stück, falls bekannt -- Wofür es gedacht ist (Tanz, Zuhören, Konzert, etc.) +- Wofür es gedacht ist (Tanz, Zuhören, Konzert, etc.)`; + + const prompt = `Analysiere diesen ${contentTypeText}: "${title}" + +Schreibe auf DEUTSCH eine informative Beschreibung. + +${contentDescription} NUR wenn du SICHERE Informationen hast, erwähne: ${includeLabelInfo ? '- Label/Plattenfirma (nur wenn du es sicher weißt)' : ''} @@ -74,7 +90,7 @@ Wenn du keine sicheren Informationen zu einem Punkt hast, lasse ihn WEG. Schreib Die Beschreibung soll maximal ${maxCharacters} Zeichen lang sein. Schreibe in einem freundlichen, informativen Ton. -Verwende nicht die Wörter "Video" oder "Aufnahme" - schreibe über die Musik selbst. +${isShow ? 'Beschreibe die Show/Sendung, nicht die Musik.' : 'Verwende nicht die Wörter "Video" oder "Aufnahme" - schreibe über die Musik selbst.'} ${customInstructions ? `\nZUSÄTZLICHE ANWEISUNGEN: ${customInstructions}` : ''} Schreibe nur die Beschreibung, keine zusätzlichen Erklärungen.${avoidRepetition}";` @@ -85,7 +101,7 @@ Schreibe nur die Beschreibung, keine zusätzlichen Erklärungen.${avoidRepetitio messages: [ { role: "system", - content: "Du bist ein Musikexperte und hilfst bei der Erstellung hochwertiger Beschreibungen für Musikinhalte. Du antwortest immer auf Deutsch und vermeidest Wiederholungen." + content: `Du bist ein ${isShow ? 'Medien- und TV-Show-Experte' : 'Musikexperte'} und hilfst bei der Erstellung hochwertiger Beschreibungen für ${isShow ? 'TV-Sendungen und Shows' : 'Musikinhalte'}. Du antwortest immer auf Deutsch und vermeidest Wiederholungen.` }, { role: "user", diff --git a/server/routes.ts b/server/routes.ts index 170ad09..fc17268 100644 --- a/server/routes.ts +++ b/server/routes.ts @@ -1108,7 +1108,8 @@ export async function registerRoutes(app: Express): Promise { language: "german", includeArtistInfo, includeLabelInfo, - customInstructions + customInstructions, + contentType: video.contentType || 'music_video' }); console.log("Generated description:", description); // Debug log