Video to Transcripts
OpenAI: Transcripts
import os
from dotenv import load_dotenv
# 토큰 정보로드
api_key = os.getenv("OPENAI_API_KEY")
load_dotenv()
True
1. 자막생성
from openai import OpenAI
client = OpenAI()
audio_file = open("data/채용면접_샘플_01.wav", "rb")
transcript = client.audio.transcriptions.create(
file=audio_file,
model="whisper-1",
language="ko",
response_format="srt", # 자막 포맷
temperature=0.0,
)
print(transcript)
1
00:00:00,000 --> 00:00:07,000
지금 생각해보면 가장 기억에 남는 것이 외환위기 때의 경험입니다.
2
00:00:07,000 --> 00:00:13,000
외환위기 때 나라뿐 아니라 회사에서는 달러가 많이 부족했고
3
00:00:13,000 --> 00:00:19,000
우리는 수출을 하기 위해서 원자재라든지 대금지급
4
00:00:19,000 --> 00:00:23,000
혹은 또 우리가 수출한 물건에 대한 대금을 받아야 되는 상황이었습니다.
5
00:00:23,000 --> 00:00:29,000
일단은 우리가 해외로부터 받아야 될 때는 최대한 그것을 달러로 받았고
6
00:00:29,000 --> 00:00:36,000
반대로 우리가 지불해야 될 것은 가능한 한 원자재를 통해서 지급을 했습니다.
7
00:00:36,000 --> 00:00:40,000
그 원자재라는 것이 결국은 반도체 쪽이었는데
8
00:00:40,000 --> 00:00:46,000
우리나라에서 가장 나름 손쉽게 구하면서도 꼭 필요한 제품인 반도체를
9
00:00:46,000 --> 00:00:48,000
원자재값 대응으로 물건을 주면서
10
00:00:48,000 --> 00:00:53,000
반대로 해외에서 우리가 받아야 될 것은 달러로 받으면서
11
00:00:53,000 --> 00:00:57,000
그 환율차를 가장 줄일 수가 있었습니다.
12
00:00:57,000 --> 00:01:06,000
그것으로 인해서 약 6개월 동안에 나름 회사에서는 달러 지출을 막을 수 있었고
13
00:01:06,000 --> 00:01:15,000
그때 그나마 달러를 회사에서 확보를 해서 나름의 위기를 극복할 수 있었던 것으로 생각합니다.
2. YouTube
#%pip install pytube
from pytube import YouTube
import os
link = "https://youtu.be/LQS3y7Tckhc?si=pEJdAfSq3On_Uvou"
yt = YouTube(link)
filename = yt.streams.filter(only_audio=True).first().download()
renamed_file = filename.replace(".mp4", ".mp3")
os.rename(filename, renamed_file)
print(renamed_file)
/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화.mp3
3. MP3 -> WAV 변환
#%pip install moviepy
from moviepy.editor import AudioFileClip
def convert_mp3_to_wav(filepath):
# WAV 파일 경로
wav_file_path = filepath.replace(".mp3", ".wav")
# MP4 파일 로드
audio_clip = AudioFileClip(filepath)
# WAV 형식으로 오디오 추출 및 저장
audio_clip.write_audiofile(wav_file_path, fps=44100, nbytes=2, codec="pcm_s16le")
return wav_file_path
wav_file = convert_mp3_to_wav(renamed_file)
MoviePy - Writing audio in /home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화.wav
MoviePy - Done.
from pydub import AudioSegment
# 오디오 파일 불러오기
audio = AudioSegment.from_file(wav_file, format="wav")
total_length = len(audio)
length_per_chunk = 60 * 1000 # 60초
if not os.path.exists(".tmp"):
os.mkdir(".tmp")
folder_path = os.path.join(".tmp", wav_file[:-4])
if not os.path.exists(folder_path):
os.mkdir(folder_path)
chunks = []
for i in range(0, total_length, length_per_chunk):
chunk_file_path = os.path.join(folder_path, f"{i}.wav")
audio[i : i + length_per_chunk].export(chunk_file_path, format="wav")
chunks.append(chunk_file_path)
chunks
['/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/0.wav',
'/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/60000.wav',
'/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/120000.wav',
'/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/180000.wav',
'/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/240000.wav',
'/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/300000.wav',
'/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/360000.wav']
from datetime import datetime, timedelta
import re
def adjust_timestamps(transcript, minutes=1):
# Define the regular expression pattern for timestamps
timestamp_pattern = re.compile(r"(\d{2}:\d{2}:\d{2},\d{3})")
# Function to add minutes to a timestamp
def add_minutes(timestamp_str, minutes):
timestamp = datetime.strptime(timestamp_str, "%H:%M:%S,%f")
adjusted_timestamp = timestamp + timedelta(minutes=minutes)
return adjusted_timestamp.strftime("%H:%M:%S,%f")[:-3]
# Replace timestamps in the transcript
adjusted_transcript = timestamp_pattern.sub(
lambda match: add_minutes(match.group(1), minutes), transcript
)
return adjusted_transcript
transcripts = []
for i, chunk in enumerate(chunks):
print(chunk)
audio_file = open(chunk, "rb")
transcript = client.audio.transcriptions.create(
file=audio_file,
model="whisper-1",
language="ko",
response_format="srt",
temperature=0.01,
)
transcripts.append(adjust_timestamps(transcript, minutes=i))
/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/0.wav
/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/60000.wav
/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/120000.wav
/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/180000.wav
/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/240000.wav
/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/300000.wav
/home/kubwa/kubwai/10-LangChain/00_OpenAI-API/[GPTs로 꿀빨기] PPT 제작 자동화/360000.wav
def merge_transcripts(*transcripts):
merged_transcript = ""
current_number = 1
for transcript in transcripts:
# Split the transcript into segments
segments = transcript.strip().split("\n\n")
for segment in segments:
# Split each segment into lines
lines = segment.split("\n")
# Replace the number at the beginning of each segment with the correct sequence number
lines[0] = str(current_number)
# Increment the sequence number
current_number += 1
# Reassemble the segment
merged_transcript += "\n".join(lines) + "\n\n"
return merged_transcript.strip()
print(merge_transcripts(*transcripts))
1
00:00:00,000 --> 00:00:07,760
여기 있는 내용들을 쭉 드래그를 합니다 복사를 하신 다음에 ppt 제작 전문가 gptsbot한테 붙여넣기를 해주는 거예요
2
00:00:07,760 --> 00:00:16,639
얘가 ppt를 작성을 해주는 것을 볼 수가 있어요 ppt의 제목을 알아서 뽑아주고요 그 안에 포함될 블랙포인트들을 구성을 해줍니다
3
00:00:16,639 --> 00:00:25,920
마지막으로 발표 스크립트도 얘가 자동으로 작성을 해주거든요 에디터 영역에다가 붙여넣기를 해주시면은 오른쪽에 깔끔하게 장표가 완성이 되는 것을 볼 수가 있어요
4
00:00:25,920 --> 00:00:27,360
굉장히 빠르게 완성이 되죠
5
00:00:30,000 --> 00:00:38,160
안녕하세요 오늘은 채치 pt의 새로운 기능 중에 하나인 gpts에 대해서 알아보도록 하겠는데요
6
00:00:38,160 --> 00:00:42,639
제가 최근에 이 gpts를 활용하면서 정말 놀라움을 금치 못하고 있습니다
7
00:00:42,639 --> 00:00:48,240
생산성을 극대화 해주는 게 바로 gpts 인데요 관심 있으신 분들은 한번씩 써보고 계실 것 같아요
8
00:00:48,240 --> 00:00:52,560
제가 평소에 너무 싫어하는 게 이 ppt를 제작하는 것을 너무 귀찮아해요
9
00:00:52,560 --> 00:00:54,160
문서 하는 것도 너무 귀찮아하고요
10
00:00:54,160 --> 00:00:56,560
이 ppt를 어떻게 하면 좀 쉽게 만들 수 있을까
11
00:00:56,560 --> 00:01:00,720
요즘에는 채치 pt를 사용해서 귀찮은 부분들을 많이 해소를 하고 있습니다
12
00:01:00,000 --> 00:01:03,900
제가 이렇게 PPT 제작 전문가라는 GPTS를 만들어 봤어요
13
00:01:03,900 --> 00:01:06,100
먼저 이 기능에 대해서 간단히 소개를 해드릴게요
14
00:01:06,100 --> 00:01:08,840
웹사이트에 링크나 아니면 글을 넣어주게 되면은
15
00:01:08,840 --> 00:01:11,180
그 내용을 기반으로 PPT를 만들어주는
16
00:01:11,180 --> 00:01:12,980
그런 채집 PT라고 보시면 돼요
17
00:01:12,980 --> 00:01:14,080
예시를 들어볼게요
18
00:01:14,080 --> 00:01:17,180
오늘자 신문 기사를 하나 랜덤하게 발췌를 했습니다
19
00:01:17,180 --> 00:01:19,120
라이폰 통화 녹음 굿, 워치 날림은 아쉽
20
00:01:19,120 --> 00:01:22,620
화제의 SKT A. 써보니 라는 제목의 기사이고요
21
00:01:22,620 --> 00:01:25,920
자 이 내용들을 가지고 제가 PPT를 만들고 싶어요
22
00:01:25,920 --> 00:01:28,059
여기 있는 내용들을 쭉 드래그를 합니다
23
00:01:28,059 --> 00:01:31,260
자 이렇게 드래그를 해서 내용을 가져오는 거죠
24
00:01:31,260 --> 00:01:33,020
복사를 하신 다음에
25
00:01:33,020 --> 00:01:35,639
PPT 제작 전문가 GPTS 보트한테
26
00:01:35,639 --> 00:01:36,959
붙여넣기를 해주는 거예요
27
00:01:36,959 --> 00:01:38,560
자 이렇게 내용을 붙여 넣었습니다
28
00:01:38,560 --> 00:01:39,799
엔터키를 입력해 볼게요
29
00:01:39,799 --> 00:01:43,340
얘가 PPT를 작성을 해주는 것을 볼 수가 있어요
30
00:01:43,340 --> 00:01:45,680
PPT의 제목을 알아서 뽑아주고요
31
00:01:45,680 --> 00:01:48,680
그 안에 포함될 블랙 포인트들을 구성을 해줍니다
32
00:01:48,680 --> 00:01:52,419
제가 여기 안에 내용은 아주 간략하게 구성을 해달라고 했기 때문에
33
00:01:52,419 --> 00:01:56,020
구체적인 내용보다는 핵심 위주로 이렇게 뽑아내서 넣어주는 거를 볼 수가 있죠
34
00:01:56,020 --> 00:01:57,759
처음에 핵심 내용을 뽑아주고요
35
00:01:57,759 --> 00:02:00,119
다음으로는 슬라이드 구성 부분에서
36
00:02:00,000 --> 00:02:02,320
슬라이드 1에는 제목은 뭐가 들어가고
37
00:02:02,320 --> 00:02:04,540
장표 안에 들어가는 블랙 포인트는 뭐가 들어가고
38
00:02:04,540 --> 00:02:06,040
이런 식으로 구성을 해주고 있어요
39
00:02:06,040 --> 00:02:09,520
마지막으로 발표 스크립트도 얘가 자동으로 작성을 해주거든요
40
00:02:09,520 --> 00:02:13,080
제가 발표할 내용들을 알아서 작성을 해주는 것을 볼 수가 있고요
41
00:02:13,080 --> 00:02:14,860
3장의 슬라이드로 구성이 됐는데
42
00:02:14,860 --> 00:02:16,260
중간에 길어서 끊어졌어요
43
00:02:16,260 --> 00:02:19,059
그러면 오른쪽에 Continue Generating을 눌러주시면 됩니다
44
00:02:19,059 --> 00:02:22,559
이렇게 발표 스크립트까지 완성을 해줬고요
45
00:02:22,559 --> 00:02:26,200
다음으로는 MARF 형식의 슬라이드라는 것을 작성해주는 것을 볼 수가 있어요
46
00:02:26,200 --> 00:02:27,400
위에 내용까지는 알겠는데
47
00:02:27,400 --> 00:02:30,000
갑자기 여기에서 MARF라는 게 툭 튀어나왔죠
48
00:02:30,000 --> 00:02:31,900
이거는 어떻게 쓰는 건지 제가 보여드릴게요
49
00:02:31,900 --> 00:02:33,740
이렇게 구성을 해주는 것까지도 좋은데요
50
00:02:33,740 --> 00:02:36,639
저는 장표를 만드는 것까지도 자동화를 하고 싶었던 거예요
51
00:02:36,639 --> 00:02:38,880
여기 보시면 Copy Code라는 버튼이 보이실 거예요
52
00:02:38,880 --> 00:02:40,919
이거를 눌러서 코드를 복사를 합니다
53
00:02:40,919 --> 00:02:44,520
다음으로는 Mark Slides라는 웹사이트로 오시면 되고요
54
00:02:44,520 --> 00:02:47,880
markslides.ai 여기 주소로 오시면 돼요
55
00:02:47,880 --> 00:02:50,360
에디터 영역에다가 붙여넣기를 해주시면
56
00:02:50,360 --> 00:02:53,799
오른쪽에 깔끔하게 장표가 완성이 되는 것을 볼 수가 있어요
57
00:02:53,799 --> 00:02:55,099
굉장히 빠르게 완성이 됐죠
58
00:02:55,160 --> 00:02:58,540
바로 슬라이드 표시 진행을 하실 수도 있고
59
00:02:58,540 --> 00:03:00,540
Export as PDF라는 것들도 있어요
60
00:03:00,000 --> 00:03:02,560
버튼으로 pdf로 내려받으실 수도 있어요
61
00:03:02,560 --> 00:03:06,840
물론 여기 있는 ppt 장표가 최종 버전이라고 하기엔
62
00:03:06,840 --> 00:03:08,200
좀 어려움이 있을 수 있겠죠
63
00:03:08,200 --> 00:03:09,540
내용 보충이 필요할 수도 있고요
64
00:03:09,540 --> 00:03:11,900
하지만 기본 골격을 잡는 데에는
65
00:03:11,900 --> 00:03:14,680
굉장히 빠른 속도로 잡으실 수가 있기 때문에
66
00:03:14,680 --> 00:03:16,340
생산성을 높일 수가 있습니다
67
00:03:16,340 --> 00:03:19,480
그런데 여기 있는 내용을 복사 붙여넣기 하는 것도
68
00:03:19,480 --> 00:03:20,719
귀찮은 일일 수가 있어요
69
00:03:20,719 --> 00:03:22,879
그래서 지금부터 보여드릴 내용은
70
00:03:22,879 --> 00:03:25,920
여기에 단순하게 링크를 넣는 방법이에요
71
00:03:25,920 --> 00:03:28,200
이번에는 해외 기사도 한번 가져와 볼게요
72
00:03:28,200 --> 00:03:30,700
이번엔 이렇게 드래그해서 가져오는 게 아니라
73
00:03:30,700 --> 00:03:33,740
단순하게 이 신문기사의 링크를 복사를 해서
74
00:03:33,740 --> 00:03:37,980
ppt 제작 전문가 보드한테 링크를 알려주도록 하겠습니다
75
00:03:37,980 --> 00:03:40,180
이렇게 링크를 알려주면 제목과 함께
76
00:03:40,180 --> 00:03:42,540
본문의 내용을 얘가 알아서 가져오게끔
77
00:03:42,540 --> 00:03:44,279
프럼프트가 짜져 있어요
78
00:03:44,279 --> 00:03:48,380
자 이렇게 내용을 가져와서 슬라이드로 변형을 하고 있고요
79
00:03:48,380 --> 00:03:51,380
여기에 나와 있는 내용들은 해외 기사임에도 불구하고
80
00:03:51,380 --> 00:03:53,259
한글로 잘 쓰고 있는 것을 볼 수가 있죠
81
00:03:53,259 --> 00:03:55,820
제가 무조건 한글로 번역하게끔 프럼프트를 넣어놨어요
82
00:03:55,820 --> 00:03:57,720
그렇기 때문에 해외 기사를 넣더라도
83
00:03:57,720 --> 00:04:00,580
이렇게 한글로 잘 번역해서 슬라이드 구성을 해주시면 됩니다
84
00:04:00,000 --> 00:04:02,680
마지막으로 슬라이드 발표 스크립트까지
85
00:04:02,680 --> 00:04:05,080
이렇게 잘 작성하는 것을 볼 수가 있죠
86
00:04:05,080 --> 00:04:09,680
그런데 무조건 링크 붙여넣기 기능은 잘 되는 것은 아니에요
87
00:04:09,680 --> 00:04:13,800
가끔 가다가 이렇게 중간에 에러가 나타나기도 하고요
88
00:04:13,800 --> 00:04:18,440
때로는 이렇게 regenerate를 눌러서 다시 시도를 하는데
89
00:04:18,440 --> 00:04:22,280
이런 식으로 웹사이트 접근하는 데에 문제가 있다고 하면서
90
00:04:22,280 --> 00:04:24,440
정보를 가져오는데 좀 어려움이 있는 것 같아요
91
00:04:24,440 --> 00:04:27,480
이유는 로봇이 정보를 자동으로 긁어가지 못하게끔
92
00:04:27,480 --> 00:04:28,480
블록을 하고 있는데
93
00:04:28,480 --> 00:04:32,080
GPTS를 쓰게 되면은 이러한 문제점이 종종 발생을 하는 것 같습니다
94
00:04:32,080 --> 00:04:34,720
현재로서는 좀 번거로울 수 있겠지만
95
00:04:34,720 --> 00:04:36,520
추천드리는 방법은 웹사이트에 가서
96
00:04:36,520 --> 00:04:41,040
이 전체 내용을 복사를 해서 붙여넣기 하는 방식을 가장 먼저 추천을 드리고요
97
00:04:41,040 --> 00:04:44,040
슬라이드 구성을 하실 때에도 붙여넣기를 할 때
98
00:04:44,040 --> 00:04:46,040
전체 내용을 붙여넣기를 하지 마시고요
99
00:04:46,040 --> 00:04:48,240
큰 단락 위주로 붙여넣기 하시면 더욱 좋습니다
100
00:04:48,240 --> 00:04:50,919
PPT에 큰 주제가 있고
101
00:04:50,919 --> 00:04:54,160
이걸 관통하는 소 주제를 여러 개를 구성을 했어요
102
00:04:54,160 --> 00:04:56,919
1번 주제가 있고 2번 주제가 있고 3번 주제가 있고요
103
00:04:56,919 --> 00:04:59,240
내용을 그냥 다 때려넣고 얘가 잘해줄게요
104
00:05:00,000 --> 00:05:01,340
라고 하지 마시고요
105
00:05:01,340 --> 00:05:03,300
먼저 1번 주제에 해당한 내용을 붙여 넣고
106
00:05:03,300 --> 00:05:04,440
슬라이드 구성을 하시고
107
00:05:04,440 --> 00:05:06,200
2번 주제 넣고 구성하시고
108
00:05:06,200 --> 00:05:07,880
3번 주제 넣고 구성하시는 게
109
00:05:07,880 --> 00:05:09,680
가장 결과물이 좋았던 것 같습니다
110
00:05:09,680 --> 00:05:11,500
제가 만든 이 PPT 제작 전문가는
111
00:05:11,500 --> 00:05:14,340
어떻게 하면 효율적으로 써볼 수 있을까 해서
112
00:05:14,340 --> 00:05:16,180
처음으로 간단하게 한번 만들어 봤고요
113
00:05:16,180 --> 00:05:18,400
최대 슬라이드 3장만 만들게끔 넣어 놨거든요
114
00:05:18,400 --> 00:05:20,780
나중에 여러분들이 프롬프트 튜닝을 하시게 되면
115
00:05:20,780 --> 00:05:22,480
5장 7장 이렇게 늘리거나
116
00:05:22,480 --> 00:05:24,639
안에 들어가는 내용 구성하는 방법도
117
00:05:24,639 --> 00:05:25,700
달리 하실 수가 있습니다
118
00:05:25,700 --> 00:05:26,780
오늘 영상에서는
119
00:05:26,780 --> 00:05:29,280
제가 이 PPT 제작 전문가를 어떻게 활용하고 있는지
120
00:05:29,280 --> 00:05:32,619
이것을 활용해서 어떻게 슬라이드를 좀 빠르게 만드는지
121
00:05:32,619 --> 00:05:34,320
그 방법에 대해서 공유를 해드렸고요
122
00:05:34,320 --> 00:05:36,119
만약에 이 영상이 반응이 좋다면
123
00:05:36,119 --> 00:05:38,520
PPT 제작 전문가를 어떻게 구성을 했는지
124
00:05:38,520 --> 00:05:40,619
제가 어떠한 프롬프트를 썼는지도
125
00:05:40,619 --> 00:05:42,060
공유를 해드리도록 하겠습니다
126
00:05:42,060 --> 00:05:44,060
그리고 이 GPTS를 만들 때
127
00:05:44,060 --> 00:05:45,980
좀 좋은 결과물을 내기 위해서는
128
00:05:45,980 --> 00:05:47,919
어떤 식으로 구성을 하면 되는지도
129
00:05:47,919 --> 00:05:49,279
영상으로 담아보도록 할게요
130
00:05:49,279 --> 00:05:52,880
이 PPT 제작 전문가를 체험해 보고 싶으신 분들을 위해서
131
00:05:52,880 --> 00:05:55,279
더보기란에 링크 넣어두도록 하겠습니다
132
00:05:55,279 --> 00:05:56,580
오늘 영상은 여기까지였습니다
133
00:05:56,580 --> 00:05:57,520
감사합니다
134
00:06:00,000 --> 00:06:11,470
아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아
merged_transcript = merge_transcripts(*transcripts)
print(merged_transcript)
1
00:00:00,000 --> 00:00:07,760
여기 있는 내용들을 쭉 드래그를 합니다 복사를 하신 다음에 ppt 제작 전문가 gptsbot한테 붙여넣기를 해주는 거예요
2
00:00:07,760 --> 00:00:16,639
얘가 ppt를 작성을 해주는 것을 볼 수가 있어요 ppt의 제목을 알아서 뽑아주고요 그 안에 포함될 블랙포인트들을 구성을 해줍니다
3
00:00:16,639 --> 00:00:25,920
마지막으로 발표 스크립트도 얘가 자동으로 작성을 해주거든요 에디터 영역에다가 붙여넣기를 해주시면은 오른쪽에 깔끔하게 장표가 완성이 되는 것을 볼 수가 있어요
4
00:00:25,920 --> 00:00:27,360
굉장히 빠르게 완성이 되죠
5
00:00:30,000 --> 00:00:38,160
안녕하세요 오늘은 채치 pt의 새로운 기능 중에 하나인 gpts에 대해서 알아보도록 하겠는데요
6
00:00:38,160 --> 00:00:42,639
제가 최근에 이 gpts를 활용하면서 정말 놀라움을 금치 못하고 있습니다
7
00:00:42,639 --> 00:00:48,240
생산성을 극대화 해주는 게 바로 gpts 인데요 관심 있으신 분들은 한번씩 써보고 계실 것 같아요
8
00:00:48,240 --> 00:00:52,560
제가 평소에 너무 싫어하는 게 이 ppt를 제작하는 것을 너무 귀찮아해요
9
00:00:52,560 --> 00:00:54,160
문서 하는 것도 너무 귀찮아하고요
10
00:00:54,160 --> 00:00:56,560
이 ppt를 어떻게 하면 좀 쉽게 만들 수 있을까
11
00:00:56,560 --> 00:01:00,720
요즘에는 채치 pt를 사용해서 귀찮은 부분들을 많이 해소를 하고 있습니다
12
00:01:00,000 --> 00:01:03,900
제가 이렇게 PPT 제작 전문가라는 GPTS를 만들어 봤어요
13
00:01:03,900 --> 00:01:06,100
먼저 이 기능에 대해서 간단히 소개를 해드릴게요
14
00:01:06,100 --> 00:01:08,840
웹사이트에 링크나 아니면 글을 넣어주게 되면은
15
00:01:08,840 --> 00:01:11,180
그 내용을 기반으로 PPT를 만들어주는
16
00:01:11,180 --> 00:01:12,980
그런 채집 PT라고 보시면 돼요
17
00:01:12,980 --> 00:01:14,080
예시를 들어볼게요
18
00:01:14,080 --> 00:01:17,180
오늘자 신문 기사를 하나 랜덤하게 발췌를 했습니다
19
00:01:17,180 --> 00:01:19,120
라이폰 통화 녹음 굿, 워치 날림은 아쉽
20
00:01:19,120 --> 00:01:22,620
화제의 SKT A. 써보니 라는 제목의 기사이고요
21
00:01:22,620 --> 00:01:25,920
자 이 내용들을 가지고 제가 PPT를 만들고 싶어요
22
00:01:25,920 --> 00:01:28,059
여기 있는 내용들을 쭉 드래그를 합니다
23
00:01:28,059 --> 00:01:31,260
자 이렇게 드래그를 해서 내용을 가져오는 거죠
24
00:01:31,260 --> 00:01:33,020
복사를 하신 다음에
25
00:01:33,020 --> 00:01:35,639
PPT 제작 전문가 GPTS 보트한테
26
00:01:35,639 --> 00:01:36,959
붙여넣기를 해주는 거예요
27
00:01:36,959 --> 00:01:38,560
자 이렇게 내용을 붙여 넣었습니다
28
00:01:38,560 --> 00:01:39,799
엔터키를 입력해 볼게요
29
00:01:39,799 --> 00:01:43,340
얘가 PPT를 작성을 해주는 것을 볼 수가 있어요
30
00:01:43,340 --> 00:01:45,680
PPT의 제목을 알아서 뽑아주고요
31
00:01:45,680 --> 00:01:48,680
그 안에 포함될 블랙 포인트들을 구성을 해줍니다
32
00:01:48,680 --> 00:01:52,419
제가 여기 안에 내용은 아주 간략하게 구성을 해달라고 했기 때문에
33
00:01:52,419 --> 00:01:56,020
구체적인 내용보다는 핵심 위주로 이렇게 뽑아내서 넣어주는 거를 볼 수가 있죠
34
00:01:56,020 --> 00:01:57,759
처음에 핵심 내용을 뽑아주고요
35
00:01:57,759 --> 00:02:00,119
다음으로는 슬라이드 구성 부분에서
36
00:02:00,000 --> 00:02:02,320
슬라이드 1에는 제목은 뭐가 들어가고
37
00:02:02,320 --> 00:02:04,540
장표 안에 들어가는 블랙 포인트는 뭐가 들어가고
38
00:02:04,540 --> 00:02:06,040
이런 식으로 구성을 해주고 있어요
39
00:02:06,040 --> 00:02:09,520
마지막으로 발표 스크립트도 얘가 자동으로 작성을 해주거든요
40
00:02:09,520 --> 00:02:13,080
제가 발표할 내용들을 알아서 작성을 해주는 것을 볼 수가 있고요
41
00:02:13,080 --> 00:02:14,860
3장의 슬라이드로 구성이 됐는데
42
00:02:14,860 --> 00:02:16,260
중간에 길어서 끊어졌어요
43
00:02:16,260 --> 00:02:19,059
그러면 오른쪽에 Continue Generating을 눌러주시면 됩니다
44
00:02:19,059 --> 00:02:22,559
이렇게 발표 스크립트까지 완성을 해줬고요
45
00:02:22,559 --> 00:02:26,200
다음으로는 MARF 형식의 슬라이드라는 것을 작성해주는 것을 볼 수가 있어요
46
00:02:26,200 --> 00:02:27,400
위에 내용까지는 알겠는데
47
00:02:27,400 --> 00:02:30,000
갑자기 여기에서 MARF라는 게 툭 튀어나왔죠
48
00:02:30,000 --> 00:02:31,900
이거는 어떻게 쓰는 건지 제가 보여드릴게요
49
00:02:31,900 --> 00:02:33,740
이렇게 구성을 해주는 것까지도 좋은데요
50
00:02:33,740 --> 00:02:36,639
저는 장표를 만드는 것까지도 자동화를 하고 싶었던 거예요
51
00:02:36,639 --> 00:02:38,880
여기 보시면 Copy Code라는 버튼이 보이실 거예요
52
00:02:38,880 --> 00:02:40,919
이거를 눌러서 코드를 복사를 합니다
53
00:02:40,919 --> 00:02:44,520
다음으로는 Mark Slides라는 웹사이트로 오시면 되고요
54
00:02:44,520 --> 00:02:47,880
markslides.ai 여기 주소로 오시면 돼요
55
00:02:47,880 --> 00:02:50,360
에디터 영역에다가 붙여넣기를 해주시면
56
00:02:50,360 --> 00:02:53,799
오른쪽에 깔끔하게 장표가 완성이 되는 것을 볼 수가 있어요
57
00:02:53,799 --> 00:02:55,099
굉장히 빠르게 완성이 됐죠
58
00:02:55,160 --> 00:02:58,540
바로 슬라이드 표시 진행을 하실 수도 있고
59
00:02:58,540 --> 00:03:00,540
Export as PDF라는 것들도 있어요
60
00:03:00,000 --> 00:03:02,560
버튼으로 pdf로 내려받으실 수도 있어요
61
00:03:02,560 --> 00:03:06,840
물론 여기 있는 ppt 장표가 최종 버전이라고 하기엔
62
00:03:06,840 --> 00:03:08,200
좀 어려움이 있을 수 있겠죠
63
00:03:08,200 --> 00:03:09,540
내용 보충이 필요할 수도 있고요
64
00:03:09,540 --> 00:03:11,900
하지만 기본 골격을 잡는 데에는
65
00:03:11,900 --> 00:03:14,680
굉장히 빠른 속도로 잡으실 수가 있기 때문에
66
00:03:14,680 --> 00:03:16,340
생산성을 높일 수가 있습니다
67
00:03:16,340 --> 00:03:19,480
그런데 여기 있는 내용을 복사 붙여넣기 하는 것도
68
00:03:19,480 --> 00:03:20,719
귀찮은 일일 수가 있어요
69
00:03:20,719 --> 00:03:22,879
그래서 지금부터 보여드릴 내용은
70
00:03:22,879 --> 00:03:25,920
여기에 단순하게 링크를 넣는 방법이에요
71
00:03:25,920 --> 00:03:28,200
이번에는 해외 기사도 한번 가져와 볼게요
72
00:03:28,200 --> 00:03:30,700
이번엔 이렇게 드래그해서 가져오는 게 아니라
73
00:03:30,700 --> 00:03:33,740
단순하게 이 신문기사의 링크를 복사를 해서
74
00:03:33,740 --> 00:03:37,980
ppt 제작 전문가 보드한테 링크를 알려주도록 하겠습니다
75
00:03:37,980 --> 00:03:40,180
이렇게 링크를 알려주면 제목과 함께
76
00:03:40,180 --> 00:03:42,540
본문의 내용을 얘가 알아서 가져오게끔
77
00:03:42,540 --> 00:03:44,279
프럼프트가 짜져 있어요
78
00:03:44,279 --> 00:03:48,380
자 이렇게 내용을 가져와서 슬라이드로 변형을 하고 있고요
79
00:03:48,380 --> 00:03:51,380
여기에 나와 있는 내용들은 해외 기사임에도 불구하고
80
00:03:51,380 --> 00:03:53,259
한글로 잘 쓰고 있는 것을 볼 수가 있죠
81
00:03:53,259 --> 00:03:55,820
제가 무조건 한글로 번역하게끔 프럼프트를 넣어놨어요
82
00:03:55,820 --> 00:03:57,720
그렇기 때문에 해외 기사를 넣더라도
83
00:03:57,720 --> 00:04:00,580
이렇게 한글로 잘 번역해서 슬라이드 구성을 해주시면 됩니다
84
00:04:00,000 --> 00:04:02,680
마지막으로 슬라이드 발표 스크립트까지
85
00:04:02,680 --> 00:04:05,080
이렇게 잘 작성하는 것을 볼 수가 있죠
86
00:04:05,080 --> 00:04:09,680
그런데 무조건 링크 붙여넣기 기능은 잘 되는 것은 아니에요
87
00:04:09,680 --> 00:04:13,800
가끔 가다가 이렇게 중간에 에러가 나타나기도 하고요
88
00:04:13,800 --> 00:04:18,440
때로는 이렇게 regenerate를 눌러서 다시 시도를 하는데
89
00:04:18,440 --> 00:04:22,280
이런 식으로 웹사이트 접근하는 데에 문제가 있다고 하면서
90
00:04:22,280 --> 00:04:24,440
정보를 가져오는데 좀 어려움이 있는 것 같아요
91
00:04:24,440 --> 00:04:27,480
이유는 로봇이 정보를 자동으로 긁어가지 못하게끔
92
00:04:27,480 --> 00:04:28,480
블록을 하고 있는데
93
00:04:28,480 --> 00:04:32,080
GPTS를 쓰게 되면은 이러한 문제점이 종종 발생을 하는 것 같습니다
94
00:04:32,080 --> 00:04:34,720
현재로서는 좀 번거로울 수 있겠지만
95
00:04:34,720 --> 00:04:36,520
추천드리는 방법은 웹사이트에 가서
96
00:04:36,520 --> 00:04:41,040
이 전체 내용을 복사를 해서 붙여넣기 하는 방식을 가장 먼저 추천을 드리고요
97
00:04:41,040 --> 00:04:44,040
슬라이드 구성을 하실 때에도 붙여넣기를 할 때
98
00:04:44,040 --> 00:04:46,040
전체 내용을 붙여넣기를 하지 마시고요
99
00:04:46,040 --> 00:04:48,240
큰 단락 위주로 붙여넣기 하시면 더욱 좋습니다
100
00:04:48,240 --> 00:04:50,919
PPT에 큰 주제가 있고
101
00:04:50,919 --> 00:04:54,160
이걸 관통하는 소 주제를 여러 개를 구성을 했어요
102
00:04:54,160 --> 00:04:56,919
1번 주제가 있고 2번 주제가 있고 3번 주제가 있고요
103
00:04:56,919 --> 00:04:59,240
내용을 그냥 다 때려넣고 얘가 잘해줄게요
104
00:05:00,000 --> 00:05:01,340
라고 하지 마시고요
105
00:05:01,340 --> 00:05:03,300
먼저 1번 주제에 해당한 내용을 붙여 넣고
106
00:05:03,300 --> 00:05:04,440
슬라이드 구성을 하시고
107
00:05:04,440 --> 00:05:06,200
2번 주제 넣고 구성하시고
108
00:05:06,200 --> 00:05:07,880
3번 주제 넣고 구성하시는 게
109
00:05:07,880 --> 00:05:09,680
가장 결과물이 좋았던 것 같습니다
110
00:05:09,680 --> 00:05:11,500
제가 만든 이 PPT 제작 전문가는
111
00:05:11,500 --> 00:05:14,340
어떻게 하면 효율적으로 써볼 수 있을까 해서
112
00:05:14,340 --> 00:05:16,180
처음으로 간단하게 한번 만들어 봤고요
113
00:05:16,180 --> 00:05:18,400
최대 슬라이드 3장만 만들게끔 넣어 놨거든요
114
00:05:18,400 --> 00:05:20,780
나중에 여러분들이 프롬프트 튜닝을 하시게 되면
115
00:05:20,780 --> 00:05:22,480
5장 7장 이렇게 늘리거나
116
00:05:22,480 --> 00:05:24,639
안에 들어가는 내용 구성하는 방법도
117
00:05:24,639 --> 00:05:25,700
달리 하실 수가 있습니다
118
00:05:25,700 --> 00:05:26,780
오늘 영상에서는
119
00:05:26,780 --> 00:05:29,280
제가 이 PPT 제작 전문가를 어떻게 활용하고 있는지
120
00:05:29,280 --> 00:05:32,619
이것을 활용해서 어떻게 슬라이드를 좀 빠르게 만드는지
121
00:05:32,619 --> 00:05:34,320
그 방법에 대해서 공유를 해드렸고요
122
00:05:34,320 --> 00:05:36,119
만약에 이 영상이 반응이 좋다면
123
00:05:36,119 --> 00:05:38,520
PPT 제작 전문가를 어떻게 구성을 했는지
124
00:05:38,520 --> 00:05:40,619
제가 어떠한 프롬프트를 썼는지도
125
00:05:40,619 --> 00:05:42,060
공유를 해드리도록 하겠습니다
126
00:05:42,060 --> 00:05:44,060
그리고 이 GPTS를 만들 때
127
00:05:44,060 --> 00:05:45,980
좀 좋은 결과물을 내기 위해서는
128
00:05:45,980 --> 00:05:47,919
어떤 식으로 구성을 하면 되는지도
129
00:05:47,919 --> 00:05:49,279
영상으로 담아보도록 할게요
130
00:05:49,279 --> 00:05:52,880
이 PPT 제작 전문가를 체험해 보고 싶으신 분들을 위해서
131
00:05:52,880 --> 00:05:55,279
더보기란에 링크 넣어두도록 하겠습니다
132
00:05:55,279 --> 00:05:56,580
오늘 영상은 여기까지였습니다
133
00:05:56,580 --> 00:05:57,520
감사합니다
134
00:06:00,000 --> 00:06:11,470
아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아 아
with open("sample.srt", "w") as f:
f.write(merged_transcript)
# define a function for GPT to generate fictitious prompts
def post_processing(context: str) -> str:
"""Given an instruction, generate a prompt."""
# system_prompt = instruction
# user_prompt = f"Give me a summary of this video: {context}"
response = client.chat.completions.create(
model="gpt-4-turbo-preview",
temperature=0.1,
messages=[
{
"role": "system",
"content": "당신은 자막 정보를 바탕으로 요약을 작성하는 인공지능입니다.",
# we pick an example topic (friends talking about a vacation) so that GPT does not refuse or ask clarifying questions
},
{"role": "user", "content": context},
],
stream=True,
)
final_answer = []
# 스트림 모드에서는 completion.choices 를 반복문으로 순회
for chunk in response:
# chunk 를 저장
chunk_content = chunk.choices[0].delta.content
# chunk 가 문자열이면 final_answer 에 추가
if isinstance(chunk_content, str):
final_answer.append(chunk_content)
# 토큰 단위로 실시간 답변 출력
print(chunk_content, end="")
return "".join(final_answer)
instruction = f"""주어진 비디오 "자막정보" 를 바탕으로 [요청사항]을 차례대로 수행해주세요.
[자막정보]
{merged_transcript}
[요청사항]
1. 주어진 [자막정보]에서 중요한 주제를 시간 순서에 맞게 선정하고, 주제가 시작되는 시간을 기록해주세요.
2. 주제는 한 줄 요약을 작성하고, 자막에서 주제가 시작되는 시간을 mm:ss(분:초) 형식으로 작성하세요. (예: 00:05 👋 자막 생성 기능에 대한 소개)
3. 요약은 한글로 작성해주세요.
4. 각 문장에 적합한 emoji를 최대한 활용해 주세요
5. 한글로 번역해줘.
[출력예시]
00:12 👋 GPTs 의 주요 개념에 대하여 소개해요
03:13 👀 GPTs 의 장단점과 활용 사례에 대하여 자세히 알아봐요
[주의사항]
- 주제는 최대한 많이 추출해 주세요.
- 시간표기에 오류가 없도록 주의해 주세요. 분:초 형식으로 작성합니다. (예: 00:12)
run step-by-step. Take a deep breath. You can do it!
"""
summary_output = post_processing(instruction)
00:30 👋 GPTS의 새로운 기능 소개 시작해요
00:52 🤔 PPT 제작의 어려움과 GPTS로 해결하는 방법에 대해 이야기해요
01:14 📝 웹사이트 링크나 글을 넣어 PPT를 자동으로 만들어주는 과정을 설명해요
02:19 🔄 발표 스크립트와 MARF 형식의 슬라이드 자동 생성 방법을 보여줘요
03:25 🔗 해외 기사 링크를 사용한 PPT 제작 과정을 소개해요
04:09 ❗ 링크 붙여넣기 기능의 한계와 해결 방안에 대해 설명해요
05:11 🛠️ PPT 제작 전문가 GPTS의 효율적 사용법과 프롬프트 튜닝 방법을 공유해요
Last updated