Actions
개발 #3
closed[스터디] PDF 인식 및 텍스트 생성 모델 확인
Files
Updated by 개발팀 이석화 about 1 year ago · Edited
현황¶
- 8B 이미지 모델 사용시 메모리 부족 및 속도 너무느림 -> mulit GPU 처리 필요
-
AI 서빙 프레임워크 선정
- vllm, TGI 등 에서 모두 CUDA 커널 문제로 인해 정상실행 불가능 -> Ollama 사용
-
사용할 모델 선정
- Gemma3:4b (이미지 인식기능 + 한글인식 기능)
- Gemma3:12b 는 속도가 느림 (4b = 16초, 12b = 34초)
모델 서빙방식 비교¶
- fastAPI + Transformer 직접배포 vs Ollama + WebUI 로 같은모델 사용 비교
- 메모리 = 직접 배포시 모델의 메모리 점유율 약 2배 증가
- 속도 = 직접 배포시 텍스트가 전부 생성되어야 전달하기 때문에 속도차이도 많음
- fastAPI로 직접 배포하는 것은 모델에 맞게 최적화 및 동시성, 스트리밍 응답 등의 AI 서빙 프레임워크 기능을 직접 개발해야한다
개발규모가 너무 커지기 때문에 기존 AI 서빙 프레임워크 사용필요 - gemma3:4b 모델 답변속도
- fastAPI = 2분 11초
- Ollama = 16초

OCR 모델¶
GOT-OCR2_0 (X - Torch 라이브러리 버전이 과거라 LLM 모델과 같이쓰기 힘듦)
Qwen2-VL-OCR-2B-Instruct (X - 내용을 추출하는게 아니라 내용을 이해해서 설명하는 모델 -> 쿼리에 따라 OCR 가능)
Nanonets-OCR-s (X - 비상업용 라이선스, Apache2.0으로 잘못 표기된 상태, 허깅페이스 community 참조)
donut-base-finetuned-docvqa (X - 내용을 이해해서 설명하는 모델)
RolmOCR (X - 모델이 너무 커서 오래걸림 + 메모리 부족)
번역 모델 (x, Gemma3 에서 자체 한글인식)¶
t5-base
opus-mt-ko-en
llama3-eng-ko-8-llama
텍스트 생성 모델 (질문 = "하늘은 왜 파란색이야?")¶
- gpt2 (x)
- 답변
"왜 하늘은 파란색이야?에서 이도했요 과상에서 동에서 닰스 어숭으로 기야 수성을 다일 감도 무습니다.동에서 이도했요 이래하늘 기야 수성을 다일 감도 무습니다.동에서 이래하늘 무습니다.동에서 이래하늘 무습니다.동에서 이래하늘 무습니"
- 답변
- DeepSeek-R1-Distill-Llama-8B (x)
- 답변
"하늘은 왜 파란색이야? Why is the sky blue?\nIt's the scattering of light by the atmosphere that gives the sky its blue color. When sunlight enters the Earth's atmosphere, it interacts with the molecules and small particles in the air. These interactions cause the sunlight to scatter"
- 답변
- Llama-3.1-8B-Instruct (x) (모델명에 Llama 붙여야 함, 문서 공개 필요, 월 7억명 이상 사용시 별도 라이선스 필요)
- 답변
"하늘은 왜 파란색이야? 하늘은 왜 파란색이야?\n하늘은 왜 파란색이야? 하늘은 왜 파란색이야?\n하늘은 왜 파란색이야? 하늘은 왜 파란색이야?\n하늘은 왜 파"
- 답변
- llama-3-Korean-Bllossom-8B
- 답변
"하늘은 왜 파란색이야? 하늘의 색은 주로 태양광과 지구 대기 중의 가스 분포에 의해 결정된다. 태양광은 주로 청색과 청록색의 빛을 포함하고 있으며, 이 빛이 지구" - 답변 시간이 너무 오래 걸림
- 답변
- Gemma3
- 따로 학습시키지 않아도 한글인식 됨 + 이미지 인식가능
- 답변
**하늘이 파란색으로 보이는 이유는 **레일리 산란**이라는 현상 때문입니다. 좀 더 자세히 설명해 드릴게요.\n\n**1. 햇빛과 빛의 파동:**\n\n* 햇빛은 여러 색깔의 빛이 섞여 있는 것입니다. 빨간색, 주황색, 노란색, 초록색, 파란색, 보라색 등 다양한 색깔의 빛은 모두 파동의 형태로**
구현절차 (x - Ollama 사용)¶
- API로 pdf 파일 업로드
- OCR 모델로 파일에서 텍스트 추출
- LLM 모델로 파일내용 요약
- 요약내용 DB 저장
기타¶
- GPU 서버의 P5000 은 구형 커널이라 vLLM 사용 못함 -> FastAPI로 직접구현 필요
-
pip install accelerate,accelerate config진행해야 GPU 여러개 사용 가능 - TGI
docker run --gpus all --shm-size 1g -p 8080:80 -v $PWD/data:/data ghcr.io/huggingface/text-generation-inference:3.3.4 --model-id MLP-KTLim/llama-3-Korean-Bllossom-8B - 도커 데스크탑에서 호스트는 cuda 설치필요 없음, cuda 설치시 그래픽 드라이버도 세트로 설치되서 도커 데스크탑에서 gpu 사용시 에러 발생
Updated by 개발팀 이석화 about 1 year ago
Ollama API 사용법 정리¶
http://192.168.1.86:11434/api/generate- 일반 텍스트 프롬프트
-
stream: true이면 답변이 완료될때 까지 실시간으로 응답받음 (웹에서 출력시 SSE 필요)
{
"model": "gemma3:4b",
"prompt": "하늘은 왜 파란색이야?",
"stream": false
}
- 이미지 첨부 프롬프트
{
"model": "gemma3:4b",
"prompt": "이미지의 모든 문자열을 추출해줘.",
"images": ["이미지_BASE64_변환문자열"],
"stream": false
}
Updated by 개발팀 이석화 about 1 year ago · Edited
Actions