일반 소개
llm.pdf는 사용자가 PDF 파일에서 직접 LLM(대규모 언어 모델)을 실행할 수 있는 오픈 소스 프로젝트입니다. EvanZhouDev가 개발하고 GitHub에서 호스팅하는 이 프로젝트는 혁신적인 접근 방식을 보여줍니다. llama.cpp asm.js로 컴파일하고 PDF의 JavaScript 삽입 기능과 결합하여 LLM의 추론 프로세스를 PDF 파일에서 완전히 수행할 수 있도록 합니다. 이 프로젝트는 GGUF 형식의 정량적 모델을 지원하며, 최상의 성능을 위해 Q8 정량적 모델을 사용할 것을 권장합니다. 사용자는 제공된 Python 스크립트를 통해 간단하고 효율적으로 LLM이 포함된 PDF 파일을 생성할 수 있습니다. 이 프로젝트는 AI 및 PDF 기술에 관심이 있는 개발자와 연구자를 위해 비전통적인 환경에서 복잡한 AI 모델을 실행할 수 있는 가능성을 보여주는 개념 증명입니다.

체험: https://evanzhoudev.github.io/llm.pdf/
기능 목록
- PDF 파일에서 대용량 언어 모델을 실행하여 텍스트 생성 및 상호 작용을 지원합니다.
- 브라우저 환경에서 모델 추론을 구현하기 위해 Emscripten을 사용하여 llama.cpp를 asm.js로 컴파일합니다.
- GGUF 형식의 정량적 모델이 지원되며, 런타임 속도를 높이려면 Q8 정량화를 권장합니다.
- Python 스크립트 제공
generatePDF.py
LLM이 포함된 PDF 파일을 생성하는 데 사용됩니다. - base64 인코딩을 통해 PDF에 모델 파일 임베딩을 지원하여 배포 및 사용을 간소화합니다.
- 프로젝트가 어떻게 만들어지고 어떻게 사용하는지 자세히 설명하는 YouTube 동영상 튜토리얼이 제공됩니다.
- 오픈 소스 코드를 통해 사용자 맞춤 설정 및 확장 기능을 사용할 수 있습니다.
도움말 사용
설치 및 환경 준비
llm.pdf 프로젝트를 사용하려면 Python 3을 지원하는 환경을 준비하고 필요한 종속 요소를 설치해야 합니다. 자세한 설치 단계는 다음과 같습니다:
- 프로젝트 저장소 복제
터미널을 열고 다음 명령을 실행하여 llm.pdf 리포지토리를 복제합니다:git clone https://github.com/EvanZhouDev/llm.pdf.git cd llm.pdf
- Python 종속성 설치
이 프로젝트는 Python 환경을 사용하며 Python 3.8 이상을 권장합니다. 이동scripts
필요한 라이브러리를 카탈로그화하여 설치합니다:cd scripts pip install -r requirements.txt
엠스크립텐 및 기타 필요한 컴파일 도구가 설치되어 있는지 확인하세요. Emscripten이 설치되어 있지 않은 경우 공식 문서를 참조하여 구성하세요.
- GGUF 모델 준비
llm.pdf는 GGUF 형식의 정량적 모델만 지원하며, 최상의 성능을 위해서는 Q8 정량적 모델을 사용하는 것이 좋습니다. 사용자는 Hugging Face 또는 기타 모델 리포지토리(예: TinyLLaMA 또는 기타 작은 LLM)에서 GGUF 모델을 다운로드할 수 있으며, 모델 파일은 로컬에 저장해야 합니다./path/to/model.gguf
. - PDF 파일 생성
이 프로젝트는 Python 스크립트를 제공합니다.generatePDF.py
LLM이 포함된 PDF 파일을 생성하는 데 사용됩니다. 다음 명령을 실행합니다:python3 generatePDF.py --model "/path/to/model.gguf" --output "/path/to/output.pdf"
--model
: GGUF 모델의 경로를 지정합니다.--output
: 생성된 PDF 파일을 저장할 경로를 지정합니다.
이 스크립트는 base64 인코딩을 통해 PDF에 모델 파일을 삽입하고 추론을 실행하는 데 필요한 JavaScript 코드를 삽입합니다. 생성 프로세스는 모델 크기와 디바이스 성능에 따라 몇 분 정도 소요될 수 있습니다.
- PDF 파일 실행
생성된 PDF 파일은 Adobe Acrobat 또는 최신 브라우저의 PDF 뷰어와 같은 JavaScript 지원 PDF 리더에서 열 수 있습니다. PDF를 열면 모델이 자동으로 추론을 로드하고 실행합니다. 사용자가 PDF 인터페이스를 통해 텍스트를 입력하면 모델이 적절한 답변을 생성합니다. 참고: 성능 제한으로 인해 135M 파라메트릭 모델은 다음과 같은 모든 질문에 대해 응답을 생성합니다. 토큰 약 5초 정도 걸립니다.
주요 기능 작동
- 텍스트 생성
PDF 파일에서 사용자는 텍스트 입력 상자를 통해 LLM과 상호 작용할 수 있습니다. 프롬프트를 입력하면 모델이 토큰별로 응답 토큰을 생성합니다. 추론 시간을 줄이려면 짧은 프롬프트를 사용하는 것이 좋습니다. 예를 들어 "고양이에 대한 짧은 문장을 써줘"라고 입력하면 모델은 "고양이는 헤어볼을 쫓는 것을 좋아합니다."라고 응답할 수 있습니다. 생성된 텍스트는 PDF의 출력 영역에 표시됩니다. - 모델 선택 및 최적화
이 프로젝트는 다양한 GGUF 모델을 지원하며, 사용자는 필요에 따라 다양한 크기를 선택할 수 있습니다. 성능과 속도 사이의 균형을 맞추기 때문에 Q8 정량 모델이 권장됩니다. 사용자가 더 빠른 응답이 필요한 경우 더 작은 모델(예: 135M 파라미터)을 사용해 볼 수 있지만 생성 품질이 약간 떨어질 수 있습니다. - 사용자 지정 확장 프로그램
llm.pdf는 오픈 소스 프로젝트이며, 사용자가 수정할 수 있습니다.scripts/generatePDF.py
를 사용하거나 자바스크립트 코드를 삽입하여 사용자 지정 기능을 구현할 수 있습니다. 예를 들어, 새로운 대화형 인터페이스를 추가하거나 다른 모델 형식을 지원하려는 경우입니다. 사용자는 엠스크립트 및 PDF용 JavaScript API에 익숙해야 합니다.
주의
- 성능 요구 사항PDF에서 LLM 추론을 실행하려면 더 높은 컴퓨팅 리소스가 필요합니다. 최소 8GB의 RAM이 있는 기기에서 실행하는 것이 좋습니다.
- 모델 호환성GGUF 형식의 정량적 모델만 지원됩니다. 정량적 모델이 아닌 모델 또는 GGUF 형식이 아닌 모델은 생성 실패를 유발합니다.
- 브라우저 호환성일부 구형 브라우저는 asm.js를 지원하지 않을 수 있으므로 최신 버전의 Chrome 또는 Firefox를 사용하는 것이 좋습니다.
- 테스트 중 구성 요소 조정PDF 파일이 작동하지 않는 경우 터미널 로그 또는 브라우저의 개발자 도구(F12)에서 자바스크립트 오류를 확인하세요.
학습 리소스
이 프로젝트는 llm.pdf의 빌드 과정을 자세히 설명하는 YouTube 동영상 튜토리얼을 제공합니다. 사용자는 GitHub 리포지토리에 있는 README 또는 docs
디렉터리에서 더 많은 문서를 확인하세요. 커뮤니티 토론은 개발자가 질문하거나 코드를 기여할 수 있는 GitHub 이슈 페이지에서 확인할 수 있습니다.
애플리케이션 시나리오
- AI 기술 쇼케이스
llm.pdf는 고객이나 학생들에게 비 전통적인 환경에서 작동하는 AI 모델의 기능을 시연하는 데 사용할 수 있습니다. 예를 들어, 기술 컨퍼런스에서 개발자는 PDF를 열고 LLM의 텍스트 생성 기능을 실시간으로 시연하여 AI의 휴대성과 혁신성을 강조할 수 있습니다. - 교육 및 연구
학생과 연구자는 llm.pdf를 사용하여 PDF의 JavaScript 기능과 함께 LLM의 추론 프로세스에 대해 배울 수 있습니다. 이 프로젝트는 사용자가 모델 정량화의 역할과 엠스크립텐의 컴파일 원리를 이해하는 데 도움이 되는 실습 플랫폼을 제공합니다. - 오프라인 AI 배포
네트워크 제약이 있는 환경에서 llm.pdf는 서버 없이도 AI를 배포할 수 있는 방법을 제공합니다. 사용자는 모델을 PDF에 삽입하고 다른 사람에게 배포하여 오프라인 텍스트 생성 및 상호 작용을 할 수 있습니다.
QA
- llm.pdf는 어떤 모델을 지원하나요?
llm.pdf는 GGUF 형식의 양자화 모델만 지원하며, 최상의 성능을 위해서는 Q8 양자화 모델을 사용하는 것이 좋습니다. 사용자는 Hugging Face에서 호환되는 모델을 다운로드할 수 있습니다. - 생성된 PDF 파일이 느리게 실행되는 이유는 무엇인가요?
PDF의 LLM 엿보기 추론은 브라우저 성능과 모델 크기에 의해 제한됩니다. 135M 매개변수 모델은 토큰당 약 5초가 소요됩니다. Q8 정량적 모델을 사용하고 고성능 기기에서 실행하는 것이 좋습니다. - llm.pdf를 사용하려면 인터넷 연결이 필요하나요?
필요하지 않습니다. PDF를 생성한 후에는 모델과 추론 코드가 파일에 포함되어 오프라인에서 실행할 수 있습니다. 그러나 PDF를 생성하는 과정에서 종속성을 다운로드하려면 인터넷 연결이 필요합니다. - PDF 파일의 오류를 디버깅하는 방법은 무엇인가요?
브라우저의 개발자 도구(F12)를 사용하여 PDF 파일을 열 때 자바스크립트 오류를 확인하세요. 또한 다음을 참조하세요.generatePDF.py
터미널 로그의
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...