Hamdy005 commited on
Commit
02eef30
·
1 Parent(s): a82568e

feat: configure LLM generation parameters and implement text truncation for summarization inputs

Browse files
Files changed (2) hide show
  1. rag/rag.py +3 -0
  2. summary_generator/summary.py +15 -0
rag/rag.py CHANGED
@@ -135,6 +135,9 @@ def get_llm():
135
  model=settings.model_name,
136
  base_url=settings.openrouter_base_url,
137
  api_key=settings.openrouter_api_key,
 
 
 
138
  )
139
 
140
 
 
135
  model=settings.model_name,
136
  base_url=settings.openrouter_base_url,
137
  api_key=settings.openrouter_api_key,
138
+ temperature=0.3,
139
+ max_tokens=2000,
140
+ timeout=120,
141
  )
142
 
143
 
summary_generator/summary.py CHANGED
@@ -68,8 +68,23 @@ def clean_summary(text: str) -> str:
68
  return '\n'.join(cleaned)
69
 
70
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
71
  def summarizer(text: str) -> str:
72
  logger.info(f"Summarizer started for text of length {len(text)}")
 
73
  try:
74
  prompt = summarizer_prompt()
75
  llm = get_llm()
 
68
  return '\n'.join(cleaned)
69
 
70
 
71
+ MAX_INPUT_CHARS = 15000
72
+
73
+
74
+ def _truncate_text(text: str, max_chars: int = MAX_INPUT_CHARS) -> str:
75
+ if len(text) <= max_chars:
76
+ return text
77
+ first_len = int(max_chars * 0.6)
78
+ last_len = max_chars - first_len
79
+ first_part = text[:first_len]
80
+ last_part = text[-last_len:]
81
+ logger.info(f"Text truncated from {len(text)} to {max_chars} chars")
82
+ return f"{first_part}\n\n...[content truncated]...\n\n{last_part}"
83
+
84
+
85
  def summarizer(text: str) -> str:
86
  logger.info(f"Summarizer started for text of length {len(text)}")
87
+ text = _truncate_text(text)
88
  try:
89
  prompt = summarizer_prompt()
90
  llm = get_llm()