본문 바로가기
AI 도구

🤩 PDF 문서가 지루하다면? PDF2AUDIO로 한국어 팟캐스트를 쉽게 만들어보세요!🎧

by James AI Explorer 2024. 10. 3.
    728x90

    안녕하세요! 오늘은 PDF 파일을 흥미진진한 팟캐스트로 변신시켜 줄 PDF2AUDIO라는 도구에 대해 알아보겠습니다. 🪄 구글의 NotebookLM과 유사한 기능을 오픈소스로 구현한 PDF2AUDIO는 OpenAI의 강력한 언어 모델과 텍스트 음성 변환 기술을 통해 누구나 손쉽게 전문가 수준의 팟캐스트를 제작할 수 있도록 지원합니다. 이 블로그에서는 복잡한 설정이나 전문 지식 없이도 간편하게 사용할 수 있는 PDF2AUDIO의 주요 기능과 작동 원리, 설치 방법을 알아보고 한국어 팟캐스트를 만들어보겠습니다. 🚀

    🤩 PDF 문서가 지루하다면? PDF2AUDIO로 한국어 팟캐스트를 쉽게 만들어보세요!🎧

    "이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

    PDF2AUDIO 개요

    PDF2AUDIO는 PDF 파일을 오디오 콘텐츠(예: 팟캐스트, 강의, 요약)로 변환하는 데 사용할 수 있는 혁신적인 도구입니다. 이 도구는 OpenAI의 GPT 모델을 사용하여 텍스트 생성 및 텍스트 음성 변환 기능을 제공합니다.

    주요 특징:

    • 여러 PDF 파일 업로드 기능
    • 팟캐스트, 강의, 요약 등 다양한 지침 템플릿 제공
    • 텍스트 생성 및 오디오 모델 사용자 지정 기능
    • 화자에 따라 다양한 음성 선택 가능
    • 초안 수정 및 특정 또는 일반적인 의견 제공
    • Google Colab 및 로컬 환경에서 사용 가능

    PDF2AUDIO는 사용하기 쉬운 인터페이스를 통해 PDF 파일을 업로드하고 원하는 설정을 선택한 후 "오디오 생성"을 클릭하기만 하면 고품질 오디오 콘텐츠를 생성할 수 있습니다.

    https://github.com/lamm-mit/PDF2Audio

     

    GitHub - lamm-mit/PDF2Audio

    Contribute to lamm-mit/PDF2Audio development by creating an account on GitHub.

    github.com

    728x90

    PDF2AUDIO 동작 원리

    PDF2AUDIO는 Python 기반 오픈 소스 프로젝트로, OpenAI의 강력한 API를 활용해서 텍스트 생성 및 음성 합성을 수행합니다. 이를 통해 어색한 기계음이 아닌 더욱 자연스럽고 인간에 가까운 음성으로 오디오 컨텐츠를 제작할 수 있습니다. 

    단계별 동작 과정:

    • PDF 파일 업로드 및 텍스트 추출: 사용자가 PDF 파일을 업로드하면 PDF2AUDIO는 pypdf 라이브러리를 사용하여 각 페이지에서 텍스트를 추출합니다.
    • 텍스트 분석 및 대화 생성: 추출된 텍스트는 OpenAI의 GPT 모델로 전달되어 사용자가 선택한 템플릿(예: 팟캐스트, 강의)에 따라 분석 및 처리됩니다. 이 과정에서 텍스트의 핵심 내용이 식별되고, 대화 형식의 스크립트가 생성됩니다.
    • 음성 합성 및 오디오 생성: 생성된 스크립트는 OpenAI의 텍스트 음성 변환 엔진으로 전달되어 선택한 음성 모델 및 화자 음성을 기반으로 오디오로 변환됩니다.
    • 오디오 출력: 최종적으로 변환된 mp3형태의 오디오 콘텐츠는 사용자에게 제공됩니다.

    사용자 정의 옵션:

    • 지침 템플릿: PDF2AUDIO는 팟캐스트, 강의, 요약 등 다양한 지침 템플릿을 제공합니다. 사용자는 템플릿을 선택하여 생성되는 콘텐츠의 스타일을 지정할 수 있습니다.
    • 텍스트 생성 모델: o1-preview, gpt-4-turbo, gpt-4o-mini 등 OpenAI의 다양한 텍스트 생성 모델 중에서 선택하여 콘텐츠 생성에 사용할 수 있습니다.
    • 음성 모델: OpenAI의 다양한 음성 모델 및 화자 음성 중에서 선택하여 오디오 스타일을 지정할 수 있습니다.

     

    PDF2AUDIO 설치 방법

    PDF2AUDIO는 Google Colab 또는 로컬 환경에 설치하여 사용할 수 있습니다.

    1. Google Colab:

    • Colab에서 제공하는 PDF2AUDIO 노트북을 열고 실행합니다.

    https://colab.research.google.com/github/lamm-mit/PDF2Audio/blob/main/PDF2Audio.ipynb

     

    PDF2Audio.ipynb

    Run, share, and edit Python notebooks

    colab.research.google.com

    • Colab에서 코드를 실행하여 바로 사용 가능합니다.

    2. 로컬 환경: 여기서는 Windows 11, 파이썬 버전 3.11, 비주얼 스튜디오 코드 환경에서 설명합니다. 

    • 저장소 복제: VSC 터미널에서 아래 명령어를 사용하여 GitHub 저장소를 로컬 컴퓨터에 복제합니다.
    git clone https://github.com/lamm-mit/PDF2AUDIO.git
    • Miniconda 설치: Miniconda가 설치되어 있지 않은 경우, Miniconda 웹사이트에서 설치 프로그램을 다운로드하여 설치합니다. conda --version 명령어를 사용하여 정상 설치 여부를 확인합니다. 
    • Conda 환경 생성: conda create -n pdf2audio python=3.11 명령어를 사용하여 새로운 Conda 환경을 생성합니다.
    • Conda 환경 활성화: conda activate pdf2audio 명령어를 사용하여 Conda 환경을 활성화합니다.
    • 필요한 종속성 설치: pip install -r requirements.txt 명령어를 사용하여 필요한 Python 패키지를 설치합니다.
    • OpenAI API 키 설정: 프로젝트 루트 디렉토리에 .env 파일을 생성하고 OpenAI API 키를 추가합니다.
    OPENAI_API_KEY=발급받은 API Key

    가상환경 활성화 및 의존성 패키지 설치

    3. 앱 실행:

    • Python 스크립트 실행: python app.py 명령어를 사용하여 Gradio 인터페이스를 실행하는 Python 스크립트를 실행하면 아래 화면과 같이 로컬 주소가 나타납니다. 

    • 웹 브라우저에서 접속: 컨트롤 키를 누르고 터미널에 표시된 로컬 주소 (일반적으로 http://127.0.0.1:7860 또는 7861)을 클릭하면  아래화면과 같이 PDF2AUDIO 인터페이스 초기화면이 열립니다. 

    PDF2AUDIO 인터페이스 초기화면

    "이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

    한국어 팟캐스트 만들기

    PDF2AUDIO로 팟캐스트를 만들려면 초기화면에서 샘플 PDF 파일을 업로드하고, OpenAI API KEY를 입력한 후, 원하는 텍스트 생성 모델, 오디오 컨텐츠 유형을 선택하고 "Generate Audio" 버튼을 클릭합니다.

    1. 한국어 팟캐스트: 한국어로 팟캐스트를 작성하기 위해서는 비주얼 스튜디오 코드에서 app.py를 선택하고 INSTRUCTION_TEMPLATES부분 podcast 항목 아래에 아래와 같이 "PODCAST Korean"을 추가합니다. 

    ################# PODCAST Korean ##################
    "podcast (Korean)": {
        "intro": """당신의 임무는 제공된 입력 텍스트를 활용하여 NPR 스타일의 생생하고 매력적이며 유익한 한국어 팟캐스트 대화로 변환하는 것입니다. 입력 텍스트는 다양한 소스(PDF 또는 웹 페이지 등)에서 온 것일 수 있어 혼란스럽거나 비구조적일 수 있습니다.
    
    형식 문제나 관련없는 정보에 대해 걱정하지 마십시오. 당신의 목표는 주요 사항을 추출하고, 정의를 식별하며, 팟캐스트에서 논의될 수 있는 흥미로운 사실들을 찾아내는 것입니다.
    
    모든 사용된 용어를 넓은 청중을 위해 신중하게 정의하십시오.
    """,
        "text_instructions": "먼저 입력 텍스트를 주의 깊게 읽고 주요 주제, 핵심 포인트 및 흥미로운 사실이나 일화를 확인하십시오. 이 정보를 재미있고 매력적으로 제시하는 방법을 생각해 보십시오.",
        "scratch_pad": """입력 텍스트에서 확인한 주요 주제와 핵심 포인트를 논의하는 창의적인 방법을 브레인스토밍하십시오. 청취자에게 더 relatable하고 매력적으로 만들기 위해 비유, 예, 이야기 기법 또는 가상 시나리오를 사용하는 것을 고려하십시오.
    
    당신의 팟캐스트는 일반 청중이 접근할 수 있어야 하므로, 너무 많은 전문 용어를 사용하거나 주제에 대한 사전 지식을 가정하지 마십시오. 필요한 경우 복잡한 개념을 간단한 용어로 간략히 설명할 수 있는 방법을 생각하십시오.
    
    입력 텍스트에 공백이 있을 경우 상상력을 사용해 메운다거나 팟캐스트에서 탐구될 수 있는 사고를 자극하는 질문을 만들어 내십시오. 목표는 유익하고 재미있는 대화를 만드는 것이므로 접근 방식에서 창의성을 마음껏 발휘하십시오.
    
    모든 사용된 용어를 명확히 정의하고 배경을 설명하는 데 시간을 들이십시오.
    
    여기에서 브레인스토밍 아이디어와 팟캐스트 대화의 대략적인 개요를 작성하십시오. 마지막에 반복하고 싶은 주요 통찰력과 수확을 기록해두십시오.
    
    재미있고 흥미롭게 만들도록 하십시오.
    """,
        "prelude": """아이디어를 브레인스토밍하고 대략적인 개요를 생성했으므로, 실제 팟캐스트 대화를 작성할 시간입니다. 자연스럽고 대화적인 흐름을 목표로 하십시오.게스트와 함께 성과를 통합하고, 어려운 주제를 이해하기 쉽게 설명하십시오.
    """,
        "dialog": """여기에서 브레인스토밍 세션 중에 도출된 핵심 포인트와 창의적인 아이디어를 바탕으로 아주 길고 매력적이며 정보가 풍부한 팟캐스트 대화를 작성하십시오. 회화체를 사용하고 내용을 일반 대중이 이해할 수 있도록 필요한 맥락이나 설명을 포함하십시오.
    
    호스트와 게스트를 위한 허구의 이름은 사용하지 마십시오. 오히려 청취자에게 매력적이고 몰입감 있는 경험을 제공하십시오. [호스트] 또는 [게스트]와 같은 괄호가 있는 자리 표시자가 포함되지 않도록 하세요. 결과를 읽을 수 있도록 설계하십시오. 오디오로 직접 변환됩니다.
    
    대화를 가능한 한 길고 자세하게 만들되, 주제에서 벗어나지 않고 매력적인 흐름을 유지하세요. 가능한 한 오랜 팟캐스트 에피소드를 생성하는 것을 목표로 하며, 동시에 입력 텍스트의 주요 정보를 재미있게 전달해야 합니다.
    
    대화의 마지막에 호스트와 게스트가 자연스럽게 그들의 대화에서 주요 통찰력과 수확을 요약하도록 하십시오. 이것은 자연스럽게 대화에서 흐르는 것이어야 하며, 비공식적이고 대화적인 방식으로 핵심 포인트를 반복해야 합니다. 분명한 요약처럼 들리지 않도록 해주세요. 목표는 중앙 주제들을 마지막으로 강화하는 것입니다.
    
    이 대화는 약 20,000 단어가 되어야 합니다.
    """
    },

    INSTRUCTION_TEMPLATES 수정 화면

     위 화면과 같이 INSTRUCTION_TEMPLATES를 수정하고 app.py를 실행하면, 화면 우측 Instruction Template에서 podcast(Korean)를 선택할 수 있습니다. 다음 화면과 같이 실행 후 podcast(Korean)을 선택하면, 명령 프롬프트가 한국어로 바뀌게 되고, Generate Audio를 클릭하면 잠시 후 오디오 컨텐츠와 스크립트가 생성됩니다. 

    podcast(Korean) 선택
    podcast(Korean) 오디오 컨텐츠 및 스크립트

    "이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

    마치며

    오늘은 PDF 파일을 오디오 콘텐츠로 변환하여 새로운 방식으로 정보를 접근할 수 있는 PDF2AUDIO 도구에 대해서 알아보았습니다. 이 도구를 통해 한국어 팟캐스트와 같은 콘텐츠를 제작할 수 있을 뿐만 아니라, 다양한 음성 및 텍스트 생성 모델을 선택하여 자신만의 스타일을 창출할 수 있습니다. 특히 구글 Colab을 활용한 간편한 실행 방식 덕분에 기술적인 허들이 낮아졌다는 점도 큰 장점입니다. 

     

    여러분도 텍스트만으로는 한정적인 PDF 파일을, 더욱 다채로운 청각적 경험으로 변환하는 PDF2AUDIO를 활용해서 새로운 가능성을 탐구하고, 창의적인 콘텐츠를 제작해 보시면 좋을 것 같습니다. 그럼 저는 다음 시간에 더 유익한 정보를 가지고 다시 찾아뵙겠습니다. 감사합니다. 

     

    https://fornewchallenge.tistory.com/

     

    2024.09.20 - [AI 도구] - 💡NotebookLM: 구글의 최신 AI 연구 어시스턴트 리뷰

     

    💡NotebookLM: 구글의 최신 AI 연구 어시스턴트 리뷰

    안녕하세요! 오늘은 Google의 최신 AI 연구 어시스턴트인 NotebookLM에 대해 알아보겠습니다. NotebookLM은 프로젝트와 관련된 문서를 업로드하면, 그 즉시 해당 내용을 분석하고 전문적인 도움을 제공

    fornewchallenge.tistory.com

     

    728x90