목표 : open AI의 API를 활용해서 최대한 수정할 필요가 없는 글을 작성하는 프롬프트 짜보기
주제 : ‘일본 벚꽃’ 키워드는 ‘개화시기, 명소, 축제’ 세가지
API, 파이썬 모두 처음 사용해보는 완전 초보입니다. Grimoire GPTs를 활용해서 진행했지만 설치하고 만드는 과정의 수많은 오류는 너무 많아서 생략하고 프롬프트에 대한 것만 작성해봤습니다.
첫번째,
챗지피티가 만들어준 프롬프트를 그대로 사용한 첫 번째 글입니다.
나쁘지는 않지만 바로 발행하기에는 길이도 짧은편이고 어색하고 수정할 부분들이 좀 있어 보이죠?
일본 벚꽃의 개화시기
봄의 기운을 가장 아름답게 알리는 일본의 벚꽃, 꽃망울을 터뜨리는 그 시간은 언제일까요? 대개 3 월 하순부터 4월 초사이, 일본 전역에서 벚꽃이 개화하기 시작합니다. 이는 남쪽의 오키나와에서부터 시작해, 북쪽의 홋카이도로 이어지는 꽃물결의 여정이죠. 정확한 개화시기는 해마다 조금씩 달라집니다만, 날씨의 온화함에 따라 일찍이나 늦게 그 모습을 드러낼 수 있습니다. 일찍 벚꽃을 보고자 한다면, 주목하세요. 남부 지역을 노릴 것.
일본의 벚꽃 명소
일본 내 벚꽃 명소를 찾는 것은 마치 보물찾기와 같다. 교토의 기온, 도쿄의 우에노 공원, 하이라이트는 바로 히로시마와 그 인근에 위치한 이츠쿠시마 신사의 미야지마입니다. 각지마다 그 특색이 있으며, 벚꽃과 함께하는 전통적인 건축물과 자연경관은 더없이 환상적인 조화를 이룹니다. 꽃구경에 최적의 장소를 찾으시나요? 그렇다면, 네이버와 구글 지도를 활용해보세요. 폭넓은 정보와 사용자의 리뷰가 당신의 봄나들이를 완성시켜줄 것입니다.
일본에서 열리는 벚꽃 축제
벚꽃의 계절이면 일본 곳곳에서는 다채로운 축제가 열립니다. 이 시기는 사람들이 모여 꽃놀이를 즐기며, 음식, 음악, 전통 공연을 함께하는 소중한 시간입니다. 특히, 요즈미테 공원에서 열리는 '야에-야코 사쿠라 축제'나 '히로시마 벚꽃 축제'는 꼭 경험해 볼 만한 행사다. 축제의 일정은 지역마다 다르므로, 방문 계획을 세우기 전에 확인하는 것이 좋습니다. 가족과 친구들, 그리고 사랑하는 이와 함께하는 벚꽃 축제! 망설이지 마세요, 떠나보자고 제안해보는 것은 어떨까요?
def generate_blog_content():
# 모델 선택
model_choice = input("사용할 모델을 선택해주세요 (1: gpt-3.5-turbo, 2: gpt-4-turbo-preview): ")
model = "gpt-3.5-turbo" if model_choice == '1' else "gpt-4-turbo-preview"
# 사용자 입력을 통한 주제와 키워드 설정
topic = input("블로그에 작성할 주제를 입력하세요: ")
keywords = input("주제와 관련된 키워드를 쉼표로 구분하여 입력하세요: ")
# 사용자 입력을 바탕으로 프롬프트 구성
prompt = f"""
주제: {topic}
키워드: {keywords}
글을 SEO에 최적화하여 작성하세요. 다음과 같은 구조를 사용하세요:
이 글은 '{topic}'에 대해 설명하며, '{keywords}'와 관련된 내용을 포함합니다.
"""
try:
# OPENAI API를 통해 글 생성
response = client.chat.completions.create(
model=model,
messages=[
{"role": "system", "content": prompt},
],
)
# 생성된 글 출력
print("\n생성된 블로그 컨텐츠:")
print(response.choices[0].message.content)
except Exception as e:
print("컨텐츠 생성 중 오류가 발생했습니다:", e)
if __name__ == "__main__":
generate_blog_content()
수정 1 - 원하는 내용을 구체적으로 작성해보기
챗지피티의 도움을 받아서 추가하고, 별개로 추가 요청사항(보이스톤, 타겟층, 개요 등)을 모두 프롬프트에 반영해보았습니다.
prompt = f"""
주제: {topic}
키워드: {keywords}
글을 SEO에 최적화하여 작성하세요. 다음과 같은 구조를 사용하세요:
- H2 태그로 된 소제목 # 챗지피티가 수정해 준 프롬프트
- 각 소제목 아래에는 300~500자의 설명
- 이 글은 '{topic}'에 대해 설명하며, '{keywords}'와 관련된 내용을 포함합니다.
- 이 글에 '{topic}'은 최소 3회, '{keywords}'는 최소 1회 이상 포함됩니다. # 직접 추가한 프롬프트
- 30대 여성들을 타겟으로 한 블로그 제목을 생성하되, "30대 여성"이라는 단어는 포함하지 않습니다.
- 타겟 고객이 겪을 수 있는 상황을 반영하여 공감을 이끌어내는 내용을 시작으로 합니다.
- 아래와 같은 같은 보이스톤으로 글을 작성해주세요.
친근한 대화형식
다양한 문장 끝맺음 활용: "~요" 외에도 "~습니다", "~다" 등의 공손한 끝맺음을 적절히 섞어 사용하여 어조에 다양성을 더합니다.
비문이나 명령문 사용: 가끔은 직접적인 설명 대신 비문(문장의 주어나 서술어가 생략된 문장)이나 명령문을 사용해 문체에 변화를 줍니다.
간접화법 활용: 직접 말하기 대신 간접적으로 표현함으로써 다양한 어조를 구사할 수 있습니다.
문장 구조 다양화: 질문, 명령, 제안 등 다양한 문장 구조를 사용해 독자와의 소통 방식에 변화를 줍니다.
"""
그렇게 다시 작성된 글은 처음보다는 블로그스러운(?) 느낌을 풍기는것 같기도 하죠? 그럴싸한 느낌은 나기 시작하지만, 여전히 딱딱해서 조금 더 친근하고 부드러운 보이스톤이 반영되면 좋겠다는 생각입니다.
일본에서 벚꽃의 개화시기, 명소, 그리고 축제를 즐기는 방법
일본의 벚꽃은 세계적으로 유명하며, 봄이 되면 국내외 여행객들이 이 아름다운 꽃을 감상하기 위해 일본을 방문합니다. 일본의 벚꽃 시즌은 지역마다 다르지만, 일반적으로는 3월 말부터 4월 초에 시작되어 4월 중순까지 이어집니다. 이 글에서는 일본 벚꽃의 개화시기, 주요 관광 명소, 그리고 꼭 참여해야 할 축제들을 소개합니다.
개화시기
일본의 벚꽃 개화시기는 주로 날씨와 지역에 따라 다르며, 오키나와에서는 1월 말부터 시작해 홋카이도에서는 5월 초까지 이어질 수 있습니다. 가장 인기 있는 겹벚꽂(소메이요시노)은 통상적으로 3월 하순부터 4월 초 사이에 개화를 시작합니다. 일본 기상청과 다양한 여행 관련 웹사이트에서 정확한 개화 예측 정보를 제공하므로 여행 계획을 세울 때 참고하는 것이 좋습니다.
명소
일본에는 수많은 벚꽃 명소가 있지만, 그 중에서도 특히 유명한 곳들을 소개합니다.
- 도쿄의 신주쿠 교엔: 도쿄 중심부에 위치하며, 다양한 종류의 벚꽃을 감상할 수 있습니다. 봄에는 많은 사람들이 꽃놀이를 즐기기 위해 이곳을 찾습니다.
- 교토의 기온 시라카와: 교토는 고도의 아름다움과 함께 다양한 벚꽃 명소를 제공합니다. 기온 지구의 시라카와 산책로는 밤에도 아름다운 벚꽃 풍경을 제공합니다.
- 하이라이트인 히 로시마의 이츠쿠시마 신사: 물에 반사되는 벚꽃의 모습이 고요함과 아름다움을 더합니다.
축제
벚꽃 시즌에는 일본 전역에서 다채로운 축제가 열립니다. 이 축제들은 벚꽃이 만개하는 시기에 맞춰 다양한 행사와 활동을 제공합니다.
- 도쿄의 우에노 벚꽃 축제: 우에노 공원은 도쿄에서 가장 인기 있는 꽃놀이 명소 중 하나로, 축제 기간 동안 야간 조명으로 꽃을 아름답게 비춥니다.
- 교토의 마루야마 공원 야간 개화 감상회: 마루야마 공원은 벚꽃 시즌에 가장 붐비는 장소 중 하나입니다. 야간에는 특별한 조명이 벚꽃을 비추어 낮에는 볼 수 없는 아름다움을 선사합니다.
- 하이라이트인 히로시마의 하나미야마 공원 축제: 이 공원은 벚꽃과 함께 다양한 봄꽃들이 어우러진 모습을 감상할 수 있는 곳으로 유명합니다.
결론
일본의 벚꽃은 그 아름다움으로 많은 이들에게 사랑받고 있으며, 매년 수많은 관광객들이 이를 감상하기 위해 일본을 찾습니다. 개화시기, 유명한 관광 명소, 그리고 축제에 참여하며, 일본의 봄을 만끽하는 것은 잊지 못할 추억을 제공할 것입니다. 계획을 잘 세워서 이 매력적인 계절을 최대한 즐겨보세요.
수정 2 - 보이스톤 수정
위에서 말한 것처럼 보이스톤을 수정하기 위해서 여러 번 테스트를 해봤는데 의도한 데로 바뀌지 않았습니다.
다시 챗 GPT에서 보이스톤에 대한 내용이 반영이 안 되는 것 같으니 프롬프트를 수정해달라고 요청했고 수정 방안과 수정된 코드를 다시 제안해 줍니다.
여기서부터 파트너님의 코드를 살짝 컨닝해서 system, user, assistant로 프롬프트를 구분했습니다.
보이스톤 지시를 더 구체적으로 만들기: 보이스톤과 관련된 지시를 더 구체적이고 직접적으로 만듭니다. 모델에게 정확히 어떤 스타일과 톤을 사용해야 하는지 알려줍니다.
예시 포함: 보이스톤을 적용한 짧은 예시를 몇 개 포함하여 모델이 기대하는 출력의 형태를 더 잘 이해할 수 있도록 합니다.
목표 독자에 대한 설명 추가: 글이 타겟팅하는 독자층에 대한 설명을 추가하여, 모델이 보다 목적에 맞는 톤과 스타일을 선택할 수 있도록 합니다.
def generate_blog_content():
# 모델 선택 및 사용자 입력을 통한 주제와 키워드 설정 코드는 이전과 동일
# 사용자 입력을 바탕으로 프롬프트 구성
system_prompt = f"""
당신은 네이버 SEO에 최적화된 글을 작성하는 크리에이터입니다. 이 글은 '{topic}'에 대해 설명하며, '{keywords}'와 관련된 내용을 포함합니다.
- H2 태그로 된 소제목을 포함합니다.
- 각 소제목 아래에는 300~500자의 설명
- 타겟 고객이 겪을 수 있는 상황을 반영하여 공감을 이끌어내는 내용을 시작으로 합니다.
보이스톤 지시:
1. 친근하고 대화형식의 톤으로 작성해주세요. 예를 들어, "우리 모두 재활용에 대해 더 신경 쓰기 시작해보자고요!"와 같이 말이죠.
2. 문장의 끝맺음은 다양하게 사용하여 어조에 다양성을 더해주세요. 예: "이것이 바로 지속 가능한 생활을 위한 첫걸음입니다."
3. 독자의 공감을 이끌어낼 수 있는 비문이나 명령문을 사용해 문체에 변화를 주세요. 예: "지금 바로 시작해보세요. 왜냐하면, 작은 실천이 큰 변화를 만들어낼 수 있으니까요."
4. 질문, 명령, 제안 등 다양한 문장 구조를 사용해 독자와 소통해보세요. 예: "재활용이 정말 중요하다고 생각하지 않으세요?"
타겟 고객은 30대 여성입니다. 그들이 일상에서 겪을 수 있는 상황을 고려해, 공감을 이끌어내는 내용으로 글을 시작해주세요.
"""
user_prompt = f"""
{topic}에 대해 자세히 알려주세요. 키워드: {keywords}
"""
assistant_prompt = f"""
네이버 SEO를 고려하여, 사용자의 질문에 답변하는 형태로 글을 구성합니다.
"""
일상에 쫓겨 하루하루 고단함을 느끼는 당신. 왠지 모르게 평소보다 더 지쳐 보이는 당신의 마음을 달래줄 무언가가 필요하지 않나요? 오늘은 그런 당신을 위해 일본의 벚꽃에 대해 소개해보고자 합니다. 봄날의 따사로움과 벚꽃의 환상적인 조화를 상상만 해도 마음이 벌써부터 설레지 않나요? 자, 그럼 일본 벚꽃의 개화시기부터 명소, 축제까지 하나씩 알아보아요.
일본 벚꽃 개화시기
일본에서 벚꽃이 피는 시기는 보통 3월 말에서 4월 초 사이입니다. 하지만 날씨조건이나 지역에 따라 다소 차이가 있죠. 오키나와와 같이 남쪽에 위치한 지역에서는 1월 말경부터 벚꽃이 피기 시작하며, 북쪽의 홋카이도에서는 5월 초까지 개화가 이어집니다. 따라서, 여행 계획을 세울 때는 각 지역별 벚꽃 전망을 미리 체크하는 게 좋아요. 일본의 봄이 우리의 마음을 설레게 하는 그 순간을 놓치지 않기 위해서죠.
일본 벚꽃 명소
일본 내에는 수많은 벚꽃 명소가 있습니다. 그 중에서도 교토의 기요미즈데라, 도쿄의 우에노 공원, 하이라이트라 할 수 있는 후지산을 배경으로 한 가와구치코 호수 등은 특별한 언급을 받을 만해요. 이곳들은 벚꽃이 만개하는 시기에 환상적인 풍경을 선사하며, 방문객들에게 잊지 못할 추억을 안겨준답니다. 함께 여행할 친구나 가족과 이곳에서 봄꽃의 화려함을 느껴보세요. 마법 같은 순간이 당신을 기다리고 있으니까요.
일본 벚꽃 축제
일본에서는 봄을 맞이하여 다양한 벚꽃 축제가 열립니다. 고다이지의 야간 라이트업부터 히로시마의 평화공원까지, 각 지역마다 독특하고 매력 넘치는 축제가 개최되죠. 축제 기간 동안은 벚꽃 아래에서 일본 전통 음 식을 맛보거나, 다양한 문화 체험을 즐길 수 있어요. 일본인뿐만 아니라 전 세계에서 모인 사람들과 함께 벚꽃을 감상하며, 봄의 정취를 만끽할 수 있는 환상적인 기회랍니다.
지금까지 일본의 벚꽃 개화시기, 명소, 축제에 대해 알아보았어요. 어떤가요, 여행 가고 싶은 마음이 샘솟지 않나요? 이번 봄에는 일상의 고단함을 잠시 내려놓고, 일본의 벚꽃과 함께 잊지 못할 추억을 만들어 보는 건 어떨까요? 당신을 위한 특별한 시간, 지금 바로 계획해보세요. 왜냐하면, 때로는 작은 여행이 삶에 큰 활력을 불어넣을 수 있으니까요.
수정 3 - 추가자료
마지막으로 실제 2024년 개화 시기에 대한 내용과, 예약할 수 있는 액티비티를 추가 자료로 입력해서 글에 반영되게 하면 글이 좀 더 그럴싸해질 것 같아서 추가자료를 넣을 수 있는 프롬프트를 요청했습니다.
# 사용자 입력을 통한 주제와 키워드 설정
topic = input("블로그에 작성할 주제를 입력하세요: ")
keywords = input ("주제와 관련된 키워드를 쉼표로 구분하여 입력하세요 (예: 가상 현실, 여행, 문화 체험): ")
# 참고 자료 설정
research_summary = input("참고할 자료를 입력하세요 :")
system_prompt = f"""
당신은 네이버 SEO에 최적화된 글을 작성하는 크리에이터입니다. 이 글은 '{topic}'에 대해 설명하며, '{keywords}'와 관련된 내용을 포함합니다.
- H2 태그로 된 소제목을 포함합니다.
- 각 소제목 아래에는 300~500자의 설명
- 타겟 고객이 겪을 수 있는 상황을 반영하여 공감을 이끌어내는 내용을 시작으로 합니다.
- 타겟 고객은 30대 여성입니다. 그들이 일상에서 겪을 수 있는 상황을 고려해, 공감을 이끌어내는 내용으로 글을 시작해주세요.
보이스톤 지시:
1. 친근하고 대화형식의 톤으로 작성해주세요. 예를 들어, "우리 모두 재활용에 대해 더 신경 쓰기 시작해보자고요!"와 같이 말이죠.
2. 문장의 끝맺음은 다양하게 사용하여 어조에 다양성을 더해주세요. 예: "이것이 바로 지속 가능한 생활을 위한 첫걸음입니다.", "이것이 바로 지속 가능한 생활을 위한 첫걸음이죠."
3. 독자의 공감을 이끌어낼 수 있는 비문이나 명령문을 사용해 문체에 변화를 주세요. 예: "지금 바로 시작해보세요. 왜냐하면, 작은 실천이 큰 변화를 만들어낼 수 있으니까요."
4. 질문, 명령, 제안 등 다양한 문장 구조를 사용해 독자와 소통해보세요. 예: "재활용이 정말 중요하다고 생각하지 않으세요?"
참고 자료: {research_summary}
"""
결과는 실패했습니다.
가공하지 않은 정보는 아래의 이유로 반영되지 않고, 아래에서 요구하는 것처럼 프롬프트에 반영할 수 있을 만큼 요약하면 기존의 내용이 큰 의미가 없어질 정도로 줄여야만 가능했기 때문인데요.
질문!
API를 활용하면서 자료를 추가할 수 있는 방법이 있을까요?
여전히 System과 Assistant의 역할이 잘 구분되지 않는데 Assistant 프롬프트를 어떻게 활용할 수 있을까요?
나머지 과제
셀레니움
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get("https://www.naver.com/")
title = driver.title
driver.implicitly_wait(0.5)
text_box = driver.find_element(by=By.NAME, value="query")
# submit_button = driver.find_element(by=By.ID, value="search-btn")
submit_button = driver.find_element(by=By.CSS_SELECTOR, value=".btn_search")
time.sleep(3)
text_box.send_keys("맞춤법 검사기")
time.sleep(3)
submit_button.click()
time.sleep(3)
time.sleep(60)
driver.quit()
퀴즈
#9기문과생도AI