silvacarl
(Carl L Silva)
1
첫째, 여러분의 AI 기능은 정말 훌륭합니다!
둘째, 포럼에 PDF나 Word, PowerPoint 파일을 게시하면, 이 파일들도 읽어서 RAG를 위해 벡터로 분할(chunk)할 수 있나요?
2개의 좋아요
sam
(Sam Saffron)
2
아쉽게도 아직 PDF를 지원하지 않으며, 이를 검토하고 있습니다. Persona 및 Tool RAG 구현에서는 TXT 파일을 지원합니다. 따라서 원본 자료를 텍스트 파일로 변환할 수 있다면, 이를 Persona에서 사용할 수 있습니다.
3개의 좋아요
silvacarl
(Carl L Silva)
3
네, 저희가 그렇게 했습니다. 첨부 파일을 텍스트로 변환한 뒤 각 주제와 연결했습니다.
1개의 좋아요
Saif
(Saif Murtaza )
4
이러한 피드백을 몇 번 확인했으며, 향후 AI 봇 페르소나 및 Tool RAG 구현을 통해 확장자 지원을 확대하는 방안을 검토하고 있습니다.
4개의 좋아요
silvacarl
(Carl L Silva)
5
지금은 임시 대안으로, 파워포인트나 워드, PDF 파일을 텍스트로 변환한 뒤 해당 파일이 속한 주제에 첨부하고 있습니다.
1개의 좋아요
PDF 지원은 정말 많은 커뮤니티에서 게임 체인저가 될 거예요! 문서의 보편적 표준인 PDF가 그렇다 보니, RAG를 위해 .txt 형식으로 다시 변환해야 하는 경우가 많고, 실제로는 상당한 시간이 걸리는 작업이에요 
6개의 좋아요
Saif
(Saif Murtaza )
7
현재 임베딩(Embeddings) 관련 작업을 마무리하고 있으며, 해당 작업이 완료되는 대로 다음 단계로 PDF 지원을 추가할 예정입니다.
5개의 좋아요
와, 정말 멋지네요. 커뮤니티의 필요를 항상 염두에 두는 팀에게 박수를 보냅니다!
JSON 파일은 어떨까요? AI에서 이 정보를 잃지 않도록 쿼리해야 할 Discord 채팅 내보내기 파일이 정말 많거든요 
모델을 파인튜닝하는 것도 생각해 봤지만, 비슷한 용도를 가진 모든 사람에게 Discourse에 파일을 추가하는 방식이 더 좋고 더 간단할 것 같습니다.
sam
(Sam Saffron)
9
JSON은 단순히 텍스트이므로 이미 지원하고 있습니다.
JSON 형식 내부에 중복이 많아 LLM에는 비효율적인 표현 방식이므로 몇 개의 토큰을 낭비하게 되지만, 전반적으로는 작동합니다. RAG 성능을 개선하기 위해 스크립트를 실행하여 포맷을 다시 정리하는 것을 권장합니다.
JSON은 매우 깊이 중첩될 수 있으며, 최적의 도메인 특화 텍스트 표현을 선택하는 것은 도메인에 크게 의존하기 때문에 이를 자동으로 수행하는 것은 매우 어렵습니다.
3개의 좋아요
샘, 감사합니다. PDF에 약 150MB의 JSON을 추가할 때 성능과 가격을 균형 있게 유지하라는 제안에 대해 여쭤봐도 될까요?
저는 RAG를 우리 데이터에 적용하는 것이 처음이라, 곧 이 프로세스를 배우기 시작할 예정입니다.
커뮤니티 여러분의 의견도 감사히 기다리겠습니다.
솔직히 말하면, 이 커밋은 꽤 아름답네요 
이 기능이 완전히 출시될 일정이 혹시 있을까요? 현재는 숨겨진 사이트 기능으로 되어 있는 것 같습니다.
5개의 좋아요
Saif
(Saif Murtaza )
12
이 작업의 과제 중 하나는 모든 유형의 PDF를 지원하는 것입니다. 상상할 수 있듯이, 일부 PDF는 순수 텍스트로 되어 있어 파싱하기 쉽습니다. 그러나 사용자 정의 폰트, 이미지, 그래픽, 비선형 형식 등이 포함된 PDF도 있습니다.
모든 유형의 PDF가 작동하도록 만드는 방법을 찾고 있는 중이므로, 시간이 좀 걸릴 수 있습니다.
4개의 좋아요
정말 잘 말씀하셨습니다. 저는 DeepSeek가 이제 그 지형을 조금씩 변화시키고 있다고 생각합니다. 소형 DeepSeek 모델을 ollama로 로컬에서 실행하면 이제 고품질 추론을 제공하고 이러한 우려 사항에 대한 해결책이 될 수 있습니다.
번거롭게 해서 죄송합니다. @Saif, 관련 주제에 대해 여기서 도움을 받을 수 있을까요: How to properly debug AI Personas? 감사합니다!
Yenwod
(Chris)
14
이미 훌륭한 플러그인에 이렇게 놀라운 기능을 추가해 주셔서 감사합니다.
PR에서 다음과 같이 언급하고 있습니다:
- RAG 소화 작업(RAG Digestion Job):
DigestRagUpload 작업이 이제 PDF 및 이미지 업로드를 처리합니다. PdfToImages와 ImageToText를 사용하여 텍스트를 추출하고 문서 조각을 생성합니다.
이 작업은 실제로 언제 실행되나요? 제가 직접 시작해야 하는 건가요?
방금 txt 파일 몇 개와 PDF를 업로드했습니다. txt 파일은 즉시 인덱싱되었지만, PDF는 여전히 “인덱싱 준비 완료(ready to be indexed)” 상태입니다.
감사합니다. 
1개의 좋아요
Yenwod
(Chris)
15
작업은 실행 중이지만 버그가 발생하고 있습니다:
Jobs::HandledExceptionWrapper: Wrapped NameError: undefined local variable or method `temp_dir’ for an instance of DiscourseAi::Utils::PdfToImages
저는 셀프 호스팅을 하고 있습니다. 제가 더 깊이 파고들 수 있는 문제일까요?
Saif
(Saif Murtaza )
16
이 기능은 아직 기술적으로 완전히 출시되지 않았으므로 사용을 보류하는 것이 좋습니다. 여기에서 문제가 발생할 수 있습니다.
2개의 좋아요
Yenwod
(Chris)
17
문제를 PdfToImages에서 찾은 것 같습니다:
3개의 좋아요
sam
(Sam Saffron)
18
확인했습니다. 며칠만 시간을 주세요. 기본적으로 활성화할 수 있는 직접 텍스트 추출도 시도해 보고 싶습니다.
그 후 "리치"한 LLM 기반 추출은 플래그 뒤에 두겠습니다.
많은 PDF의 문제는 용량이 매우 크고 서버 리소스에 큰 부하를 줄 수 있다는 점입니다. 또한 tesseract와 같은 도구는 설치가 다소 까다로울 수 있지만, 품질을 향상시킬 수 있습니다.
5개의 좋아요
Yenwod
(Chris)
19
@sam, 저는 셀프 호스팅을 하고 있으며, 현재 tesseract와 씨름하고 있습니다. 설치 자체는 문제없이 되었지만, 작업 실패로 이어질 만큼 심각한 것으로 보이지는 않는 에러가 발생하고 있습니다:
Error during OCR processing: /var/www/discourse/lib/discourse.rb:139:in `exec’: Failed to OCR image with Tesseract
Estimating resolution as 337
해당 에러가 발생했음에도 불구하고, Persona에서는 해당 PDF가 인덱싱된 것으로 표시됩니다.
이것이 RAG에 어떤 영향을 미치는지 정확히 파악이 안 됩니다. 주말에 더 깊이 파헤쳐 보겠습니다.
빠르게 답변해 주셔서 감사합니다.
2개의 좋아요
sam
(Sam Saffron)
20
현재 평가(eval)가 하나 있고(더 추가하고 싶습니다), 기본적으로 모델이 근거(grounding)를 갖추지 않으면 이미지에서 텍스트로 변환하는 품질이 모델에 따라 크게 달라집니다.
다만 좋은 점은 PDF의 경우 손실 없이 텍스트를 추출할 수 있으며, 원할 경우 LLM을 이용해 이를 개선하는 단계(골드 플레이트)로만 의존할 수 있다는 것입니다. 다음 주쯤 관련 내용을 준비할 예정입니다.
6개의 좋아요