Class: AiScreenAnalyzer::AiAnalyzerController

Inherits:
ActionController::Base
  • Object
show all
Defined in:
app/controllers/ai_screen_analyzer/ai_analyzer_controller.rb

Instance Method Summary collapse

Instance Method Details

#analyze_screenObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'app/controllers/ai_screen_analyzer/ai_analyzer_controller.rb', line 9

def analyze_screen
  begin
    image_data = params[:image]
    prompt = params[:prompt]

    # Validar parâmetros
    return render_error('Imagem não fornecida') if image_data.blank?
    return render_error('Prompt não fornecido') if prompt.blank?

    # Remover data URI prefix se presente
    image_data = image_data.sub(/^data:image\/\w+;base64,/, '')

    # Chamar API do GPT-4V
    analysis = analyze_with_gpt4v(image_data, prompt)

    render json: {
      success: true,
      analysis: analysis
    }
  rescue StandardError => e
    render_error(e.message)
  end
end