habulaj commited on
Commit
c5665bf
·
verified ·
1 Parent(s): 6ced953

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +15 -4
main.py CHANGED
@@ -389,6 +389,7 @@ Se o contexto enviado pelo usuário não for verdadeiro ou estiver impreciso, ig
389
 
390
  class VideoFilterRequest(BaseModel):
391
  video_url: str
 
392
 
393
  @app.post("/video-filter")
394
  async def video_filter_endpoint(request: VideoFilterRequest):
@@ -410,16 +411,23 @@ async def video_filter_endpoint(request: VideoFilterRequest):
410
 
411
  video_path_to_analyze = temp_file.name
412
 
413
- prompt = """Analise o vídeo anexado e retorne um JSON, apenas o JSON, sem texto adicional, de um filtro sobre o vídeo.
 
 
414
 
415
- Base do JSON: {
 
416
  "viralization_probability": 88,
417
  "sensitive_content": false,
418
  "political_content": false,
419
  "should_post": true
420
- }
 
 
 
 
421
 
422
- Estou criando uma página do Instagram e quero saber o que postar ou não postar.
423
 
424
  viralization_probability
425
 
@@ -437,6 +445,9 @@ should_post
437
 
438
  Decisão final da IA indicando se o vídeo deve ou não ser postado. Essa decisão deve considerar todos os fatores anteriores, como potencial de viralização, presença de conteúdo sensível, política, marca d’água e outros sinais relevantes."""
439
 
 
 
 
440
  model_obj = get_gemini_model("flash")
441
  print(f"🧠 Enviando para Gemini (flash) para filtro de vídeo...")
442
 
 
389
 
390
  class VideoFilterRequest(BaseModel):
391
  video_url: str
392
+ context: Optional[str] = None
393
 
394
  @app.post("/video-filter")
395
  async def video_filter_endpoint(request: VideoFilterRequest):
 
411
 
412
  video_path_to_analyze = temp_file.name
413
 
414
+ contexto_add = f"\n\nContexto Adicional / Legenda Original:\n{request.context}" if request.context else ""
415
+
416
+ prompt = f"""Analise o vídeo anexado e retorne um JSON, apenas o JSON, sem texto adicional, de um filtro sobre o vídeo.
417
 
418
+ Base do JSON: {{
419
+ "description": "Explicação detalhada sobre o que acontece no vídeo, contexto visual e assunto discutido.",
420
  "viralization_probability": 88,
421
  "sensitive_content": false,
422
  "political_content": false,
423
  "should_post": true
424
+ }}
425
+
426
+ Estou criando uma página do Instagram e quero saber o que postar ou não postar.{contexto_add}
427
+
428
+ description
429
 
430
+ Descrição e explicação detalhada sobre o que o vídeo se trata. Descreva o visual, as ações, pessoas envolvidas e, de forma resumida, o assunto principal.
431
 
432
  viralization_probability
433
 
 
445
 
446
  Decisão final da IA indicando se o vídeo deve ou não ser postado. Essa decisão deve considerar todos os fatores anteriores, como potencial de viralização, presença de conteúdo sensível, política, marca d’água e outros sinais relevantes."""
447
 
448
+ # get_gemini_model("flash") chamará "Model.G_3_0_FLASH", que é o modelo Flash rápido.
449
+ # A demora de alguns segundos é comum porque o vídeo precisa ser enviado e processado
450
+ # nos servidores do Gemini, o que leva alguns segundos pelo próprio tamanho do vídeo.
451
  model_obj = get_gemini_model("flash")
452
  print(f"🧠 Enviando para Gemini (flash) para filtro de vídeo...")
453