llm.pdf: PDF 파일에서 대규모 언어 모델을 실행하는 실험 프로젝트

최신 AI 리소스4개월 전 업데이트 AI 공유 서클
10.7K 00

일반 소개

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

llm.pdf:在PDF文件中运行大型语言模型的实验项目

체험: https://evanzhoudev.github.io/llm.pdf/

 

기능 목록

  • PDF 파일에서 대용량 언어 모델을 실행하여 텍스트 생성 및 상호 작용을 지원합니다.
  • 브라우저 환경에서 모델 추론을 구현하기 위해 Emscripten을 사용하여 llama.cpp를 asm.js로 컴파일합니다.
  • GGUF 형식의 정량적 모델이 지원되며, 런타임 속도를 높이려면 Q8 정량화를 권장합니다.
  • Python 스크립트 제공 generatePDF.pyLLM이 포함된 PDF 파일을 생성하는 데 사용됩니다.
  • base64 인코딩을 통해 PDF에 모델 파일 임베딩을 지원하여 배포 및 사용을 간소화합니다.
  • 프로젝트가 어떻게 만들어지고 어떻게 사용하는지 자세히 설명하는 YouTube 동영상 튜토리얼이 제공됩니다.
  • 오픈 소스 코드를 통해 사용자 맞춤 설정 및 확장 기능을 사용할 수 있습니다.

 

도움말 사용

설치 및 환경 준비

llm.pdf 프로젝트를 사용하려면 Python 3을 지원하는 환경을 준비하고 필요한 종속 요소를 설치해야 합니다. 자세한 설치 단계는 다음과 같습니다:

  1. 프로젝트 저장소 복제
    터미널을 열고 다음 명령을 실행하여 llm.pdf 리포지토리를 복제합니다:

    git clone https://github.com/EvanZhouDev/llm.pdf.git
    cd llm.pdf
  1. Python 종속성 설치
    이 프로젝트는 Python 환경을 사용하며 Python 3.8 이상을 권장합니다. 이동 scripts 필요한 라이브러리를 카탈로그화하여 설치합니다:

    cd scripts
    pip install -r requirements.txt
    

    엠스크립텐 및 기타 필요한 컴파일 도구가 설치되어 있는지 확인하세요. Emscripten이 설치되어 있지 않은 경우 공식 문서를 참조하여 구성하세요.

  2. GGUF 모델 준비
    llm.pdf는 GGUF 형식의 정량적 모델만 지원하며, 최상의 성능을 위해서는 Q8 정량적 모델을 사용하는 것이 좋습니다. 사용자는 Hugging Face 또는 기타 모델 리포지토리(예: TinyLLaMA 또는 기타 작은 LLM)에서 GGUF 모델을 다운로드할 수 있으며, 모델 파일은 로컬에 저장해야 합니다. /path/to/model.gguf.
  3. 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 코드를 삽입합니다. 생성 프로세스는 모델 크기와 디바이스 성능에 따라 몇 분 정도 소요될 수 있습니다.
  4. 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 이슈 페이지에서 확인할 수 있습니다.

 

애플리케이션 시나리오

  1. AI 기술 쇼케이스
    llm.pdf는 고객이나 학생들에게 비 전통적인 환경에서 작동하는 AI 모델의 기능을 시연하는 데 사용할 수 있습니다. 예를 들어, 기술 컨퍼런스에서 개발자는 PDF를 열고 LLM의 텍스트 생성 기능을 실시간으로 시연하여 AI의 휴대성과 혁신성을 강조할 수 있습니다.
  2. 교육 및 연구
    학생과 연구자는 llm.pdf를 사용하여 PDF의 JavaScript 기능과 함께 LLM의 추론 프로세스에 대해 배울 수 있습니다. 이 프로젝트는 사용자가 모델 정량화의 역할과 엠스크립텐의 컴파일 원리를 이해하는 데 도움이 되는 실습 플랫폼을 제공합니다.
  3. 오프라인 AI 배포
    네트워크 제약이 있는 환경에서 llm.pdf는 서버 없이도 AI를 배포할 수 있는 방법을 제공합니다. 사용자는 모델을 PDF에 삽입하고 다른 사람에게 배포하여 오프라인 텍스트 생성 및 상호 작용을 할 수 있습니다.

 

QA

  1. llm.pdf는 어떤 모델을 지원하나요?
    llm.pdf는 GGUF 형식의 양자화 모델만 지원하며, 최상의 성능을 위해서는 Q8 양자화 모델을 사용하는 것이 좋습니다. 사용자는 Hugging Face에서 호환되는 모델을 다운로드할 수 있습니다.
  2. 생성된 PDF 파일이 느리게 실행되는 이유는 무엇인가요?
    PDF의 LLM 엿보기 추론은 브라우저 성능과 모델 크기에 의해 제한됩니다. 135M 매개변수 모델은 토큰당 약 5초가 소요됩니다. Q8 정량적 모델을 사용하고 고성능 기기에서 실행하는 것이 좋습니다.
  3. llm.pdf를 사용하려면 인터넷 연결이 필요하나요?
    필요하지 않습니다. PDF를 생성한 후에는 모델과 추론 코드가 파일에 포함되어 오프라인에서 실행할 수 있습니다. 그러나 PDF를 생성하는 과정에서 종속성을 다운로드하려면 인터넷 연결이 필요합니다.
  4. PDF 파일의 오류를 디버깅하는 방법은 무엇인가요?
    브라우저의 개발자 도구(F12)를 사용하여 PDF 파일을 열 때 자바스크립트 오류를 확인하세요. 또한 다음을 참조하세요. generatePDF.py 터미널 로그의
© 저작권 정책

관련 문서

댓글 없음

댓글에 참여하려면 로그인해야 합니다!
지금 로그인
없음
댓글 없음...