주피터 연구소에 잘 오셨습니다 이 플랫폼에서 보낸 시간의 에픽 엔딩이 될 텐데요
지난 7주간의 멋진 마무리가 될 거예요
가장 먼저 눈에 띄는 건 8주 차 폴더에 많은 일이 벌어지고 있다는 거예요
여기 파일이 많은 건 우리가 풀어야 할 게 많다는 걸 보여주죠 이 큰 문제를 해결하기 위해
해야 할 일이 많다는 걸요 Get it
이 코드가 진행되는 동안 평소보다 더 빠른 속도로 움직일 거라는 의미죠
하지만 괜찮습니다 지금 시점에서는 이미 능숙하고 LLM 엔지니어링의 달인이 되어
가고 있으니까요 이제 제가 설명할 필요도 없겠죠 조수와 사용자 같은 사람들이 어디에
있는지에 대해서요
이제는 아주 오래된 뉴스죠
네, 토큰이 뭔지 설명하고 있었는데 불과 몇 주 전이었다니 놀랍죠
이제 에이전트 같은 인공지능 1을 경험할 준비가 됐어요
시작 전에 get 절차가 있어요
패키지를 좀 바꿨어요
이 환경에 종속성이 있는 패키지를 추가했어요 이걸 아주 흥미로운 문제로
만들기 위해서요
그 말은 여러분이∙∙∙ 9월 말쯤에 코드를 불러오면 다시 코드를 불러와 패키지를
업데이트해야 할 수도 있어요 제가 추가한 새로운 게 있으려면요
아주 쉬운 일이죠
여러분이 할 일은 프로젝트 홈 디렉터리에 가는 거죠
LM 엔지니어링이죠
PC용이라면 아나콘다 프롬프트가 있어야 해요
최신 코드를 얻기 위해 깃 풀을 하고 콘다 인플루언서 업데이트를 실행해요
파일을 환경으로 지정해요 yml과 prune은 목록에 없는 패키지를
제거하라고 하죠
아무것도 삭제하지 않은 것 같아요 어쨌든 이건 항상 실용적인 한 줄 대사예요
새로운 환경으로 환경을 업데이트하는 데 필요한 거죠 yml 파일이요
자, 시작하죠
수법에 대해 얘기해보죠
오늘 수업에 들어서면서 get은 하나만 남았어요
수단을 들여오는 거죠
됐어요
토큰을 설정하지 않았다면 모듈 셋업이라는 명령줄을 실행해야
해요
실행 방법은 이 줄을 주석 처리 해제하고 저 문을 저기서 실행하는 거죠
지금은 안 할게요 이미 해뒀거든요 환경 설정도요
하지만 그렇게 하면 브라우저 창이 뜨고 양식을 승인하게 돼요
그럼 Modal이 환경 변수를 설정해 주죠
정말 멋진 것 같아요
토큰을 가지고 겪는 어려움들 특히 오픈아이는 완전히 다른 경험이에요
아주 간소화됐죠
수법에 아주 좋죠
패를 놓는 법을 제대로 터득한 것 같군요
만약 그게 안 된다면 표준 플랫폼으로 가보세요 거기서 여러분의 토큰을 찾을
수 있어요 OpenAI 같은 걸 위한 것과 거의 같은 방식으로요
수동으로 설정할 수 있어요
그래도 잘되면 좋겠어요
전 그랬어요
누가 봐도 일반적으로 사람들이 그렇게 하죠
좋아요
이제 다음 줄에서 hello라는 패키지에서 몇 가지를 불러오겠습니다 여기
적어둔 거죠
지금 당장 가서 어떻게 생겼는지 보여드릴게요
이건 파이썬 일부분이에요
파이썬 으로 된 코드네요
이게 뭘 하는지 말씀드리죠
그래서 모듈을 수입하죠
몇 가지를 수입했어요
앱 볼륨과 이미지를 위한 앱이요
사실 지금 보니까 볼륨을 사용하지 않았네요
그래서 그건 필요 없다고 생각해요
간단한 게 좋아요
그래서 이렇게 해요
설정으로 시작해요
어떤 인프라가 필요한지 설명하는 거죠
이건 모듈의 예입니다 문서에서 비트로 언급하죠
이건 코드로서의 인프라 유형이에요
어떤 박스를 원하는지 코드를 사용해 설명할 수 있어요
Google Colab에서 다양한 드롭다운을 선택해야 한다고 생각하신다면
어떤 종류의 VM을 선택해야 하는지 Google Colab에서 어떤 런타임을 원하는지 말이에요 여기선 코드에서 지정해
원하는 걸 선택할 수 있어요
이미지가 필요하다고 하면 그게 데비언 운영체제가 되어야죠
요청 패키지를 설치하려고 합니다 URL 웹 작업을 위한 아주 아주
일반적인 표준 패키지죠
GPU를 명시합니다 이 예제에선 사용되지 않았죠
미안해요
비트가 더 간단하죠
이 예제에서는 GPU 사용은 안 할 겁니다 아주 단순하게 할 거니까요
그래서 전 인사법을 알아요
아주 간단해요
일종의 함수예요
안녕하세요
문자열을 반환하죠
이것은 불러오기 요청을 합니다 IP 정보라는 웹사이트로 가죠 io는 알아두면 유용하죠
JSON 객체를 반환하는 유틸리티 중 하나로 IP 주소를
설명하는 거죠
그리고 JSON을 가져다가 도시, 지역, 나라를 뽑고 도시, 지역, 나라에서
인사를 해요
IP 주소로 판단한 거예요
여러분이 어디 있든 안녕하세요를 할 겁니다 적어도 ISP가 서빙하는 곳에서요
그래서 뉴욕과 가까운 곳에 갈 거예요 뉴욕이 아닐 수도 있고요
아주 간단한 함수예요
잠재적으로 흥미로운 건 여기 위에 있는 장식가예요 앱으로 장식한
그러데이션 장식가죠 여기 이거요 모달 앱이요
Hello.com 함수요
이 이미지를 전달해요
그 이미지는 디비언 이미지를 뜻해요 요청이 설치된 이미지죠
그렇게 장식한다는 건 우리가 원할 경우 실행할 수 있는 그런 종류의 박스가
되기를 원한다는 거죠
그게 다예요
그래서 그건 한쪽에 두죠 Put
이게 현존하는 코드의 일부라고 상상할 수 있어요
뭔가를 해야만 했고 이젠 실행하고 싶다고 말할 수 있는 것으로
장식했어요 요청이 설치된 디비언 운영체제를 사용해서요
이 안에 있는 건 그게 다예요 네
아주 간단해요
첫째 날 점으로 돌아가죠 주피터 공책요
이제 그걸 불러오죠
이제 hello를 호출할 수 있습니다 여기 가져오기 한 hello 함수를
취할 수 있어요
hello. local이라고 입력하면 돼요
그 말은 방금 정의한 저 함수를 실행하고 싶다는 거죠 방금 이 함수를 본 거요
제 로컬 상자에서 실행하고 싶다는 거죠
이 주피터 공책에 넣고 싶어요
get get을 해 보죠
지금 실행 중이에요
뉴욕 시포트에서 인사하는 거예요
제 ISP가 거기 있나 봐요
다시 해 보죠
네, 일관성이 있네요
로컬에서 실행되고 있어요
그리고 이 사진을 보세요
완전히 똑같아요
로컬에서 원격으로 바꿨어요
그게 다예요
유일하게 변한 거죠
어떻게 되나 보죠
조금만 더 비트를 타 보죠
버지니아 애시번에서 인사드려요
완전히 다른 상태에서 실행되고 있어요 그러니 그걸 기대하시겠죠
Get it, Get it 아시겠죠?
가끔은 다르기도 해요
그나저나 여기저기서 나오는 걸 봤어요
로컬 대신 원격 호출을 하면 이 함수를 같은 코드 조각으로 호출할 수 있습니다 파이썬 코드와
같은 거죠
서버에 배포되어 그 서버에서 실행되고 있죠
정말 마법 같은 일이죠
마법 같아요 아주 간단하고 코드 몇 개를 배포하게 해주거든요
지금은 라마라는 좀 더 복잡한 패키지를 만들고 있어요
여기서 GPU 같은 게 나타나기 시작하죠
보다시피 hello 예제와 연결했어요 그래서 이게 무엇이었는지에 대한 흔적이 있었던
거죠
우선 제 앱 라마에게 전화를 걸어요
디비언 이미지도 넣는데 이번에는 토치 트랜스포머 비트, 바이트
패키지 가속도 전부 넣을 거예요
지금 저는 포옹하는 얼굴 토큰도 받고 있어요 제 방식의 비밀에서요 진작 보여 드렸어야
하는 거죠
잠시 후 Modal에서 그걸 설정하는 방법을 보여드릴게요 기밀에 도달하는 방법과 포옹하는
얼굴 토큰을 설정하는 방법도요
그렇게 하고 나면 이렇게 읽을 수 있어요
T4 GPU를 원한다고 지정하고 있어요 물론 아주 저렴한 기본이죠
여기 상속자가 있어요
이제 생성 함수가 있네요
문자열인 프롬프트를 받아 문자열을 반환하죠
힌트 형식의 예시인데요
잘 모르신다면요
이번에는 여러 곳에서 할 거예요
비트만 좀 있으면 분명해질 거예요
이 함수도 장식했어요 이미지를 전달하고 비밀을 말하고 T4 GPU를
원한다고 했죠 코드를 이용해 서버를 구성해요
이건 로컬에서 실행할 뭔가를 작성하는 함수예요
이걸 로컬에서 실행할 순 없어요 제 박스는 이런 llama 모델을
로컬에서 실행할 만한 힘이 없거든요
라마 CP 같은 것으로도 할 수 있는 방법이 있어요 익숙하신지 모르겠지만
여기 쓰여 있는 대로는 못 할 거예요 한다고 해도 아주 느릴 거고요
T4 GPU가 있는 박스에서 작업하고 싶어요 이렇게 하는 거죠
이 코드는 아주 익숙하실 거예요
여러분이 아는 구성이죠
그럼 라마를 위한 네 개의 퀀타이즈 비트를 구체적으로 설명해야겠네요
토큰라이저를 로드할 거예요 상용문서 같은 거요
모델을 로드할 거예요
그리고 프롬프트를 토큰으로 인코딩한 것도 볼 수 있는데요
그런 경고를 피하려고 주의 마스크를 씌웠어요
그리고 Model.생성기를 하죠
입력값을 통과시키죠
새 토큰 5개만 필요하고 응답은 하나만 필요하다고 하죠
그 응답을 받아들여서 해독한 다음 돌려주는 거죠
아주 간단해요
이제 그걸 시작해 실행해보죠
무슨 일이 일어나고 있어요
우선, 제가 실제로 실행한 건 뭐죠?
원격 함수를 호출했고 프롬프트에서 라마 모델로 보낸 건
삶은 미스터리예요
모두 혼자 서야 해요
이다음은 어떻게 될지 다들 아셨으면 좋겠네요
안 그러면 제가 늙었다고 느낄 거예요
하지만 이건 물론 오프닝부터 마돈나의 기도처럼 이어지죠
내 이름을 부르는 소리가 들리면 그때 부를게요
그 말을 안 하는 게 너무 힘들어요
이제 그 노래가 제 머릿속에서 오늘 하루 동안 들릴 거예요 HOLO
하지만요
네
이 노래를 영원히 마음에 담아뒀다면 미안해요 하지만 노래가 정말 중독성 있어요 Put it's go
어쨌든 지금 보이는 건 저 상자에서 일어나는 일이에요
그 자체로 수정할 수도 있어요
그리고 어디 보자 화면을 새로 고침할게요
배포된 앱이 아니에요
하루살이 앱요
바로 그거예요
잠시만요, 좀 찾아볼게요
이게 끝이군요
지금 뛰어요
단기간 앱으로 운영되는데 2분 전에 시작됐어요
클릭하면 상태가 실행 중인 걸 볼 수 있죠
또 뭐가 있나 볼게요 get it
컨테이너는 작동해요
메모리와 CPU 코어를 볼 수 있어요
T4 GPU가 보이죠 우리가 명시한 대로요
그리고 또 볼 수 있는 게 안녕하세요 이 상자에 파이가 있어요
라마도요 파이썬 파이썬의 대본 스크립트가 거기 있어요
자, 시작하죠
여기 온 김에 하나만 지적할게요 맨 위에 있는 건 비밀이에요
비밀은 물론 비밀을 설정하는 곳이죠 포옹 얼굴 토큰이에요
그러니 그렇게 하세요
지금은 클릭하지 않을 거예요 포옹 얼굴 토큰 비밀이 드러나면 안 되니까요
어쨌든 거기로 가면 됩니다 포옹하는 얼굴 토큰을 사용할 수 있는데
그 코드는 여기서 잠깐 동안 배포되는 코드예요
아직 작동하는군요
이 시점에서 이 비디오를 고수해야겠네요
제가 돌아오면 이미 성공했다고 나오네요
Get it가 끝났다는 메시지를 받았어요
그리고요
어디 보죠
네
여기요
get get을 해 보죠
내 이름을 부르는 소리가 들려요
네 개의 퀀트화된 라마의 비트조차 마돈나 노래를 완성하지 않을
수 없었죠
이 코드를 성공적으로 실행했어요
이 단기적인 서비스를 이용해 퀀타이즈한 라마 모델 라마3를 작동했어요
프롬프트를 완료하는 건 1가지 모델이죠
좋아요
돌아와서 살펴보고 모델을 배포할 시간이 될 겁니다 어떻게
하는지 지난 시간에 빌드한 소유 모델에 API를 어떻게 놓는지 보죠
잠시 후에 뵙죠