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.
442 lines
12 KiB
442 lines
12 KiB
WEBVTT |
|
|
|
00:00.260 --> 00:02.750 |
|
챗봇 만들기입니다 안녕하세요 |
|
|
|
00:02.780 --> 00:04.070 |
|
계속하죠 |
|
|
|
00:04.070 --> 00:09.650 |
|
다음 부분에서는 시스템 메시지를 좀 더 흥미롭게 비트로 업그레이드할 거예요 |
|
|
|
00:09.650 --> 00:10.700 |
|
시스템 메시지예요 |
|
|
|
00:10.700 --> 00:12.710 |
|
옷 가게의 도우미로 일하죠 |
|
|
|
00:12.740 --> 00:15.920 |
|
세일 중인 제품을 입어 보라고 부드럽게 격려해 주세요 |
|
|
|
00:15.950 --> 00:17.780 |
|
60% 할인이라니 대단해요 |
|
|
|
00:17.780 --> 00:19.880 |
|
다른 건 50% 할인해요 |
|
|
|
00:19.880 --> 00:24.530 |
|
예를 들어 손님이 모자를 사러 왔다고 하면 아주 좋다고 대답하면 돼요 |
|
|
|
00:24.560 --> 00:28.100 |
|
판매 행사에 쓸 모자가 아주 많아요 |
|
|
|
00:28.100 --> 00:32.330 |
|
Get it. 어떤 걸 사야 할지 모를 땐 모자를 사라고 권장하세요 |
|
|
|
00:32.330 --> 00:36.050 |
|
시스템 프롬프트에서 몇 가지 일이 일어나고 있어요 |
|
|
|
00:36.050 --> 00:42.230 |
|
판매와 모자, 기타 물품에 대한 정보를 입수했어요 |
|
|
|
00:42.350 --> 00:47.930 |
|
예를 들어보죠 고객이 이걸 말하면 저걸 말하면 돼요 |
|
|
|
00:47.930 --> 00:52.280 |
|
그 두 가지 예는 분위기와 스타일을 설정하는 방법이죠 |
|
|
|
00:52.400 --> 00:58.850 |
|
모자에 관한 더 많은 사실을 대화에 소개하는 방법이기도 하죠 |
|
|
|
00:58.850 --> 01:01.670 |
|
이게 다 원샷 프롬프트 예죠 |
|
|
|
01:01.670 --> 01:03.150 |
|
멀티샷 프롬핑을 논할 수도 있어요 |
|
|
|
01:03.150 --> 01:06.720 |
|
어떻게 응답할지 미묘한 차이를 주고 있어요 |
|
|
|
01:06.930 --> 01:09.810 |
|
그걸 시스템 메시지로 구축하는 거죠 |
|
|
|
01:09.810 --> 01:13.950 |
|
다른 방법도 있어요 나중에 얘기하거나 적어도 다른 방법이요 |
|
|
|
01:14.040 --> 01:16.980 |
|
하지만 이건 아주 효과적인 방법이에요 |
|
|
|
01:16.980 --> 01:26.580 |
|
이 시스템 메시지를 추가하면 채팅 봇과 채팅을 할 수 있어요 |
|
|
|
01:26.670 --> 01:34.170 |
|
그래서 다시 발전기 채팅 방식을 작성해요 메시지와 역사가 필요하죠 그라디오가 그걸로 연락하고 |
|
|
|
01:34.170 --> 01:36.030 |
|
싶어 하거든요 |
|
|
|
01:36.210 --> 01:44.730 |
|
먼저 오픈AI가 기대하는 포맷으로 변환합니다 여러분이 익숙한 목록을 작성함으로써요 |
|
|
|
01:44.730 --> 01:49.200 |
|
또 하나 언급할 것은 지난 시간에 말했는지 모르겠는데 여기 마지막에 |
|
|
|
01:49.230 --> 01:56.550 |
|
우린 물론 리스트에 추가해야 합니다 사용자가 보내는 가장 최근 메시지를 역할 사용자 콘텐츠로 하단에 |
|
|
|
01:56.550 --> 01:58.770 |
|
추가해야 하죠 |
|
|
|
01:58.770 --> 02:00.480 |
|
그 메시지도요 |
|
|
|
02:00.480 --> 02:08.460 |
|
물론 이때쯤이면 가장 깊은 메모리에 새겨진 create 호출을 사용하고 스트리밍 |
|
|
|
02:08.460 --> 02:12.630 |
|
이즈 true로 결과를 스트리밍하죠 |
|
|
|
02:12.630 --> 02:13.530 |
|
자, 시작하죠 |
|
|
|
02:13.560 --> 02:14.760 |
|
그 얘기도 하죠 |
|
|
|
02:14.760 --> 02:16.680 |
|
다른 창에서 다시 보여드릴게요 |
|
|
|
02:16.710 --> 02:17.340 |
|
안 될 거 없죠 |
|
|
|
02:17.340 --> 02:20.910 |
|
쇼핑 보조와 얘기해 보죠 |
|
|
|
02:21.210 --> 02:22.050 |
|
안녕하세요 |
|
|
|
02:23.520 --> 02:24.870 |
|
어서 오세요 |
|
|
|
02:24.900 --> 02:25.920 |
|
무엇을 도와드릴까요? |
|
|
|
02:25.920 --> 02:27.510 |
|
특별히 찾는 게 있나요? |
|
|
|
02:27.510 --> 02:33.090 |
|
신발을 좀 사고 싶은데요 |
|
|
|
02:34.110 --> 02:35.280 |
|
좋아요 |
|
|
|
02:36.480 --> 02:38.760 |
|
예쁜 게 많아요 |
|
|
|
02:38.760 --> 02:41.580 |
|
여러분이 보시는 동안 세일을 말씀드릴게요 |
|
|
|
02:41.580 --> 02:43.140 |
|
대부분 50% 할인해요 |
|
|
|
02:43.140 --> 02:47.340 |
|
괜찮으시면 60% 할인된 멋진 모자가 있어요 |
|
|
|
02:47.370 --> 02:50.340 |
|
새 신발과 잘 어울릴 거예요 |
|
|
|
02:50.340 --> 02:52.170 |
|
둘 다 보시겠어요? |
|
|
|
02:52.620 --> 02:56.490 |
|
그래서 제가 말씀드리고 싶은 건 확실히 해결됐다는 거예요 |
|
|
|
02:56.490 --> 03:01.170 |
|
시스템 프롬프트에 제공한 지식이 있어요 |
|
|
|
03:01.170 --> 03:07.990 |
|
하지만 제가 시스템 프롬프트에 사용한 열정적이고 활발한 |
|
|
|
03:07.990 --> 03:16.960 |
|
스타일이 이런 식으로 소통하는 방식으로 전염됐다는 걸 눈치채셨길 바라요 |
|
|
|
03:17.290 --> 03:22.720 |
|
이런 원샷 또는 멀티샷 프롬핑에서 중요한 부분이죠 분위기를 설정할 때 |
|
|
|
03:22.720 --> 03:25.930 |
|
어떻게 응답해야 할지 예제를 제시하세요 |
|
|
|
03:26.860 --> 03:28.510 |
|
계속 진행하죠 |
|
|
|
03:28.510 --> 03:31.180 |
|
시스템 메시지를 추가하죠 |
|
|
|
03:31.180 --> 03:35.950 |
|
손님이 신발을 찾으시면 세일 중인 신발이 아니라고 대답하세요 |
|
|
|
03:35.980 --> 03:37.720 |
|
대응해야 한다고 해두죠 |
|
|
|
03:37.720 --> 03:39.910 |
|
신발은 오늘 세일 안 한다고 대답하세요 |
|
|
|
03:39.910 --> 03:42.760 |
|
손님들께 모자를 보여주세요 |
|
|
|
03:42.760 --> 03:44.170 |
|
다시 해 보죠 |
|
|
|
03:44.170 --> 03:45.580 |
|
어떻게 되나 보죠 |
|
|
|
03:45.640 --> 03:48.160 |
|
하나 더 있어요 |
|
|
|
03:48.310 --> 03:49.630 |
|
그렇게 볼 수도 있겠네요 |
|
|
|
03:49.660 --> 03:54.220 |
|
네, 그것도 멀티샷 프롬프트죠 |
|
|
|
03:54.250 --> 03:55.210 |
|
이렇게 하죠 |
|
|
|
03:55.210 --> 03:55.990 |
|
안녕하세요 |
|
|
|
03:57.640 --> 03:58.420 |
|
보고 있어요? |
|
|
|
03:58.420 --> 04:04.540 |
|
신발을 좀 사려고요 |
|
|
|
04:04.540 --> 04:05.900 |
|
좋아요 |
|
|
|
04:05.930 --> 04:08.630 |
|
오늘 신발 세일 안 해요 |
|
|
|
04:08.630 --> 04:10.940 |
|
여기 오신 김에 우리 모자도 구경해 보실래요? |
|
|
|
04:13.640 --> 04:20.030 |
|
Get it's go 계속 얻어맞을 불쌍한 손님을 불쌍히 여겨 주세요 |
|
|
|
04:20.330 --> 04:27.860 |
|
그래서 어떻게 확립됐는지 다시 볼 수 있죠 신발은 세일하지 않지만 모자는 세일한다는 |
|
|
|
04:27.860 --> 04:28.910 |
|
거요 |
|
|
|
04:29.180 --> 04:34.820 |
|
그게 멀티샷 프롬프트 예입니다 배울 수 있는 예시를 더 제공하는 |
|
|
|
04:34.820 --> 04:35.930 |
|
거죠 |
|
|
|
04:36.260 --> 04:44.510 |
|
우리가 할 수 있는 또 다른 흥미로운 것은 지금까지 이런 건축을 보실 때마다 항상 시스템 메시지로 |
|
|
|
04:44.510 --> 04:47.960 |
|
시작하는 걸 보셨을 거예요 |
|
|
|
04:47.960 --> 04:49.640 |
|
시스템 메시지는 상단에 있어요 |
|
|
|
04:49.640 --> 04:55.070 |
|
하지만 OpenAI 호출에서는 상단에 시스템 메시지가 있어야 한다는 제약이 없어요 |
|
|
|
04:55.070 --> 04:58.460 |
|
시스템 메시지는 가면서 추가하세요 |
|
|
|
04:58.730 --> 05:05.930 |
|
예를 들어 우리가 할 수 있는 것 중 하나는 아주 해커 같은 코드에 대해 사과드립니다 권장하진 않지만 |
|
|
|
05:05.970 --> 05:09.120 |
|
예제를 보여주기 위해 여기 나와있어요 |
|
|
|
05:09.120 --> 05:15.390 |
|
실제론 그렇게 하면 안 되지만 채팅 생성기를 만들 때 할 수 있는 |
|
|
|
05:15.390 --> 05:24.510 |
|
건 여기에 넣는 거죠 사용자가 보내는 현재 메시지가 워드 벨트를 포함한다면요 |
|
|
|
05:24.510 --> 05:28.020 |
|
다소 민망한 방법이지만 문자열 벨트를 찾아봤어요 |
|
|
|
05:28.050 --> 05:33.150 |
|
물론 완전한 단어인지 테스트해야 하고 대문자, 소문자 등을 |
|
|
|
05:33.180 --> 05:34.770 |
|
생각해야 하죠 |
|
|
|
05:34.770 --> 05:38.220 |
|
전 그런 거 안 해요 못된 짓이지만 요점은 알겠죠 |
|
|
|
05:38.220 --> 05:43.560 |
|
벨트가 메시지 안에 있으면 이 메시지 모음에 추가될 거예요 |
|
|
|
05:43.590 --> 05:50.490 |
|
또 다른 시스템 메시지는 추가 컨텍스트를 위해 마트는 벨트를 팔지 않습니다 하지만 |
|
|
|
05:50.490 --> 05:58.500 |
|
세일 중인 아이템을 꼭 지적하세요 사용자가 벨트를 요청하면 프롬프트에 추가될 거예요 |
|
|
|
05:59.940 --> 06:06.030 |
|
한 번 해보죠 이걸 여기로 불러와요 |
|
|
|
06:08.250 --> 06:09.180 |
|
안녕하세요 |
|
|
|
06:11.130 --> 06:12.060 |
|
어서 오세요 |
|
|
|
06:12.090 --> 06:13.080 |
|
제가 도와드릴게요 |
|
|
|
06:13.530 --> 06:17.310 |
|
벨트 하나 사려고요 |
|
|
|
06:19.110 --> 06:19.710 |
|
미안해요 |
|
|
|
06:19.710 --> 06:20.910 |
|
벨트는 없어요 |
|
|
|
06:20.910 --> 06:24.390 |
|
하지만 모자도 있고 멋진 아이템도 있어요 |
|
|
|
06:24.420 --> 06:26.130 |
|
60% 할인요 |
|
|
|
06:26.310 --> 06:27.780 |
|
자, 됐어요 |
|
|
|
06:27.810 --> 06:28.620 |
|
여기요 |
|
|
|
06:28.650 --> 06:29.880 |
|
네 |
|
|
|
06:30.210 --> 06:33.270 |
|
확실히 주의를 기울이죠 |
|
|
|
06:33.270 --> 06:41.310 |
|
시스템 메시지가 이 메시지 목록의 다른 행으로 추가되면 주의를 |
|
|
|
06:41.310 --> 06:42.900 |
|
기울이죠 |
|
|
|
06:42.900 --> 06:49.140 |
|
대화에 맥락을 추가할 기회를 주는 거죠 |
|
|
|
06:49.140 --> 06:58.740 |
|
단어나 비트링을 감지하는 건 매우 복잡한 코드지만 좀 더 튼튼하게 |
|
|
|
06:58.740 --> 07:02.640 |
|
만들 수도 있어요 |
|
|
|
07:02.670 --> 07:07.830 |
|
특정 단어를 찾는 작은 사전도 하나 있어야 해요 |
|
|
|
07:07.830 --> 07:15.910 |
|
그걸 찾으면 적절한 방식으로 문맥을 풍부하게 하는 거죠 |
|
|
|
07:15.970 --> 07:23.140 |
|
따라서 여러분이 뭔가를 찾아 컨텍스트에 추가할 수 있는 능력을 주죠 |
|
|
|
07:23.170 --> 07:29.950 |
|
랙에 대해 좀 아실지도 모르겠네요 랙이 의미하는 바가 아주 크다는 것도 |
|
|
|
07:29.950 --> 07:31.150 |
|
알 거예요 |
|
|
|
07:31.180 --> 07:38.650 |
|
Rag는 프롬프트와 관련된 추가 정보를 찾아 LM으로 전송되는 메시지의 컨텍스트에 |
|
|
|
07:38.680 --> 07:41.200 |
|
추가하는 거죠 |
|
|
|
07:41.230 --> 07:48.430 |
|
물론 래그는 훨씬 더 정교하고 똑똑한 방법으로 그걸 하죠 여기 이 진부한 코드보다는요 |
|
|
|
07:48.610 --> 07:55.540 |
|
하지만 이걸 조명이나 아기용 랙이라고 생각해도 돼요 운동으로 생각하세요 |
|
|
|
07:55.540 --> 08:01.030 |
|
비트를 좀 더 보강할 수도 있어요 적어도 레벡스를 써서 특정 단어를 찾아볼 수 |
|
|
|
08:01.030 --> 08:01.540 |
|
있죠 |
|
|
|
08:01.540 --> 08:07.930 |
|
작은 사전을 하나 준비하세요 스토어에 있는 다양한 아이템의 가격을 함께 |
|
|
|
08:07.930 --> 08:13.730 |
|
적어서 시스템 메시지로 추가하는 거죠 컨텍스트를 더 주려고요 |
|
|
|
08:13.730 --> 08:20.270 |
|
시험해 보고 챗봇을 만들 수 있다는 걸 알 수 있어요 스토어에 있는 상품의 가격을 |
|
|
|
08:20.270 --> 08:23.000 |
|
아는 챗봇요 그럼 멋질 거예요 |
|
|
|
08:23.750 --> 08:27.200 |
|
이번 실험은 여기까지예요 |
|
|
|
08:27.200 --> 08:32.270 |
|
아까 언급하고 싶은 게 있었는데 멀티샷 프롬프트를 시스템 프롬프트에 |
|
|
|
08:32.270 --> 08:38.840 |
|
밀어 넣는 것 말고 다른 방법도 있어요 다른 방법은 사용자 비서가 있는 거죠 사용자 비서가 |
|
|
|
08:38.840 --> 08:43.430 |
|
메시지 세트를 갖는 건데 실제로 일어나지 않았어요 |
|
|
|
08:43.460 --> 08:49.580 |
|
사용자와 비서 사이의 가상의 교환을 가질 수 있습니다 현재 대화 |
|
|
|
08:49.580 --> 08:56.930 |
|
전에 포함된 대화에요 그걸 LM을 프라임하는 방법으로 사용할 수 있습니다 |
|
|
|
08:56.930 --> 09:02.990 |
|
다른 질문에 어떻게 반응했는지 감을 잡을 수 있도록요 |
|
|
|
09:03.140 --> 09:09.200 |
|
다시 한번 써먹으세요 스타일 훈련도 하고 추가 정보도 제공하고요 |
|
|
|
09:09.200 --> 09:14.640 |
|
그 전에 벨트에 관한 질문이 들어왔을 때 비서가 이미 매장에 벨트가 |
|
|
|
09:14.640 --> 09:19.740 |
|
없다고 답했을 수도 있어요 그럼 거기서 배웠겠죠 |
|
|
|
09:19.740 --> 09:25.380 |
|
기술에는 장단점이 있습니다 시스템 프롬프트에서 제공하든 |
|
|
|
09:25.410 --> 09:34.410 |
|
사용자 보조 상호 작용을 제공하든 입력 컨텍스트의 일부로 받아들일 수 있도록요 |
|
|
|
09:34.560 --> 09:38.640 |
|
둘 다 시험해 보고 싶어요 |
|
|
|
09:38.640 --> 09:43.680 |
|
이걸 업데이트해 사용자 비서 상호 작용을 사용하도록 하세요 시스템 프롬프트 대신에요 어떻게 되는지 |
|
|
|
09:43.680 --> 09:44.160 |
|
보시죠 |
|
|
|
09:44.190 --> 09:47.430 |
|
Get it get it get it get it get it get it get it a good-tures good. |
|
|
|
09:47.430 --> 09:53.460 |
|
그리고 이걸 훨씬 더 견고하게 만들 이 변화도 가하세요 스토어에 있는 |
|
|
|
09:53.460 --> 10:00.780 |
|
다양한 아이템에 대한 사전을 만들고 가격이나 판매 금액을 찾아보세요 그런 다음 |
|
|
|
10:00.780 --> 10:09.060 |
|
그걸 대화에 추가해 비서가 전문 지식으로 답변할 수 있도록요 재미있게 하세요 오늘을 마무리할 |
|
|
|
10:09.060 --> 10:12.300 |
|
다음 비디오에서 뵙죠
|
|
|