From the uDemy course on LLM engineering.
https://www.udemy.com/course/llm-engineering-master-ai-and-large-language-models
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
478 lines
13 KiB
478 lines
13 KiB
WEBVTT |
|
|
|
00:00.110 --> 00:05.750 |
|
첫 프로젝트가 성공하면 바로 만족할 거라고 말한 게 100편 |
|
|
|
00:05.750 --> 00:13.070 |
|
전인 것 같은데 그렇게 바로 만족스럽지 않다고 느끼는 건 여러분 권리예요 |
|
|
|
00:13.070 --> 00:17.960 |
|
하지만 걱정 마세요, 멋진 프로젝트로 만회할 테니까요 |
|
|
|
00:17.960 --> 00:23.960 |
|
이미 브라우저의 창처럼 JupyterLab이 돌아가고 있다면 그걸 닫으세요 |
|
|
|
00:23.960 --> 00:32.180 |
|
이미 윈도우에 아나콘다 프롬프트가 있다면 그것을 종료하고 닫았다가 다시 시작하세요 |
|
|
|
00:32.180 --> 00:39.350 |
|
PC와 Mac에 새로운 아나콘다 프롬프트를 불러오고 새로운 터미널을 불러옵니다 모든 걸 닫았어요 |
|
|
|
00:39.350 --> 00:44.660 |
|
저 부럽지 않은 파일을 만들었으니까요 완전히 처음부터 시작하고 싶어요 |
|
|
|
00:44.690 --> 00:49.850 |
|
LM 엔지니어링의 프로젝트 폴더로 가세요 첫 번째 것을 기억하실 거예요 |
|
|
|
00:49.850 --> 00:54.710 |
|
그리고 항상 이걸 해야 합니다 주피터 랩이 실행 중이건 아니건 콘다를 |
|
|
|
00:54.710 --> 00:57.800 |
|
입력해 LMS를 활성화하세요 |
|
|
|
00:57.800 --> 01:00.080 |
|
그렇게 환경을 활성화하는 거죠 |
|
|
|
01:00.110 --> 01:04.830 |
|
가상env를 사용한다면 리드메에 다른 PC와 맥 방식이 있어요 |
|
|
|
01:04.860 --> 01:10.290 |
|
그렇게 하면 단서는 프롬프트가 LMS로 바뀌었다는 거죠 |
|
|
|
01:10.290 --> 01:14.100 |
|
아나콘다 프롬프트에서 윈도우 사람들을 위해 같은 것을 해야 하죠 |
|
|
|
01:14.100 --> 01:17.670 |
|
이제 멋진 두 단어를 입력하세요 주피터 연구소 |
|
|
|
01:17.670 --> 01:23.670 |
|
그렇게 하면 잠시 생각을 하고 주피터랩이 나타나죠 |
|
|
|
01:23.700 --> 01:25.350 |
|
즉각적인 만족감이죠 |
|
|
|
01:25.350 --> 01:26.130 |
|
그렇게 쓰여 있어요 |
|
|
|
01:26.130 --> 01:28.500 |
|
못 보실지도 몰라요 |
|
|
|
01:28.530 --> 01:31.320 |
|
사실, 이렇게만 봐도 처음 떠오를지도 몰라요 |
|
|
|
01:31.320 --> 01:34.560 |
|
지금 보시는 것과 비슷할지도 몰라요 |
|
|
|
01:34.620 --> 01:37.380 |
|
어떤 사람들에게는 여기가 주피터 연구소예요 |
|
|
|
01:37.380 --> 01:38.610 |
|
이건 옛날 뉴스예요 |
|
|
|
01:38.610 --> 01:39.870 |
|
많이 써보셨죠? |
|
|
|
01:39.900 --> 01:41.370 |
|
새로운 분들도 계실 거예요 |
|
|
|
01:41.370 --> 01:43.920 |
|
정말 멋지다는 말을 해 주러 왔어요 |
|
|
|
01:43.950 --> 01:49.080 |
|
데이터 과학자들이 코드로 작업하는 상호작용적인 방법이죠 |
|
|
|
01:49.290 --> 01:54.210 |
|
주피터 랩은 전면 변수를 많이 사용하는 등 아슬아슬한 것으로 가득하죠 |
|
|
|
01:54.240 --> 01:59.820 |
|
공학 전공자로서 봤을 때 좋은 행동은 아니지만 연구 개발의 |
|
|
|
01:59.820 --> 02:02.340 |
|
일환으로 하는 일이에요 |
|
|
|
02:02.340 --> 02:03.780 |
|
그래서 그냥 했어요 |
|
|
|
02:03.780 --> 02:07.900 |
|
곧 보시겠지만 실험하면서 아주 생산적일 수 있다는 뜻이에요 |
|
|
|
02:07.900 --> 02:12.730 |
|
과정의 끝인 8주 차에는 프로덕션화와 우리가 하는 걸 살펴볼 겁니다 |
|
|
|
02:12.730 --> 02:18.460 |
|
JupyterLab에서 제대로 된 코드와 배포로 마이그레이션하는 방법도 얘기할 |
|
|
|
02:18.460 --> 02:19.510 |
|
거고요 |
|
|
|
02:19.510 --> 02:21.550 |
|
하지만 지금은 그런 걱정 안 해도 돼요 |
|
|
|
02:21.580 --> 02:27.250 |
|
왼쪽에 파일 브라우저라는 게 있어요 사실 기대하시는 거죠 |
|
|
|
02:27.280 --> 02:32.230 |
|
이렇게 들어와 부모 디렉토리를 보여주고 있죠 |
|
|
|
02:32.230 --> 02:36.700 |
|
우리가 검토할 매주 디렉터리가 있어요 리드메이트와 환경에 관해 |
|
|
|
02:36.700 --> 02:40.120 |
|
우리가 아는 걸 볼 수 있죠 yml도 여기 있어요 |
|
|
|
02:40.120 --> 02:43.960 |
|
그럼 지체 없이 첫째 주를 시작하죠 |
|
|
|
02:44.200 --> 02:50.860 |
|
주피터랩에 처음 오신 거라면 제가 안내서를 만들어 놨으니 |
|
|
|
02:50.860 --> 02:52.330 |
|
와서 보세요 |
|
|
|
02:52.330 --> 02:57.370 |
|
여길 더블 클릭하면 get이 나옵니다 여러분이 해야 할 일을 간단히 보여줍니다 |
|
|
|
02:57.370 --> 02:59.830 |
|
여러분이 잘 처리할 수 있도록요 |
|
|
|
02:59.830 --> 03:04.600 |
|
예를 들어, 여기 있는 상자 중 하나를 클릭할 수 있어요 셀이라고 하죠 |
|
|
|
03:04.600 --> 03:05.890 |
|
시동을 꺼요 |
|
|
|
03:05.890 --> 03:12.130 |
|
자판에서 반환이나 입력을 누르면 실행되고 결과를 출력합니다 |
|
|
|
03:12.130 --> 03:18.640 |
|
그리고 스크롤을 내리면 다음 작업이 나옵니다 실행하고 볼 수 |
|
|
|
03:18.640 --> 03:20.170 |
|
있죠 |
|
|
|
03:20.200 --> 03:27.130 |
|
제가 제일 좋아하는 과일은 바나나예요 이 주피터 가이드북을 참고해서 주피터 랩을 |
|
|
|
03:27.130 --> 03:31.270 |
|
사용하는 기술을 배우세요 도움이 되기를 바라요 |
|
|
|
03:31.270 --> 03:38.290 |
|
하지만 이 항로에 있는 많은 사람이 목성을 한두 번 사용해 봤을 테고 그 경이로움에 |
|
|
|
03:38.290 --> 03:40.420 |
|
익숙할 거예요 |
|
|
|
03:40.810 --> 03:45.280 |
|
이제 첫날 프로젝트 차례입니다 바로 여기요 |
|
|
|
03:45.280 --> 03:48.640 |
|
전 좀 뻔뻔하게도 즉각적인 만족감이라고 했죠 |
|
|
|
03:48.640 --> 03:53.020 |
|
이 집을 위해 많은 일을 한 거 알아요 첫날은 꽤 긴 하루였지만 그만한 가치가 |
|
|
|
03:53.050 --> 03:54.670 |
|
있길 바라요 Put |
|
|
|
03:54.880 --> 04:00.340 |
|
다시 한번 말하지만 난 도우러 온 거예요 |
|
|
|
04:00.340 --> 04:01.510 |
|
제 이메일 주소예요 |
|
|
|
04:01.510 --> 04:02.560 |
|
이건 제 링크트인이죠 |
|
|
|
04:02.560 --> 04:04.720 |
|
링크드인에서 사람들이 저와 소통하는 걸 좋아해요 |
|
|
|
04:04.750 --> 04:08.560 |
|
for 안녕이라는 메시지를 넣는 것도 좋지만 꼭 그럴 필요는 없어요 |
|
|
|
04:08.560 --> 04:10.950 |
|
그냥 교감만 하고 싶다면 그렇게 하세요 |
|
|
|
04:10.950 --> 04:15.190 |
|
이 수업을 듣는 학생들의 인맥은 언제든 환영이에요 |
|
|
|
04:15.190 --> 04:16.090 |
|
물론이죠 |
|
|
|
04:16.210 --> 04:21.010 |
|
여기서 또 알 수 있는 건 다른 공책이 있다는 거예요 |
|
|
|
04:21.130 --> 04:24.340 |
|
이 주피터 연구소들은 공책이라고 해요 |
|
|
|
04:24.430 --> 04:27.040 |
|
역사적인 이유로 그렇게 부르죠 |
|
|
|
04:27.250 --> 04:31.480 |
|
문제 해결이라는 공책이 하나 더 있어요 |
|
|
|
04:31.480 --> 04:36.730 |
|
문제 해결은 여러분이 여기서 문제를 해결하는 곳이죠 |
|
|
|
04:36.760 --> 04:37.600 |
|
시작이죠 |
|
|
|
04:37.630 --> 04:38.260 |
|
어떡해요 |
|
|
|
04:38.500 --> 04:45.070 |
|
단계별로 뭐가 잘못됐는지 파악하고 부럽지 않은 파일을 확인하죠 |
|
|
|
04:45.100 --> 04:45.640 |
|
맛있어 보여요 |
|
|
|
04:45.640 --> 04:47.470 |
|
모든 걸 확인하면서 진행해요 |
|
|
|
04:47.470 --> 04:51.670 |
|
문제가 생기면 해결을 하면 됩니다. 우리가 해결할게요. |
|
|
|
04:51.670 --> 04:55.510 |
|
하지만 그렇지 않으면 첫날의 공책부터 시작해야죠 |
|
|
|
04:55.510 --> 05:00.610 |
|
이 과정에서는 매일 따로 노트를 준비합니다 그날의 |
|
|
|
05:00.640 --> 05:03.850 |
|
경험을 훑어보며 연습할 수 있죠 |
|
|
|
05:03.880 --> 05:04.690 |
|
네 |
|
|
|
05:04.690 --> 05:08.140 |
|
우선 수입품부터 살펴볼게요 |
|
|
|
05:08.140 --> 05:10.510 |
|
전 수입품을 상위권에 두는 걸 좋아해요 Put it up Put it |
|
|
|
05:10.510 --> 05:16.210 |
|
주피터랩에서 코드를 실행해야 합니다 위에서부터요 이 임포트 셀을 클릭하는 것으로 |
|
|
|
05:16.240 --> 05:17.140 |
|
시작하죠 |
|
|
|
05:17.150 --> 05:18.230 |
|
기어를 낮추세요 |
|
|
|
05:18.230 --> 05:19.190 |
|
회신을 누르세요 |
|
|
|
05:19.190 --> 05:20.630 |
|
잘 달리네요 |
|
|
|
05:20.660 --> 05:25.430 |
|
에러가 발생하면 문제 해결 노트북으로 가세요. HDPULL GAME |
|
|
|
05:25.460 --> 05:29.270 |
|
어떤 일이 벌어질지 어떻게 해야 할지 알려줄게요 |
|
|
|
05:29.300 --> 05:33.650 |
|
콘다 환경이 활성화되지 않는 게 가장 큰 이유죠 |
|
|
|
05:33.650 --> 05:35.450 |
|
어떻게 할지 알려줄게요 |
|
|
|
05:36.290 --> 05:36.980 |
|
네 |
|
|
|
05:37.010 --> 05:40.580 |
|
다음으로 오픈AI에 연결할 거예요 |
|
|
|
05:40.610 --> 05:48.950 |
|
여기서 오픈AI API 서비스에 연결할 겁니다 프론티어 모델인 GPT에 |
|
|
|
05:48.950 --> 05:54.170 |
|
전화를 걸어 질문을 할 수 있도록요 |
|
|
|
05:54.200 --> 05:58.460 |
|
오픈AI와 GPT에 대해 더 자세히 이야기할 텐데요 |
|
|
|
05:58.460 --> 06:00.110 |
|
Get it의 맛을 내는 거죠 |
|
|
|
06:00.110 --> 06:02.030 |
|
지금은 첫 실험실이에요 |
|
|
|
06:02.630 --> 06:06.230 |
|
가장 먼저 로드.Infsi라는 걸 호출해요 |
|
|
|
06:06.230 --> 06:11.150 |
|
.Infile을 보고 비밀을 로드하죠 |
|
|
|
06:11.240 --> 06:14.120 |
|
오픈AI API 키라는 비밀이 있어요 |
|
|
|
06:14.120 --> 06:17.240 |
|
그걸 로드해 API 키라는 변수에 넣을 거예요 Put it |
|
|
|
06:17.240 --> 06:20.120 |
|
잘 나왔는지 확인해 보죠 |
|
|
|
06:20.210 --> 06:23.190 |
|
API 키를 찾았고 지금까지는 괜찮아 보이네요 |
|
|
|
06:23.220 --> 06:24.570 |
|
그렇게 안 쓰여 있다면요 |
|
|
|
06:24.570 --> 06:25.320 |
|
안 적혀 있으면요 |
|
|
|
06:25.350 --> 06:28.470 |
|
API 키를 찾았고 지금까지는 좋습니다. 문제 해결로 가보세요. HDP, HDP.M. |
|
|
|
06:28.470 --> 06:30.210 |
|
우리가 해결할게요 |
|
|
|
06:30.570 --> 06:32.820 |
|
제 이메일로 링크트인을 보내주세요 |
|
|
|
06:32.850 --> 06:35.730 |
|
우리가 고칠게요 |
|
|
|
06:35.730 --> 06:39.240 |
|
다음 할 일은 간단한 거예요 |
|
|
|
06:39.270 --> 06:41.040 |
|
오픈아이를 점령하죠 |
|
|
|
06:41.070 --> 06:44.580 |
|
인스턴스를 생성해 OpenAI에 넣죠 |
|
|
|
06:44.760 --> 06:46.350 |
|
여기가 우리 집이에요 |
|
|
|
06:46.380 --> 06:51.000 |
|
오픈라이와의 연결을 완료했어요 |
|
|
|
06:51.780 --> 06:52.650 |
|
좋아요 |
|
|
|
06:52.650 --> 06:55.800 |
|
오늘 이 프로젝트는 어떤 건가요? |
|
|
|
06:55.800 --> 06:57.510 |
|
어떤 사업상의 문제를 다루고 있나요? |
|
|
|
06:57.540 --> 06:58.050 |
|
해결요? |
|
|
|
06:58.050 --> 07:00.510 |
|
아주 간단하고 사실 꽤 멋질 거예요 |
|
|
|
07:00.510 --> 07:08.010 |
|
프로그램을 만들어서 인터넷상의 모든 웹 페이지를 살펴보고 그 내용을 긁어내서 |
|
|
|
07:08.010 --> 07:14.400 |
|
요약하고 그 웹 페이지의 짧은 요약을 보여드릴 거예요 |
|
|
|
07:14.400 --> 07:18.630 |
|
작은 웹 브라우저를 만든다고 생각해 보세요 웹 브라우저 요약 |
|
|
|
07:18.630 --> 07:19.440 |
|
같은 거죠 |
|
|
|
07:19.440 --> 07:21.120 |
|
리더스 다이제스트 알죠? |
|
|
|
07:21.120 --> 07:23.430 |
|
라이더스 다이제스트 웹 브라우저 같아요 |
|
|
|
07:23.810 --> 07:25.100 |
|
그게 우리가 할 일이에요 |
|
|
|
07:25.100 --> 07:26.450 |
|
그게 프로젝트가 될 거예요 |
|
|
|
07:26.450 --> 07:33.380 |
|
클래스를 정의하는 것으로 시작할게요 클래스 웹사이트요 아주 간단한 유틸리티 클래스가 될 |
|
|
|
07:33.380 --> 07:37.460 |
|
겁니다 우리가 긁어모은 웹사이트를 나타내는 거죠 |
|
|
|
07:37.610 --> 07:42.470 |
|
클래스가 될 거예요 URL과 제목, 텍스트가 있는 클래스요 |
|
|
|
07:42.470 --> 07:46.280 |
|
한 줄씩 살펴보진 않겠습니다 여러분이 직접 읽어보시고 |
|
|
|
07:46.280 --> 07:52.820 |
|
바로 실행하실 때 감을 잡으실 수 있을 테니까요 get it 이후엔 다른 랩에서 더 자세히 |
|
|
|
07:52.820 --> 07:54.920 |
|
살펴볼 거예요 |
|
|
|
07:54.920 --> 07:58.370 |
|
처음 경험하는 거잖아요 그렇죠 |
|
|
|
07:58.370 --> 08:05.480 |
|
생성자에서 이 클래스를 설정했던 곳에서 뷰티풀소우프라는 패키지를 사용했어요 |
|
|
|
08:05.480 --> 08:08.840 |
|
많은 분들이 언젠가 경험하셨을 거예요 |
|
|
|
08:08.840 --> 08:15.770 |
|
웹 페이지 파싱에 사용되는 멋진 패키지예요 웹 스크래핑을 하는 사람들은 |
|
|
|
08:15.770 --> 08:20.120 |
|
저처럼 정기적으로 뷰티풀 슈프를 잘 알죠 |
|
|
|
08:20.210 --> 08:25.490 |
|
뷰티풀 get을 이용해서 웹 페이지의 타이틀을 제거하고 스크립트와 |
|
|
|
08:25.490 --> 08:31.590 |
|
스타일, 이미지 입력을 제거하고 텍스트를 알아낼 수 있어요 |
|
|
|
08:31.890 --> 08:37.320 |
|
그래서 우리 클래스 웹사이트로 그걸 할 거예요 |
|
|
|
08:37.350 --> 08:41.340 |
|
마지막으로 한 번 시험해 보죠 |
|
|
|
08:41.340 --> 08:44.190 |
|
새 웹사이트 객체를 생성할게요 |
|
|
|
08:44.190 --> 08:50.370 |
|
이 특정 웹사이트를 넘기겠습니다 철저히 바람직하지 않은 웹사이트가 제 웹사이트가 |
|
|
|
08:50.610 --> 08:51.480 |
|
된 거죠 |
|
|
|
08:51.660 --> 08:54.300 |
|
웹사이트도 아주 평범해요 |
|
|
|
08:54.390 --> 08:56.760 |
|
하지만 그걸 대표할 클래스를 만들 거예요 |
|
|
|
08:56.940 --> 09:00.450 |
|
제목과 웹 사이트의 텍스트를 보죠 |
|
|
|
09:00.450 --> 09:01.740 |
|
이게 통할지 보죠 |
|
|
|
09:01.830 --> 09:03.090 |
|
네, 작동해요 |
|
|
|
09:03.090 --> 09:04.440 |
|
자, 보세요 |
|
|
|
09:04.530 --> 09:07.440 |
|
웹사이트 이름이 보이네요 |
|
|
|
09:07.560 --> 09:12.570 |
|
그 웹사이트에 뭔가 일어나고 있어요 |
|
|
|
09:12.870 --> 09:17.940 |
|
음, 비트가 좀 허술해 보이네요. 이미지와 자바스크립트 |
|
|
|
09:17.970 --> 09:22.920 |
|
스타일시트가 모두 삭제되었기 때문이죠. |
|
|
|
09:23.130 --> 09:27.390 |
|
지금까지는 재생 인공지능이나 LAM을 사용하지 않았어요 |
|
|
|
09:27.390 --> 09:31.200 |
|
Get in get이 곧 나올 겁니다 다음 비디오에서 알아보죠
|
|
|