안녕하세요.
오늘은 파이썬으로 GPT3와 구글 검색을 활용하여 자동으로 보고서를 작성해보겠습니다.
GPT & 구글 검색으로 보고서 작성하기 in Python
▣ 프로젝트 내용
- 어떤 주제에 대해서 우리가 모를 때 보통 구글로 검색해서 찾습니다. ChatGPT는 다양한 기능을 갖고 있는데 그중 URL을 요약 및 정리해주는 기능이 있습니다. (아래 참조)
- 이렇게 URL에 대해 간략하게 요약정리해주는 Chatgpt의 기능에 감탄하여 구글의 상위 검색과 연계하여 자동으로 보고서를 작성해주는 코드를 작성해보고자 포스팅하게 되었습니다.
▣ 파이썬 코드
: 구글 상위 검색 URL
import requests
from bs4 import BeautifulSoup
import urllib.parse
topic = input()
url = f"https://www.google.com/search?q={topic}"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36"
}
response = requests.get(url, headers=headers)
# 구글 상위 검색 페이지 parsing하기
soup = BeautifulSoup(response.text, "html.parser")
# 상위 검색 n개의 페이지 가져오기
urls = []
for i in soup.find_all("div", class_="yuRUbf")[:3]:
urls.append(i.find("a")["href"])
url_ = urls[0]
- query_word에 키워드를 넣어 구글에서 검색된 상위 3개의 url을 뽑음.
- 여러 가지 검색어를 뽑아서 gpt를 돌렸을 때 에러가 많이 나와 가장 상위의 검색 url을 예시로 삼음.
: Chatgpt 보고서 작성
import openai
openai.api_key = "OpenAI API Key"
# 링크 요약 및 보고서 작성하기
summaries = []
keywords = {}
prompt = f"Summarizes the following article:{url_} and make a report"
response = openai.Completion.create(
engine="text-davinci-003",
prompt=prompt,
temperature=0.5,
max_tokens=256,
top_p=1.0,
frequency_penalty=0.0,
presence_penalty=0.0
)
summary = response['choices'][0]['text']
# 한국어로 번역하기
print(get_translate_to_ko(summary))
- Openai에서 받은 API Key를 바탕으로 위에서 뽑은 상위 url에 대한 요약정리 보고서 작성에 대한 prompt를 구성함.
- 답변은 기본적으로 영어이기 때문에 파파고 api를 활용하여 한국어로 번역함.
: 결과 보기
input keyword : fpga semiconducter
이 문서에서는 FPGA(Field Programmable Gate Array)에 대한 개요를 제공합니다. FPGA는 제조 후 프로그래밍이 가능한 집적 회로이며, 거의 모든 디지털 논리 회로를 구현하는 데 사용할 수 있다. 이들은 논리 블록, 메모리 블록, 입출력 블록으로 구성된다. 논리 블록은 조합 논리 함수를 만드는 데 사용되고 메모리 블록은 데이터를 저장하는 데 사용됩니다. 입력/출력 블록은 외부 장치와 인터페이스하는 데 사용됩니다. FPGA는 디지털 신호 처리, 이미지 처리 및 기타 복잡한 알고리즘을 구현하는 데 사용될 수 있습니다.
이 보고서는 FPGA(Field Programmable Gate Arrays)의 개요를 제공합니다. FPGA는 제조 후 프로그래밍이 가능한 집적 회로이며, 거의 모든 디지털 논리 회로를 구현하는 데 사용할 수 있다. 이들은 논리 블록, 메모리 블록, 입출력 블록으로 구성된다. 논리 블록은 조합 논리 함수를 만드는 데 사용되고 메모리 블록은 데이터를 저장하는 데 사용됩니다. 입력/출력 블록은 외부 장치와 인터페이스하는 데 사용됩니다. FPGA는 디지털 신호 처리, 이미지 처리 및 기타 복잡한 알고리즘을 구현하는 데 사용될 수 있습니다. FPGA는 광범위한 응용 분야에서 사용할 수 있는 다목적이고 강력한 기술입니다.
※ 과거 파이썬 Openai와 파파고 API KEY에 대해 포스팅한 글이 있으니 참고하시기 바랍니다.
2023.02.06 - [Programming/AI] - [AI] 파이썬으로 GPT 사용하기
2023.02.07 - [Programming/Websites & API] - 파파고 API 발급 및 파이썬 코드 예제
반응형
'Programming > Python' 카테고리의 다른 글
[Python] 지수와 제곱 표현하기 (7) | 2023.03.25 |
---|---|
[Python] 워드 클라우드 시각화 (WordCloud) (4) | 2023.03.22 |
[Python] 구글 검색 API 활용하기 (4) | 2023.02.12 |
[Python] 파일명 일괄 변경하기 (2) | 2022.12.25 |
[Python] 일정 시간마다 자동 실행하기 (schedule) (6) | 2022.12.23 |
댓글