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.
865 lines
23 KiB
865 lines
23 KiB
WEBVTT |
|
|
|
00:00.860 --> 00:07.040 |
|
방금 보신 건 임시 앱입니다 임시 앱이란 뜻으로 배포할 |
|
|
|
00:07.040 --> 00:12.650 |
|
앱을 선택하기 전에 테스트에만 사용하죠 |
|
|
|
00:12.680 --> 00:16.520 |
|
비트는 좀 더 오래 사용할 겁니다 왜냐하면 |
|
|
|
00:16.520 --> 00:24.380 |
|
지난 시간에 만든 독점 모델을 실제로 사용하기 전에 비트로 배포할 거니까요 |
|
|
|
00:24.380 --> 00:31.460 |
|
그러기 위해서 다른 파일을 보여드릴게요 Pricer ephemeral이죠 파이썬 을 이용한 모듈인파이에는 유사점이 |
|
|
|
00:31.490 --> 00:37.460 |
|
있습니다 그러나 한 가지 중요한 차이점이 있습니다 llama3을 |
|
|
|
00:37.460 --> 00:43.910 |
|
이용하는 것 대신에 말이죠 첫째, 정교하게 튜닝된 모델을 사용할 겁니다 |
|
|
|
00:43.910 --> 00:50.990 |
|
추론하기 위해 모델을 실행하고 테스트할 때 Codelab에서 사용했던 것과 아주 유사한 코드를 |
|
|
|
00:50.990 --> 00:54.830 |
|
사용해서요 아주 잘 작동하는 순간은 정말 황홀했죠 |
|
|
|
00:54.830 --> 01:03.380 |
|
파이썬 모듈에서는 이전처럼 모드 가져오기로 시작하죠 |
|
|
|
01:03.620 --> 01:06.590 |
|
그리고 다시 볼륨을 제거할게요 |
|
|
|
01:06.800 --> 01:09.650 |
|
한때는 그걸 사용하려고 했는데 결국 안 했어요 |
|
|
|
01:10.160 --> 01:14.240 |
|
그래서 설정하고 앱이 있다고 하죠 |
|
|
|
01:14.240 --> 01:15.260 |
|
프라이서라는 거예요 |
|
|
|
01:15.290 --> 01:16.760 |
|
여러분이 보신 앱의 이름이 될 거예요 |
|
|
|
01:16.790 --> 01:17.630 |
|
프라이서예요 |
|
|
|
01:18.020 --> 01:20.510 |
|
배포된 Pricer 버전을 전에 보셨죠 |
|
|
|
01:20.810 --> 01:25.640 |
|
이제 이미지를 생성하고 같은 패키지를 설치해요 |
|
|
|
01:25.640 --> 01:27.410 |
|
잠깐만요, 새 소포가 왔어요 |
|
|
|
01:27.410 --> 01:34.850 |
|
매개 변수 효율 미세 튜닝 패키지를 기억하실 겁니다 미세 튜닝과 비밀을 |
|
|
|
01:34.850 --> 01:38.060 |
|
로드하기 위해 필요한 거죠 |
|
|
|
01:38.060 --> 01:42.890 |
|
여러분이 추가하는 방법을 찾았길 바랍니다 HF 시크릿으로 입력하세요 |
|
|
|
01:42.890 --> 01:47.210 |
|
또는 다른 곳에 Put을 하면 여기 이름을 바꾸죠 |
|
|
|
01:47.210 --> 01:50.030 |
|
그게 비밀의 범주 이름이에요 |
|
|
|
01:50.030 --> 01:56.390 |
|
그 안에 일반적인 HF_토큰을 가지고 있어야 합니다. 토큰 자체를 위한 포옹의 |
|
|
|
01:56.390 --> 01:57.650 |
|
밑줄이죠. |
|
|
|
01:58.040 --> 02:00.480 |
|
코드 어딘가에 있는지 찾아봐요 |
|
|
|
02:00.510 --> 02:02.070 |
|
아닌 것 같아요 |
|
|
|
02:02.130 --> 02:05.940 |
|
어쨌든, 그게 말이 됐으면 좋겠네요 |
|
|
|
02:06.390 --> 02:13.740 |
|
t4 GPU를 원한다고 명시해요 |
|
|
|
02:13.770 --> 02:16.200 |
|
기본 모델을 지정하죠 |
|
|
|
02:16.230 --> 02:17.850 |
|
라마 3요 180억 달러요 |
|
|
|
02:18.060 --> 02:19.620 |
|
프로젝트 이름요 |
|
|
|
02:19.620 --> 02:22.980 |
|
H깅 페이스 허브에서 끌어오기 때문이죠 |
|
|
|
02:23.280 --> 02:25.860 |
|
포옹하는 얼굴 닉네임이에요 |
|
|
|
02:25.860 --> 02:30.000 |
|
훈련받은 버전을 쓰고 싶으면 내 이름을 그대로 둬요 |
|
|
|
02:30.000 --> 02:35.130 |
|
자신의 버전을 쓰고 싶다면요 미세 조정해서 더 좋게 만들었을 수도 있으니까요 |
|
|
|
02:35.130 --> 02:39.600 |
|
hyperpaameter 최적화를 했다가 저를 이겼을 수도 있죠 그럴 경우 |
|
|
|
02:39.600 --> 02:41.370 |
|
반드시 1년도를 사용해야 해요 |
|
|
|
02:41.520 --> 02:44.850 |
|
하지만 이건 제 거니까 제 걸 쓰시면 그 런네임을 쓰셔야죠 |
|
|
|
02:44.850 --> 02:50.400 |
|
기억하시겠지만 이 수정 수치는 과도해지기 전이 가장 좋은 |
|
|
|
02:50.400 --> 02:51.870 |
|
시절이었어요 |
|
|
|
02:51.870 --> 02:56.250 |
|
미세 튜닝 모델 이름이 되는 거죠 |
|
|
|
02:56.250 --> 03:00.030 |
|
간단한 함수 가격도 있고요 |
|
|
|
03:00.030 --> 03:04.980 |
|
구글 콜랍에 있는 기능과 거의 똑같은 함수예요 |
|
|
|
03:05.190 --> 03:11.130 |
|
여기 제 로컬 박스에 있어요 장식자로 장식할 겁니다 이 이미지 안에서 |
|
|
|
03:11.130 --> 03:16.200 |
|
실행하고 싶다고 하죠 시크릿과 GPU 안에서요 |
|
|
|
03:16.290 --> 03:20.340 |
|
하지만 이건 다 같은 거예요 |
|
|
|
03:20.370 --> 03:21.990 |
|
수입도 좀 하고요 |
|
|
|
03:22.380 --> 03:24.720 |
|
질문과 앞부분을 잘 보세요 |
|
|
|
03:25.230 --> 03:28.860 |
|
가장 가까운 비용으로 얼마가 드는지를 질문할 거예요 |
|
|
|
03:28.890 --> 03:32.580 |
|
제품 설명과 가격은 달러예요 |
|
|
|
03:32.580 --> 03:37.920 |
|
그러면 가격이 얼마인지 모델 측에서 반응하지 않을 수 없어요 |
|
|
|
03:38.340 --> 03:41.550 |
|
이제 여기서 퀀타이즈를 해요 |
|
|
|
03:41.550 --> 03:44.160 |
|
아까처럼 모형을 로드해요 |
|
|
|
03:44.160 --> 03:46.980 |
|
이 대사를 기억하면 좋겠네요 |
|
|
|
03:46.980 --> 03:51.540 |
|
로라 파인 튜닝 모델을 실을 거예요 |
|
|
|
03:51.540 --> 03:53.400 |
|
기본 모델을 제공하죠 |
|
|
|
03:53.400 --> 03:57.640 |
|
미세 튜닝 모델의 이름과 이 경우에는 수정 번호를 제공하죠 |
|
|
|
03:57.640 --> 04:01.030 |
|
마지막 세이브만 하실 거면 그건 빼도 돼요 |
|
|
|
04:01.030 --> 04:02.980 |
|
그럴 필요 없어요 |
|
|
|
04:02.980 --> 04:04.090 |
|
있는 그대로의 나 말이에요 |
|
|
|
04:04.810 --> 04:06.670 |
|
이건 번식을 위한 거예요 |
|
|
|
04:06.670 --> 04:08.560 |
|
무작위 씨앗이 설정된 거죠 |
|
|
|
04:08.590 --> 04:12.130 |
|
Get up을 할 때마다 같은 숫자가 나오죠 |
|
|
|
04:12.340 --> 04:19.570 |
|
그다음 미세 튜닝 모델에 .생산이라는 호출을 만들어 디코딩하죠 |
|
|
|
04:19.570 --> 04:22.840 |
|
마지막으로 이 코드도 인식하셨으면 좋겠네요 |
|
|
|
04:22.840 --> 04:29.440 |
|
이건 숫자, 부동점수를 제거하는 좀 엉성한 코드예요 텍스트 안에서요 잘못된 |
|
|
|
04:29.470 --> 04:33.490 |
|
$ 기호가 있을 경우를 대비해서요 어떤 숫자든 |
|
|
|
04:33.490 --> 04:39.700 |
|
get 할 수 있도록 하고 그 숫자를 반환합니다 그게 다예요 |
|
|
|
04:39.730 --> 04:42.970 |
|
이 시점에서 아주 친숙한 코드죠 |
|
|
|
04:42.970 --> 04:44.950 |
|
이제 다시 여기로 돌아가죠 |
|
|
|
04:45.130 --> 04:48.640 |
|
이미 작동시켰어요 예열해야 하니까요 |
|
|
|
04:48.640 --> 04:49.840 |
|
몇 분 걸려요 |
|
|
|
04:49.840 --> 04:52.180 |
|
매번 기다려야 한다면 괴로울 거예요 |
|
|
|
04:52.180 --> 04:53.620 |
|
벌써 조회했어요 |
|
|
|
04:53.650 --> 04:55.700 |
|
물론 제가 뛰었던 곳이죠 |
|
|
|
04:56.480 --> 05:00.470 |
|
출력 활성화 모듈이 필요 없다고 말씀하셨는데요 |
|
|
|
05:00.470 --> 05:04.550 |
|
하지만 그렇게 하지 않으면 다른 프린트도 많아요 |
|
|
|
05:04.550 --> 05:07.730 |
|
이렇게 하면 깔끔하고 멋지게 만들 수 있어요 |
|
|
|
05:08.030 --> 05:10.700 |
|
하지만 app.lan은 있어야 해요 |
|
|
|
05:10.940 --> 05:14.000 |
|
그리고 결과물은 가격 매기는 원격이라고 하죠 |
|
|
|
05:14.000 --> 05:20.990 |
|
그리고 특정 객체의 가격을 매겨달라고 요청합니다. 그냥 둘러보면서 가격을 매겨달라고 |
|
|
|
05:20.990 --> 05:22.790 |
|
요청하는 거죠. |
|
|
|
05:22.790 --> 05:27.140 |
|
가격을 매겨달라고 한 객체는 바로 이 마이크예요 |
|
|
|
05:27.140 --> 05:29.690 |
|
그래서 그냥 입력했어요 |
|
|
|
05:29.690 --> 05:31.130 |
|
얼마였는지 기억해요 |
|
|
|
05:31.160 --> 05:31.940 |
|
안 될 거 없죠 |
|
|
|
05:31.940 --> 05:34.490 |
|
어떻게 계산되는지 보죠 |
|
|
|
05:34.670 --> 05:35.900 |
|
그래서 조회해 봤죠 |
|
|
|
05:35.930 --> 05:37.190 |
|
몇 분 걸렸죠 |
|
|
|
05:37.220 --> 05:42.710 |
|
이제 몇 분 걸려요 상자를 데워야 하고 내용물도 채워야 하니까요 Colab으로 |
|
|
|
05:42.800 --> 05:47.090 |
|
실행했을 때 해야 할 모든 일을 해야 하니까요 |
|
|
|
05:47.090 --> 05:50.600 |
|
H깅페이스 허브에서 다운로드 받아 메모리에 로드해야 해요 |
|
|
|
05:50.810 --> 05:54.020 |
|
또한 모든 패키지를 설치해야 하죠 |
|
|
|
05:54.020 --> 05:57.230 |
|
비트를 만들려면 할 일이 많아서 시간이 좀 걸려요 |
|
|
|
05:57.410 --> 06:04.370 |
|
그 모든 걸 다 하고 마지막에 1을 반환했어요 33, 133달러 |
|
|
|
06:04.370 --> 06:06.770 |
|
이 작품의 가격은 대략 그 정도예요 |
|
|
|
06:06.770 --> 06:13.790 |
|
네, 꽤 정확한 위치인 것 같아요 그래서 맞을지도 몰라요 |
|
|
|
06:13.790 --> 06:14.180 |
|
누가 알겠어요? |
|
|
|
06:14.180 --> 06:18.530 |
|
훈련 데이터 세트에도 있을 수 있지만 좋은 결과예요 |
|
|
|
06:19.220 --> 06:22.670 |
|
여러분도 이렇게 해 보세요 |
|
|
|
06:22.670 --> 06:24.980 |
|
2-3분 정도 기다려야 해요 |
|
|
|
06:24.980 --> 06:29.540 |
|
작업하는 동안 Modal로 갈 수도 있고 단기 앱으로 갈 수도 있어요 |
|
|
|
06:29.630 --> 06:33.320 |
|
지금은 실행 중이지만 실행 중일 때는 여기 |
|
|
|
06:33.320 --> 06:40.850 |
|
있을 겁니다. 그리고 작업을 하는 것을 볼 수 있고 만족스러운 결과를 얻을 수 있죠. |
|
|
|
06:41.150 --> 06:41.780 |
|
네 |
|
|
|
06:41.780 --> 06:46.160 |
|
이제 그건 끝났고 짧은 앱에서 전환할 차례입니다 원격으로 |
|
|
|
06:46.160 --> 06:48.560 |
|
기능을 실행하는 방법이죠 |
|
|
|
06:48.560 --> 06:54.590 |
|
배포된 앱이 있는데 Modell에 기능성 몇 개를 영구적으로 |
|
|
|
06:54.590 --> 06:58.310 |
|
포함하고 싶다고 말할 때죠 |
|
|
|
06:58.340 --> 07:03.530 |
|
Modell은 여전히 실행할 때만 지불합니다 하지만 이름 같은 |
|
|
|
07:03.530 --> 07:09.230 |
|
걸 정하고 싶어요 필요할 경우 재빨리 다시 할 수 있는 적절한 장소도요 |
|
|
|
07:09.650 --> 07:16.460 |
|
명령줄에 모델을 입력하는 게 그 방법이에요 배포하고 배포하려는 앱 이름을 |
|
|
|
07:16.460 --> 07:17.690 |
|
입력해요 |
|
|
|
07:17.960 --> 07:24.260 |
|
중요한 건 바로 지금 이 순간 우리가 데이터 과학자로서 만든 코드나 |
|
|
|
07:24.260 --> 07:29.900 |
|
모델을 생산 목적으로 사용할 수 있는 방식으로 배포하고 있다는 |
|
|
|
07:29.900 --> 07:31.550 |
|
거예요 |
|
|
|
07:31.550 --> 07:33.740 |
|
파이썬 API가 뒤에 있을 거예요 |
|
|
|
07:33.740 --> 07:40.220 |
|
파이썬 을 이용해서 호출할 수 있고 API 호출도 할 수 있어요 |
|
|
|
07:40.460 --> 07:47.540 |
|
이건 프로덕션화의 예입니다 원래 주피터랩에서 구축한 거죠 |
|
|
|
07:47.930 --> 07:54.460 |
|
Modal 또한 REST 끝점을 아주 쉽게 빌드할 수 있게 해줍니다 파이썬으로 호출할 |
|
|
|
07:54.460 --> 07:55.450 |
|
필요가 없죠 |
|
|
|
07:55.450 --> 08:00.070 |
|
어떤 HTTP 쿼리에서도 호출될 수 있어요 |
|
|
|
08:00.250 --> 08:03.610 |
|
이 수업에선 다루지 않겠습니다 파이썬 으로만 다루고 있으니까요 |
|
|
|
08:03.610 --> 08:05.980 |
|
그러니 그냥 파이썬 에서 호출하는 게 낫겠어요 |
|
|
|
08:06.010 --> 08:09.160 |
|
하지만 아주 쉽고 의사들도 명확하게 알려줬어요 |
|
|
|
08:09.700 --> 08:14.710 |
|
제가 방금 얼버무린 게 있는데 이미 아실지도 모르겠네요 |
|
|
|
08:14.710 --> 08:20.980 |
|
주피터에는 이런 멋진 기능이 있어요 터미널에서 뭔가를 실행할 수 있죠 |
|
|
|
08:20.980 --> 08:23.080 |
|
느낌표만 찍으면 돼요 |
|
|
|
08:23.080 --> 08:26.920 |
|
실행하고 싶은 명령의 이름을 적고요 |
|
|
|
08:26.920 --> 08:31.510 |
|
터미널 윈도우를 열 수 있습니다 플러스 버튼을 눌러서 터미널을 생성할 |
|
|
|
08:31.510 --> 08:32.170 |
|
수 있죠 |
|
|
|
08:32.170 --> 08:36.640 |
|
하지만 이게 훨씬 더 쉬워요 여기 프롬프트에서 할 수 있거든요 제가 위에서 한 거죠 |
|
|
|
08:36.640 --> 08:41.710 |
|
명령은 역시 양식 배포와 패키지 이름이죠 |
|
|
|
08:41.710 --> 08:43.510 |
|
값을 매길 수 없는 서비스죠 |
|
|
|
08:43.510 --> 08:46.480 |
|
그럼 프라이스 오브 서비스라는 패키지를 살펴보죠 |
|
|
|
08:46.510 --> 08:48.340 |
|
여기 뭐가 있는지 간단히 말씀드릴게요 |
|
|
|
08:48.370 --> 08:53.280 |
|
놀랍게도 비슷하네요 |
|
|
|
08:53.550 --> 09:00.300 |
|
보시다시피 기본적으로 상수가 있고 함수를 정의합니다 |
|
|
|
09:00.300 --> 09:08.460 |
|
기본적으로 같은 거지만 우리 코드를 서비스로 적절하게 배포하기에 |
|
|
|
09:08.490 --> 09:15.990 |
|
충분합니다 이전 프로세스의 일시적인 버전 말고요 |
|
|
|
09:16.140 --> 09:18.150 |
|
네, 같은 거예요 |
|
|
|
09:18.150 --> 09:21.900 |
|
같은 코드인데 다르게 포장돼 있어요 |
|
|
|
09:21.900 --> 09:24.720 |
|
이 볼륨으로는 필요 없어요 |
|
|
|
09:25.080 --> 09:32.310 |
|
실행해 보죠 첫째 날 공책으로 돌아가면 Price Services로 |
|
|
|
09:32.310 --> 09:34.470 |
|
배포된 게 보이시죠 |
|
|
|
09:34.710 --> 09:37.530 |
|
끝에 작은 URL이 뜨네요 |
|
|
|
09:37.800 --> 09:43.500 |
|
그게 완료되면 이제 여기로 돌아가서 배포된 앱으로 가면 가격이 실행되고 |
|
|
|
09:43.500 --> 09:45.450 |
|
있는 게 보이시죠 |
|
|
|
09:45.660 --> 09:50.830 |
|
T4 GPU 박스에 앉아서요 명시한 대로요 |
|
|
|
09:50.860 --> 09:57.100 |
|
다시 돌아와서 보면 배포된 앱을 호출하는 방법은 에피헤머럴 앱과 다르고 사실 더 |
|
|
|
09:57.100 --> 09:57.970 |
|
간단해요 |
|
|
|
09:58.000 --> 09:58.900 |
|
그건 필요 없어요 |
|
|
|
09:58.900 --> 10:01.870 |
|
방금 보신 비계 말이에요 |
|
|
|
10:01.900 --> 10:08.890 |
|
Modal.comcom과 .outup을 입력하는 대신 서비스 이름을 입력하고 |
|
|
|
10:08.890 --> 10:10.690 |
|
함수 이름을 입력해요 |
|
|
|
10:10.720 --> 10:11.800 |
|
간단해요 |
|
|
|
10:11.800 --> 10:12.760 |
|
Modal. 함수요 |
|
|
|
10:12.790 --> 10:15.430 |
|
.찾기 서비스와 함수요 |
|
|
|
10:15.700 --> 10:22.120 |
|
실행이 끝나면 가격. remote을 치고 원격 호출을 해요 |
|
|
|
10:22.120 --> 10:25.120 |
|
그리고 아까와 같은 133을 얻게 돼요. Get up! Get up! |
|
|
|
10:25.120 --> 10:26.350 |
|
그게 다인 거죠 |
|
|
|
10:26.380 --> 10:33.430 |
|
클라우드에 소유 모델을 이용해 앱을 배포했고 클라우드에서 실행되도록 이름을 |
|
|
|
10:33.430 --> 10:34.480 |
|
붙였어요 |
|
|
|
10:35.470 --> 10:39.910 |
|
더 멋지고 더 멋진 방법이 있어요 |
|
|
|
10:39.910 --> 10:45.400 |
|
이렇게 만들면 잠들었다가 다시 따뜻하게 해 줘야 해요 그런데 |
|
|
|
10:45.400 --> 10:49.300 |
|
1-2분 정도 지나면 금방 잠들어 버리죠 |
|
|
|
10:49.810 --> 10:56.290 |
|
그래서 전화를 걸 때마다 추가 시간을 기다려야 하고 이미지를 |
|
|
|
10:56.290 --> 11:02.230 |
|
다시 구축하고 모델을 불러오는 등의 작업을 해야 하죠 |
|
|
|
11:02.560 --> 11:03.340 |
|
죄송해요 |
|
|
|
11:03.370 --> 11:05.800 |
|
그럴 필요가 없는 버전이 됐죠 |
|
|
|
11:05.800 --> 11:06.340 |
|
시작할게요 |
|
|
|
11:06.370 --> 11:09.340 |
|
이건 나쁜 버전이에요 그 모든 걸 해야 하죠 |
|
|
|
11:09.430 --> 11:11.560 |
|
그래서 두 번째 버전을 만들었어요 |
|
|
|
11:11.560 --> 11:13.780 |
|
가격은 2파이예요 |
|
|
|
11:13.810 --> 11:19.000 |
|
이 모듈은 좀 더 비트 있게 진행되는데요 |
|
|
|
11:19.000 --> 11:27.370 |
|
클래스를 이용하고 초기화의 몇 가지 측면을 미리 빌드할 수 있게 해 |
|
|
|
11:27.370 --> 11:28.300 |
|
줘요 |
|
|
|
11:28.300 --> 11:30.130 |
|
매번 안 해도 돼요 |
|
|
|
11:30.430 --> 11:39.250 |
|
클래스를 이렇게 정의할 때 장식자 모델.빌드를 사용할 수 있고 처음 만들어졌을 |
|
|
|
11:39.250 --> 11:45.820 |
|
때 여러분의 박스를 채울 함수를 쓸 수 있어요 |
|
|
|
11:46.000 --> 11:51.140 |
|
이 경우엔 HINGPace 모델에서 다운로드 받아 캐시에 넣었어요 |
|
|
|
11:51.290 --> 11:54.950 |
|
자세히 설명하진 않겠습니다 시간 관계상 |
|
|
|
11:54.950 --> 11:59.030 |
|
연습 삼아 남겨두겠습니다만 아주 간단하죠 |
|
|
|
11:59.180 --> 12:05.720 |
|
이 코드는 허깅페이스에서 파일을 불러와 허깅페이스 캐시에 놓죠 |
|
|
|
12:05.990 --> 12:12.530 |
|
그리고 Modal.엔터를 장식할 수 있죠 함수가 호출될 때예요 |
|
|
|
12:12.950 --> 12:20.510 |
|
여기서 설정합니다 토큰라이저를 설정하고 베이스 모델을 설정해 한 번 |
|
|
|
12:20.510 --> 12:21.680 |
|
로드하죠 |
|
|
|
12:21.680 --> 12:23.510 |
|
반복적으로 사용할 수 있죠 |
|
|
|
12:23.660 --> 12:26.480 |
|
잠들기 전에 부르면요 |
|
|
|
12:26.990 --> 12:30.530 |
|
이 방법 자체가 가격이에요 |
|
|
|
12:30.530 --> 12:40.040 |
|
이전과 같지만 메모리에 모델을 로드하는 코드는 여기 여기로 나왔어요 Modal in Setting으로요 |
|
|
|
12:40.190 --> 12:47.000 |
|
a Decoator Modal or enter 밑에서요 |
|
|
|
12:47.750 --> 12:52.640 |
|
이 모든 것의 결과로 아직 이것과 관련해 여러분이 이해를 못 하신다면 첫날로 |
|
|
|
12:52.640 --> 12:58.130 |
|
돌아가서 핵심 포인트를 말씀드리자면 프로세스 서비스 2의 배포 양식을 할 거예요 |
|
|
|
12:58.160 --> 13:00.320 |
|
프로세스 서비스 2가 배포되었어요 |
|
|
|
13:00.530 --> 13:04.310 |
|
그렇게 하고 나면 이 코드를 약간 다르게 사용할 수 있어요 |
|
|
|
13:04.340 --> 13:08.090 |
|
지난번에 했던 거 기억하시죠 Modal. 함수 .조회를 했죠 |
|
|
|
13:08.090 --> 13:13.190 |
|
Modal.Crice는 짜증 나게도 cls로 쓰였어요 |
|
|
|
13:13.340 --> 13:17.300 |
|
클래스는 이미 사용된 걸 거예요 |
|
|
|
13:17.300 --> 13:18.680 |
|
그래서 못 썼죠 |
|
|
|
13:18.770 --> 13:26.420 |
|
Modal.dot.lup 서비스 가격과 P로 시작하는 가격이요 |
|
|
|
13:26.420 --> 13:27.650 |
|
수업이 문제군요 |
|
|
|
13:27.650 --> 13:32.900 |
|
방금 배포한 클래스를 찾을 거예요 |
|
|
|
13:33.020 --> 13:35.450 |
|
그 클래스를 인스턴스화할 수 있어요 |
|
|
|
13:35.450 --> 13:38.960 |
|
가격은 가격의 예시라고 하죠 |
|
|
|
13:39.500 --> 13:42.770 |
|
Pricer.pice.triter라고 호출할 수 있어요 |
|
|
|
13:42.950 --> 13:46.620 |
|
get을 입력하면 그 답이 다시 나오죠 |
|
|
|
13:46.620 --> 13:51.600 |
|
전에 실행했을 때 아주 빠르게 실행되었어요 이미 메모리에 있었으니까요 하지만 지금은 아마 이미 바뀌었을 |
|
|
|
13:51.600 --> 13:52.440 |
|
거예요 |
|
|
|
13:52.440 --> 13:57.510 |
|
네, 지연되는 걸 피하려면 지금은 안 하겠습니다 마지막 예제로 넘어갈 테니까요 |
|
|
|
13:57.510 --> 13:58.500 |
|
실행할 거예요 |
|
|
|
13:58.830 --> 14:02.400 |
|
지금 시작할게요 기계가 작동하는 동안 얘기 좀 하게요 |
|
|
|
14:02.430 --> 14:03.390 |
|
이대로 둘게요 |
|
|
|
14:03.390 --> 14:17.250 |
|
그래서 이걸 스페셜리스트 에이전트라는 유용한 클래스로 패키지했어요 우리가 살펴볼 첫 번째 에이전트죠 |
|
|
|
14:17.370 --> 14:23.970 |
|
모달에서 실행 중인 가격을 검색해 가격을 부를 거예요 |
|
|
|
14:23.970 --> 14:29.220 |
|
단일 함수와 단일 메서드 가격만 취하는 거죠 |
|
|
|
14:29.220 --> 14:31.560 |
|
원하는 가격대로 제출할 수 있어요 |
|
|
|
14:31.560 --> 14:32.460 |
|
가서 보죠 |
|
|
|
14:32.460 --> 14:33.780 |
|
에이전트예요 |
|
|
|
14:33.900 --> 14:35.490 |
|
지금 첫 번째 미리 보기가 있어요. Get up! Get up! |
|
|
|
14:35.520 --> 14:38.700 |
|
이번 주에 함께 일하게 될 모든 에이전트를 보세요 |
|
|
|
14:38.940 --> 14:42.120 |
|
이제 들어가서 이 에이전트를 살펴볼 거예요 |
|
|
|
14:42.120 --> 14:46.380 |
|
특수 요원이라고 불리는 건 우리 특수 모델을 사용했기 때문이죠 |
|
|
|
14:46.380 --> 14:50.340 |
|
이건 전문 에이전트를 위한 파이썬 툴 모듈이에요 |
|
|
|
14:50.340 --> 14:56.220 |
|
약속드린 대로 코멘트도 달았고 힌트도 몇 가지 있어요 |
|
|
|
14:56.430 --> 14:58.620 |
|
이 클래스는 아주 간단해요 |
|
|
|
14:58.620 --> 15:03.630 |
|
우리 LLM을 원격으로 조정하는 에이전트죠 |
|
|
|
15:04.020 --> 15:08.040 |
|
이름과 색깔을 정하고 이름을 부여하죠 |
|
|
|
15:08.250 --> 15:13.290 |
|
그 이유는 나중에 알게 되겠지만 요원 일지가 있기 때문이죠 |
|
|
|
15:13.290 --> 15:15.060 |
|
다들 뭘 하는지 볼 수 있게요 |
|
|
|
15:15.060 --> 15:17.430 |
|
전문가가 빨간색을 채취할 거예요 |
|
|
|
15:17.430 --> 15:20.490 |
|
언제 생각하고 행동하는지 볼 수 있죠 |
|
|
|
15:21.240 --> 15:31.440 |
|
생성자 메서드에서 초기화를 시작했고요 로그인하면 시작되고 있죠 |
|
|
|
15:31.440 --> 15:35.340 |
|
Modal.+.찾기를 하고요 |
|
|
|
15:35.340 --> 15:37.470 |
|
서비스 비용과 가격을 찾아봤어요 |
|
|
|
15:37.650 --> 15:40.680 |
|
이건 조금 전에 우리가 배포한 거죠 |
|
|
|
15:40.680 --> 15:44.470 |
|
그래서 찾아보고 인스턴스화했죠 |
|
|
|
15:44.470 --> 15:47.470 |
|
그럼 일 시작할 준비가 됐다고 기록해요 |
|
|
|
15:47.530 --> 15:52.180 |
|
가격 호출 자체도 방금 본 것과 똑같아요 |
|
|
|
15:52.210 --> 15:55.540 |
|
가격도, 가격도, 리모컨도 있어요 |
|
|
|
15:55.570 --> 15:57.910 |
|
헬로 닷 리모컨을 만들었을 때처럼요 |
|
|
|
15:57.910 --> 15:59.110 |
|
함수를 취하는 거예요 |
|
|
|
15:59.110 --> 16:02.410 |
|
원격 조종을 호출하고 있어요 클라우드에서 실행된다는 뜻이죠 |
|
|
|
16:02.410 --> 16:04.360 |
|
우리 눈에는 거의 투명해요 |
|
|
|
16:04.360 --> 16:10.240 |
|
파이썬 에서 직접 호출하는 것 같지만 사실은 우리가 명시한 T4 박스의 클라우드에서 |
|
|
|
16:10.240 --> 16:12.520 |
|
실행될 거예요 |
|
|
|
16:12.550 --> 16:19.000 |
|
설명을 전달하고 완료됐다는 사실을 기록하고 결과를 반환하죠 |
|
|
|
16:19.570 --> 16:24.340 |
|
제가 너무 오래 떠들었나 봐요 첫날로 돌아왔을 때 끝났거나 |
|
|
|
16:24.340 --> 16:26.290 |
|
안 끝났길 바라요 |
|
|
|
16:26.650 --> 16:32.950 |
|
그럼 이쪽을 뒤집어서 시간을 채울 수도 있어요 그럼 작업을 하는 걸 살펴보죠 |
|
|
|
16:33.310 --> 16:39.850 |
|
그래서 지금 우리가 기억하기 전에 일시적인 앱을 찾다가 길을 잃었어요 |
|
|
|
16:39.880 --> 16:46.270 |
|
이제 제대로 배포된 앱에 있습니다 왜냐하면 Pricer 서비스를 보고 있으니까요 |
|
|
|
16:46.270 --> 16:47.470 |
|
배포된 앱이죠 |
|
|
|
16:47.470 --> 16:49.840 |
|
이 안에 들어가서 살펴보죠 |
|
|
|
16:49.870 --> 16:51.400 |
|
성공했다고 뜨네요 |
|
|
|
16:51.400 --> 16:52.720 |
|
다시 가서 보죠 |
|
|
|
16:52.720 --> 16:54.220 |
|
확실히 성공했어요 |
|
|
|
16:54.220 --> 16:54.940 |
|
됐어요 |
|
|
|
16:54.940 --> 16:58.000 |
|
성공적으로 133을 반환했어요 |
|
|
|
16:58.030 --> 17:02.470 |
|
지체 없이 바로 다시 실행하면 얼마나 빠른지 보이죠? |
|
|
|
17:02.470 --> 17:05.560 |
|
이미 따뜻할 때는 보통 그 정도로 빨리 녹아요 |
|
|
|
17:05.560 --> 17:07.360 |
|
클라우드에 올릴 거예요 |
|
|
|
17:07.360 --> 17:09.730 |
|
빨리 다른 걸 생각해 보죠 |
|
|
|
17:09.760 --> 17:16.780 |
|
iPhone SE의 2차 버전을 보죠 |
|
|
|
17:18.040 --> 17:19.300 |
|
아이폰은 얼마죠? |
|
|
|
17:19.300 --> 17:19.660 |
|
됐어요 |
|
|
|
17:19.660 --> 17:21.640 |
|
299달러예요 |
|
|
|
17:21.850 --> 17:34.150 |
|
그래서 2세대 아이패드 프로를 볼 수 있어서 정말 기뻐요 |
|
|
|
17:36.610 --> 17:40.340 |
|
299달러라니 인기가 많은가 보군요 |
|
|
|
17:40.640 --> 17:43.370 |
|
get이 따뜻해지면 좋은 감각을 갖게 되죠 |
|
|
|
17:43.370 --> 17:49.460 |
|
모델을 일단 채우면 아주 빨리 호출할 수 있어요 빠른 응답을 얻게 되죠 get it |
|
|
|
17:49.460 --> 17:51.440 |
|
에이전트에게 전화했죠 |
|
|
|
17:51.440 --> 17:57.290 |
|
에이전트가 하는 일은 여기 있는 에이전트가 하는 일은 이미 완료되었다는 거죠 |
|
|
|
17:57.290 --> 18:01.370 |
|
이미 클래스를 갖고 있고 인스턴스화했어요 |
|
|
|
18:01.370 --> 18:04.070 |
|
그 클래스는 안은 얼굴 파일에 이미 로드됐어요 |
|
|
|
18:04.070 --> 18:06.470 |
|
따뜻하고 일할 준비가 됐어요 |
|
|
|
18:06.470 --> 18:10.070 |
|
이 메서드를 호출할 때 파일을 다시 로드할 필요가 없어요 |
|
|
|
18:10.070 --> 18:11.090 |
|
다 준비해 놨어요 |
|
|
|
18:11.090 --> 18:12.800 |
|
추론만 하면 돼요 |
|
|
|
18:12.800 --> 18:14.420 |
|
그래서 그렇게 빠른 거예요 |
|
|
|
18:14.420 --> 18:16.490 |
|
그게 비결이에요 |
|
|
|
18:16.520 --> 18:23.030 |
|
클라우드에서 실행되는 모델에 API 구축하는 방법입니다 서버리스 |
|
|
|
18:23.030 --> 18:29.420 |
|
모델이죠 메모리에 모델 값을 캐시하는 방법입니다 준비되도록요 |
|
|
|
18:29.420 --> 18:33.530 |
|
아주 빠르게 진행했지만 이제 다시 돌아가서 직접 해야 해요 |
|
|
|
18:33.560 --> 18:36.680 |
|
제대로 작동하고 모듈에서도 멋지게 보여야 해요 |
|
|
|
18:36.680 --> 18:39.110 |
|
그럼 다음 영상에서 마무리하도록 하죠
|
|
|