habulaj commited on
Commit
12f548b
·
verified ·
1 Parent(s): 56a7353

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +6 -3
main.py CHANGED
@@ -369,7 +369,7 @@ Se o contexto enviado pelo usuário não for verdadeiro ou estiver impreciso, ig
369
  print(f"🧠 Enviando para Gemini ({request.model})...")
370
 
371
  # Envio do prompt + arquivo (vídeo) pro Gemini
372
- response_gemini = await client.generate_content(prompt, files=[video_path_to_analyze], model=model_obj, stall_timeout=120)
373
 
374
  titles_data = extract_json_from_text(response_gemini.text)
375
  if not titles_data:
@@ -490,7 +490,10 @@ async def generate_subtitle(request: GeminiSubtitleRequest):
490
  # Contexto padrão solicitado caso não haja
491
  default_context = "Separe as legendas quando houver muito texto concentrado em apenas uma. Divida o conteúdo de forma adequada e faça a tradução com precisão. Se necessário, use o timing das falas (palavra por palavra) como referência para separar as legendas corretamente. Quando houver música, legende a letra colocando ♪ no início e no fim, e pesquise a tradução correta da música. Quando não houver música, legende apenas as falas."
492
 
493
- contexto_final = request.context if request.context and request.context.strip() != "N/A" else default_context
 
 
 
494
 
495
  prompt = f"""
496
  IDIOMA: A legenda traduzida DEVE ser inteiramente em PORTUGUÊS DO BRASIL (pt-BR). Independente do idioma original do vídeo.
@@ -581,7 +584,7 @@ INSTRUÇÕES/CONTEXTO DO USUÁRIO (OPCIONAL): {contexto_final}
581
  {word_level_text}
582
  """
583
  model_obj = get_gemini_model(request.model)
584
- response_gemini = await client.generate_content(prompt, files=[processed_audio_path], model=model_obj, stall_timeout=120)
585
  cleaned_srt = clean_and_validate_srt(response_gemini.text)
586
 
587
  if request.time_start and request.time_start > 0:
 
369
  print(f"🧠 Enviando para Gemini ({request.model})...")
370
 
371
  # Envio do prompt + arquivo (vídeo) pro Gemini
372
+ response_gemini = await client.generate_content(prompt, files=[video_path_to_analyze], model=model_obj)
373
 
374
  titles_data = extract_json_from_text(response_gemini.text)
375
  if not titles_data:
 
490
  # Contexto padrão solicitado caso não haja
491
  default_context = "Separe as legendas quando houver muito texto concentrado em apenas uma. Divida o conteúdo de forma adequada e faça a tradução com precisão. Se necessário, use o timing das falas (palavra por palavra) como referência para separar as legendas corretamente. Quando houver música, legende a letra colocando ♪ no início e no fim, e pesquise a tradução correta da música. Quando não houver música, legende apenas as falas."
492
 
493
+ if request.context and request.context.strip() != "N/A":
494
+ contexto_final = f"{default_context}\n\nCONTEXTO ADICIONAL DO USUÁRIO:\n{request.context.strip()}"
495
+ else:
496
+ contexto_final = default_context
497
 
498
  prompt = f"""
499
  IDIOMA: A legenda traduzida DEVE ser inteiramente em PORTUGUÊS DO BRASIL (pt-BR). Independente do idioma original do vídeo.
 
584
  {word_level_text}
585
  """
586
  model_obj = get_gemini_model(request.model)
587
+ response_gemini = await client.generate_content(prompt, files=[processed_audio_path], model=model_obj)
588
  cleaned_srt = clean_and_validate_srt(response_gemini.text)
589
 
590
  if request.time_start and request.time_start > 0: