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.
310 lines
8.5 KiB
310 lines
8.5 KiB
WEBVTT |
|
|
|
00:00.980 --> 00:04.850 |
|
주피터 연구소의 4일째 날이죠 |
|
|
|
00:04.880 --> 00:10.820 |
|
아주 익숙해 보일 거예요 왜냐하면 사실 3일째의 복제로 시작했거든요 |
|
|
|
00:11.030 --> 00:14.720 |
|
이 복제본에는 셀이 몇 개 있어요 |
|
|
|
00:14.720 --> 00:19.880 |
|
환경을 연결하는 시작에서 가져오기를 다시 실행해야죠 |
|
|
|
00:19.880 --> 00:22.340 |
|
개척 시대 모델과 교감하고 싶어요 |
|
|
|
00:22.340 --> 00:23.630 |
|
왜인 줄 알아요? |
|
|
|
00:23.630 --> 00:28.520 |
|
개척 모델들을 오픈 소스 모델과 나란히 작동시킬 수 있게 될 겁니다 아주 근사하겠죠 get the |
|
|
|
00:28.520 --> 00:29.900 |
|
new-file |
|
|
|
00:30.260 --> 00:37.340 |
|
프롬프트, 메시지 함수도 있습니다. C++ 파일을 OUTPUT하여 쓸 수 있는 것을 |
|
|
|
00:37.490 --> 00:39.530 |
|
기억하신다면요. |
|
|
|
00:39.920 --> 00:43.880 |
|
이건 중복 기재될 테니 실행할 필요 없을 것 같아요 |
|
|
|
00:43.880 --> 00:49.850 |
|
파이 프로그램 코드는 외우실 테니 안 해 봐도 돼요 |
|
|
|
00:49.850 --> 01:00.680 |
|
근데 가장 누적된 수에 대한 배열을 찾는 하드 프로그램을 위한 코드를 얻게 될 거예요 |
|
|
|
01:01.360 --> 01:07.870 |
|
스트림과 GPT 함수도 필요해요 |
|
|
|
01:07.870 --> 01:10.600 |
|
이 개울이 필요해요 클로드 함수요 |
|
|
|
01:10.600 --> 01:14.710 |
|
덮어쓰기 직전이지만 최적화 함수가 필요해요 |
|
|
|
01:14.710 --> 01:22.270 |
|
이 멋진 그러데이션 함수는 파이썬 을 실행하고 C++를 실행합니다 다른 |
|
|
|
01:22.270 --> 01:28.180 |
|
이들과 공유하지 않는다는 걸 기억하시길 바라요 |
|
|
|
01:28.180 --> 01:33.280 |
|
파이썬 + C+ 코드를 임의로 실행할 수 있도록 허용해서는 |
|
|
|
01:33.310 --> 01:34.360 |
|
안 되죠 |
|
|
|
01:34.360 --> 01:35.650 |
|
좋은 생각이 아니에요 |
|
|
|
01:35.650 --> 01:40.960 |
|
그러니 그래디오 인터페이스는 혼자만 알고 공유 = true라고 하지 마세요 |
|
|
|
01:40.960 --> 01:44.170 |
|
CSS 덕분에 근사해 보이죠 |
|
|
|
01:44.200 --> 01:45.430 |
|
좋아요 |
|
|
|
01:45.430 --> 01:47.770 |
|
Get in get 새로운 코드예요 |
|
|
|
01:47.770 --> 01:50.710 |
|
아주 간단한 거예요 |
|
|
|
01:50.710 --> 01:52.780 |
|
수입품부터 시작하죠 |
|
|
|
01:52.780 --> 01:58.420 |
|
휴깅페이스 허브에서 불러오고 있어요 로그인 함수죠 인퍼런스 클라이언트라는 |
|
|
|
01:58.420 --> 01:59.860 |
|
클래스이기도 해요 |
|
|
|
02:00.280 --> 02:03.210 |
|
토큰라이저를 불러올 거예요 |
|
|
|
02:03.810 --> 02:05.790 |
|
얼굴 포옹에 로그인할게요 |
|
|
|
02:05.790 --> 02:06.780 |
|
됐어요 |
|
|
|
02:06.780 --> 02:09.030 |
|
이제 변함없는 것들만 남았어요 |
|
|
|
02:09.150 --> 02:15.000 |
|
코드 모델의 이름이죠 여기 code젬마도 있어요 시도해보시고 저보다 |
|
|
|
02:15.000 --> 02:17.040 |
|
성공했는지 보시라고요 |
|
|
|
02:17.070 --> 02:22.200 |
|
이건 제 엔드포인트 URL이에요 제 엔드포인트 페이지에서 가져온 거죠 |
|
|
|
02:22.200 --> 02:24.540 |
|
이 URL을 가져갈게요 |
|
|
|
02:24.540 --> 02:29.040 |
|
지금 제 엔드포인트가 실행되는 곳이죠 0달러가 들었어요 시간당 80달러요 |
|
|
|
02:29.040 --> 02:35.250 |
|
이건 코드 젬마인데 안타깝게도 일시 중단됐어요 안정적이지 않아서요 |
|
|
|
02:35.640 --> 02:38.370 |
|
좋아요, 그럼 해 보죠 |
|
|
|
02:38.400 --> 02:45.090 |
|
토큰마이저 기억하세요 오토 토큰마이저 클래스로 뭔가를 만들고 모델의 이름을 학습된 패스라고 |
|
|
|
02:45.090 --> 02:49.020 |
|
하면 해당 모델에 맞는 토큰마이저를 얻게 돼요 |
|
|
|
02:49.020 --> 02:51.390 |
|
이제 이걸 만들게요 |
|
|
|
02:51.390 --> 02:57.540 |
|
이건 우리가 전에 쓴 함수인데 구조화된 사전 목록을 만들어 파이가 |
|
|
|
02:57.540 --> 03:03.380 |
|
C++로 다시 쓰이는 간단한 함수를 요청할 거예요 |
|
|
|
03:03.380 --> 03:09.980 |
|
그런 다음 토큰라이저를 이용해 채팅 템플릿을 적용해 텍스트로 바꿀 거예요 |
|
|
|
03:10.010 --> 03:12.110 |
|
제가 무슨 말을 하는지 한번 보죠 |
|
|
|
03:12.110 --> 03:15.650 |
|
저걸 실행하고 이걸 실행하는 걸 기억한다면요 |
|
|
|
03:16.250 --> 03:19.250 |
|
먼저 메시지가 뭔지 기억하세요 |
|
|
|
03:19.250 --> 03:22.490 |
|
메시지란 두 가지 요소로 된 목록이에요 |
|
|
|
03:22.490 --> 03:24.650 |
|
그중 하나는 시스템 역할이에요 |
|
|
|
03:24.650 --> 03:25.760 |
|
그게 내용이에요 |
|
|
|
03:25.790 --> 03:29.180 |
|
파이썬 + 코드 어쩌고저쩌고를 다시 구현하라고 했죠 |
|
|
|
03:29.900 --> 03:34.850 |
|
그리고 사용자 메서드가 있죠 |
|
|
|
03:34.880 --> 03:41.810 |
|
완전히 열려 있다는 의미에서 여기서 언급해야 할 게 있어요 약간의 힌트를 추가했어요 |
|
|
|
03:41.810 --> 03:49.940 |
|
난수 발생기의 구현을 동일하게 유지하세요 그래야 결과가 정확히 일치하니까요 |
|
|
|
03:50.060 --> 03:57.410 |
|
짐작하시겠지만 진행을 유지하기 위해 여기저기 힌트를 추가해야 했어요 |
|
|
|
03:57.470 --> 04:00.830 |
|
그 결과는 잠시 후에 보실 수 있어요 |
|
|
|
04:00.880 --> 04:04.240 |
|
이게 여러분이 익숙한 메시지예요 |
|
|
|
04:04.240 --> 04:11.710 |
|
이제 채팅 템플릿을 적용한 후 텍스트가 어떻게 됐는지 보여드릴게요 이걸 프린트하면 간격이 좀 더 길어질 |
|
|
|
04:11.740 --> 04:13.240 |
|
거예요 비트 템플릿 |
|
|
|
04:13.270 --> 04:14.590 |
|
인쇄해 봐요 |
|
|
|
04:14.950 --> 04:16.360 |
|
시작할게요 |
|
|
|
04:16.510 --> 04:17.440 |
|
이걸 보세요 |
|
|
|
04:17.440 --> 04:24.490 |
|
특별한 토큰이 있어요 시작할게요, 다음은 시스템 그다음은 시스템 메시지죠 |
|
|
|
04:24.490 --> 04:26.080 |
|
사용자에게도 같은 거죠 |
|
|
|
04:26.080 --> 04:27.970 |
|
이게 코드예요 |
|
|
|
04:27.970 --> 04:30.700 |
|
이 프롬프트로 끝나죠 |
|
|
|
04:30.700 --> 04:37.330 |
|
달 착륙선은 계속 가서 지원 응답을 할 거예요 |
|
|
|
04:37.540 --> 04:46.090 |
|
이제 여러분은 포옹하는 얼굴 엔드포인트에 전화를 걸고 오픈 소스 모델에 이런 종류의 메시지를 |
|
|
|
04:46.090 --> 04:51.430 |
|
만들고 응답을 받는 게 아주 어려울 거라고 생각하겠죠 |
|
|
|
04:51.730 --> 04:52.840 |
|
그렇지 않아요 |
|
|
|
04:52.840 --> 04:55.390 |
|
코드 두어 줄이면 되는 그런 것 중 하나죠 |
|
|
|
04:55.390 --> 04:56.050 |
|
여기 있네요 |
|
|
|
04:56.050 --> 04:57.490 |
|
아주 간단해요 |
|
|
|
04:57.580 --> 05:04.020 |
|
객체를 생성합니다 inference 클라이언트요 그리고 엔드포인트 URL과 포옹하는 얼굴 |
|
|
|
05:04.050 --> 05:09.150 |
|
토큰을 알려줍니다 그런 다음 클라이언트 .text 생성이라고 하죠 |
|
|
|
05:09.150 --> 05:13.320 |
|
메시지를 전달하는 거죠 이 경우엔 결과를 스트리밍하고 싶어요 |
|
|
|
05:13.320 --> 05:15.780 |
|
그게 없으면 더 짧아져요 |
|
|
|
05:15.780 --> 05:18.030 |
|
하지만 결과가 다시 흘러오는 걸 보니 좋네요 |
|
|
|
05:18.330 --> 05:24.030 |
|
최대 새 토큰은 한동안 계속될 수 있다고 알려주는 거예요 |
|
|
|
05:24.270 --> 05:26.790 |
|
어떻게 되는지 보죠 |
|
|
|
05:28.080 --> 05:36.270 |
|
제 엔드포인트에서 스트리밍을 하고 있습니다 얼굴을 안으며 달리고 있습니다 |
|
|
|
05:36.270 --> 05:38.610 |
|
이 변환의 결과죠 |
|
|
|
05:40.650 --> 05:44.580 |
|
이 작업을 하는 동안 한 가지 지적하고 싶은 것은 여러분이 이 코드를 |
|
|
|
05:44.580 --> 05:51.300 |
|
인식하고 계시길 바랍니다 아주 합법적으로 보이죠 파이썬 코드를 C+로 아주 탄탄하게 변환했어요 |
|
|
|
05:51.300 --> 05:57.000 |
|
비트는 처음에 C 플러스 플러스 코드를 설명하고 |
|
|
|
05:57.000 --> 05:57.990 |
|
있어요 |
|
|
|
05:57.990 --> 06:01.850 |
|
왜 그렇게 했는지에 대한 문자로 끝나기도 하고요 |
|
|
|
06:01.880 --> 06:07.070 |
|
내 시스템 메시지는 그러면 안 된다고 주장하는데도요 |
|
|
|
06:07.190 --> 06:13.730 |
|
어떤 설명도 하지 말라고 돼 있는데 시스템 메시지를 통해 설명을 하지 말라는 메시지를 |
|
|
|
06:13.730 --> 06:15.980 |
|
받을 수 없었어요 get it |
|
|
|
06:16.010 --> 06:20.420 |
|
기억하시겠지만 GPT 4와 클로드는 지시를 잘 따르죠 |
|
|
|
06:20.420 --> 06:25.610 |
|
프롬프트에서 시간을 더 들여 작업하면 그런 일이 일어나지 않도록 할 수 |
|
|
|
06:25.640 --> 06:26.900 |
|
있을 것 같아요 |
|
|
|
06:26.900 --> 06:32.360 |
|
하지만 그게 실패하면 post processing을 |
|
|
|
06:32.360 --> 06:39.800 |
|
해서 C 플러스 플러스 코드 시작까지 모든 걸 제거하는 게 아주 쉽죠 이 기호까지 |
|
|
|
06:39.800 --> 06:45.890 |
|
모든 걸 제거하고 이와 이 사이에 있는 걸 취할 수 있어요 |
|
|
|
06:46.010 --> 06:49.850 |
|
post processing을 하면 쉽게 할 수 있어요. |
|
|
|
06:50.270 --> 06:51.170 |
|
좋아요 |
|
|
|
06:51.170 --> 06:55.310 |
|
추론을 실행하는 게 얼마나 쉬운지 보셨죠 |
|
|
|
06:55.460 --> 07:00.620 |
|
UI 상에서 함께 조립하고 실행할 때 다시 뵙죠. TMI TMI UI |
|
|
|
07:00.650 --> 07:01.520 |
|
그때 봐요
|
|
|