챗gpt가 가장 잘하는 것 중 하나가 긴 글의 내용을 파악해서 핵심내용만 짧게 요약해 주는 일입니다. 하지만 pdf파일에 있는 내용을 요약하고 싶을 때 현재는 파일업로드 기능이 없기 때문에 어떻게 하면 pdf파일 내용도 chatgpt를 이용하여 요약할 수 있는지 알아보겠습니다.
1. pdf 파일 -> txt 파일로 변환하기
드래그하여 복사+붙여 넣기 했을 때 텍스트가 깨지지 않는 pdf라면 내용을 복사하여 챗gpt에 붙여 넣기 하는 게 가장 편할 텐데요. pdf파일에 따라 복사+붙여 넣기 했을 때 글씨 띄어쓰기 등이 깨지거나 원하는 형태로 잘 추출이 되지 않는 경우가 많습니다. pdf파일을 txt파일로 변환하는 툴 같은 것들도 있지만, 파이썬 코드를 활용하면 쉽게 txt파일로 변환이 가능합니다. 이전에 파이썬을 컴퓨터에 설치하지 않아도 파이썬 코드를 실행할 수 있는 방법을 알려드렸는데요. 바로 구글 코랩을 이용하는 방법입니다. 그러니 파이썬을 처음 접하시는 분들도 이 방법을 이용하실 수 있습니다. 구글 코랩 소개드린 포스팅을 참고하시려면 여기를 봐주세요.
구글코랩으로 이동하여 우선 가장 첫 셀에 아래 PyPDF2를 설치하는 커맨드를 입력 후 실행해 주세요.
!pip install PyPDF2
그런 다음 위와 같이 설치가 완료되면, 아래의 코드를 다음 셀에 넣고 실행시켜 주세요. 아래 코드에서 3번째 줄에 'test.pdf'라고 되어있는 부분은 내가 변환할 pdf파일의 이름으로 변경하시면 됩니다.
import PyPDF2
# Open the PDF file
pdf_file = open('test.pdf', 'rb')
# Create a PDF reader object
pdf_reader = PyPDF2.PdfReader(pdf_file)
# Get the number of pages in the PDF file
num_pages = len(pdf_reader.pages)
# Create a string variable to hold the text
text = ""
# Loop through each page in the PDF file
for i in range(num_pages):
# Get the page object
page = pdf_reader.pages[i]
# Extract the text from the page
page_text = page.extract_text()
# Add the text to the string variable
text += page_text
# Close the PDF file
pdf_file.close()
# Save the extracted text as a text file
with open('output.txt', 'w') as file:
file.write(text)
처음에 실행하면 아래와 같은 에러가 날 것입니다. 당황하지 마시고 잘 따라오세요.
왼쪽에 보면 폴더모양 아이콘이 있고 해당 아이콘을 눌러줍니다. 그리고 처음에는 ".."이라고 되어있는 부분을 눌러 폴더 상단으로 올라가신 다음 "content"라고 되어있는 폴더를 찾습니다.
content 폴더 하위에 내가 txt파일로 변환하고자 하는 pdf파일을 넣어줍니다. 드래그 앤 드롭해서 넣어주면 되고 content폴더 좌측에 아래쪽으로 향하는 화살표를 한번 눌러 접었다가 다시 펼쳐주면 제대로 파일이 해당 폴더 안에 들어가 있는 것을 확인하실 수 있습니다.
여기까지 하신 후 위에서 PyPDF2로 pdf 파일을 txt파일로 변환해 주기 위해 입력한 코드를 재실행해줍니다.
그러면 코드가 에러 없이 실행이 되고 output.txt파일이 content폴더 밑에 생성된 것을 확인하실 수 있습니다. 여기서도 마찬가지로 해당 파일이 보이지 않는 경우 content폴더 좌측 화살표를 눌러 폴더를 접었다 펼쳐주시면 리프레시되면서 나타납니다. 이 파일 - 우클릭하여 다운로드합니다.
그러면 위와 같이 pdf파일이 텍스트 파일로 제대로 변환된 것을 확인할 수 있습니다.
2. chatgpt에게 요약시키기
이제 이 텍스트를 chatgpt 프롬프트에 주면서 " Summarize : 여기에 복사한 텍스트 내용 붙이기"라고만 명령하면 chat gpt가 핵심내용만 파악하여 짧게 요약해 줍니다. 저는 미국에서 대학원을 다니고 있어서 대부분 영어 자료들을 읽고 거기에 챗gpt를 많이 활용하고 있는데, 한글 서비스도 가능하니 "요약해 줘 + 요약시킬 내용복붙"과 같은 형식으로 프롬프트를 주셔도 됩니다. 다만 챗gpt가 한글로 답변을 생성하는 속도가 매우 느리므로 이 점은 참고해 주세요.
아래는 챗gpt가 깔끔하게 요약해 준 내용입니다. 영문 article들을 읽을 때 너무 길면 내용이 잘 안 읽혀서 오래 걸리는데 챗gpt에게 먼저 요약을 맡기고 요약된 내용을 읽어보면서 핵심내용을 먼저 파악한 다음에 article을 읽으니 훨씬 더 파악이 잘되고 읽는 속도도 더 빨라져서 이 방법을 잘 활용하고 있습니다.
주의할 점
챗gpt의 프롬프트는 3000자까지만 허용을 하고 있습니다. 그래서 글이 너무 긴 경우에는 아래와 같이 에러가 납니다. 이 경우 단락별로 조금씩 나눠서 요약을 시켜야 합니다.
챗gpt가 언어에 강한 챗봇 서비스이다 보니 요약시켰을 때 퀄리티가 꽤나 괜찮은 결과물을 보여줍니다. 실제로 요약된 내용을 보고 아티클을 읽어보니 글 내용 중 핵심적인 내용만 잘 뽑아냈다는 것을 확인할 수 있었습니다. chatgpt가 영어에 특히 더 자연스럽고 퀄리티 있는 결과를 생성하므로 대량의 영어 자료를 읽어야 할 때 이 기능을 유용하게 활용할 수 있습니다.
<참고하면 좋을 포스팅>
'IT 트렌드 & 팁' 카테고리의 다른 글
chatgpt를 능가할 New Bing 챗봇 서비스 Waitlist 등록하세요! (0) | 2023.02.26 |
---|---|
[디지털 전략] 플랫폼 비즈니스(사업) 모델의 특성 (0) | 2023.02.25 |
[챗gpt 활용] 네이버 크롤링 웹스크래핑 하는 방법(파이썬 노코드) (0) | 2023.02.22 |
Git, Github 사용 방법, 차이점 (깃/깃허브) (0) | 2023.02.21 |
[챗gpt 활용팁] chatgpt로 차트, 다이어그램 그리는 방법 (0) | 2023.02.18 |
댓글