diff --git a/src/config.py b/src/config.py index c0d0a18..f868a92 100644 --- a/src/config.py +++ b/src/config.py @@ -43,5 +43,12 @@ SUMMARY_PROMPT = """Dokonaj przeformułowania do bardziej czytelnej formy z zach Użyj formatu Markdown dla lepszej czytelności. Upewnij się, że wszystkie znaki specjalne Markdown (*, _, [], (), #, `, ~) są poprawnie escapowane (poprzedzone znakiem \). +Przetłumaczony transkrypt: +{transcript}""" + +DETAILED_SUMMARY_PROMPT = """Dokonaj streszczenia zachowaniem wszystkich nawet najmniejszych szczegółów poniższego transkryptu w języku polskim z podziałem na sekcje tematyczne. +Użyj formatu Markdown dla lepszej czytelności. +Upewnij się, że wszystkie znaki specjalne Markdown (*, _, [], (), #, `, ~) są poprawnie escapowane (poprzedzone znakiem \). + Przetłumaczony transkrypt: {transcript}""" \ No newline at end of file diff --git a/src/handlers.py b/src/handlers.py index 6613d93..fa99f2a 100644 --- a/src/handlers.py +++ b/src/handlers.py @@ -135,7 +135,7 @@ async def handle_message(update: Update, context: ContextTypes.DEFAULT_TYPE): ) # Jeśli mamy więcej niż 3 fragmenty, generuj końcowe streszczenie - if len(chunks) > 3: + if len(chunks) > 1: await context.bot.send_chat_action(chat_id=chat_id, action='typing') await safe_send_message( context.bot, diff --git a/src/openai_utils.py b/src/openai_utils.py index 97b2683..538d6da 100644 --- a/src/openai_utils.py +++ b/src/openai_utils.py @@ -1,7 +1,7 @@ import logging from typing import Optional, Tuple, Dict, Any, List from openai import AsyncOpenAI # Używamy AsyncOpenAI dla kompatybilności z asyncio -from .config import OPENAI_API_KEY, SUMMARY_PROMPT +from .config import OPENAI_API_KEY, SUMMARY_PROMPT, DETAILED_SUMMARY_PROMPT logger = logging.getLogger(__name__) @@ -236,12 +236,12 @@ async def summarize_text(text: str, is_partial: bool = False, part_num: int = 0, Połączone streszczenia: {text}""" elif is_partial: - prompt = f"""{SUMMARY_PROMPT.format(transcript=text)} + prompt = f"""{DETAILED_SUMMARY_PROMPT.format(transcript=text)} Fragment transkryptu (część {part_num}/{total_parts}): {text}""" else: - prompt = SUMMARY_PROMPT.format(transcript=text) + prompt = DETAILED_SUMMARY_PROMPT.format(transcript=text) logger.debug(f"Długość tekstu do streszczenia: {len(text)} znaków")