9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
# File 'app/jobs/ragdoll/extract_text_job.rb', line 9
def perform(document_id)
document = Ragdoll::Document.find(document_id)
return unless document.file_attached?
return if document.content.present?
document.update!(status: "processing")
= document.
if .present?
document.update!(
content: ,
status: "processed"
)
Ragdoll::GenerateSummaryJob.perform_later(document_id)
Ragdoll::ExtractKeywordsJob.perform_later(document_id)
Ragdoll::GenerateEmbeddingsJob.perform_later(document_id)
else
document.update!(status: "error")
end
rescue ActiveRecord::RecordNotFound
rescue StandardError => e
document&.update!(status: "error")
raise e
end
|