인공지능(15)
-
axolotl 훈련한 결과와 일반 코드로 훈련한 결과가 다르다.
알파카 형식의 데이터셋을 훈련 방법은 코드 베이스로 쥬피터 노트북으로 훈련하는 방법과 아홀로틀 훈련하는 방법이 있습니다. 이브이를 만든 야놀자에서도 아홀로틀을 사용할 정도로 쓸만한 훈련 툴이라고 생각이 되는데 어째서인지 5에폭 훈련을 시켰는데도 불구하고 데이터셋(약 700항목) 내용을 전혀 못 뱉어내는 결과가 나왔습니다. 이미 이브이 기반으로 쿠루가이 모델을 이걸로 훈련 시켰는데 뭥미(?)!!!! 몇 번을 해봐도 동일한 결과가 나왔습니다. 뭐가 문제지? 혹시나 하는 마음에 코드베이스로 5에폭 훈련 시켜보았습니다. 결과를 봤는데....아주 잘 훈련이 된것을 확인 할 수 있었습니다. 뭐지...똑같은 로라 하이퍼파라미터로 훈련했는데 결과가 전혀 다른건 도저히 이해할 수 없는 노릇이였습니다. 아홀로틀 전처리 하..
2024.04.01 -
RTX 8000으로 Axolotl 훈련 시 꼭 변경해야되는 설정
지난번 Axolotl로 Lora 파인튜닝을 처음으로 진행했었습니다. 베이스 모델은 'yanolja/EEVE-Korean-10.8B-v1.0'로 해서 'maywell/kiqu_samples' 데이터셋으로 학습했습니다. 하지만 훈련하기 까지 많은 어려움이 있었는데요. RTX 8000 그래픽카드때문에 발생한 문제, 그리고 데이터셋 자체가 너무 적어서 발생한 문제가 있어서 그 해결방법을 기록해두려고 합니다. 저는 AI 전문가가 아니라 틀린정보일수도 있으니 알아서 필터링 해주십시오.ㅠㅠ 1. 연산 방법 bf16: false # 기본값 : true fp16: true # RTX 8000은 좀 오래된 기종이라 fp16만 지원함. tf32: false bf16는 최근에 나온 방식으로 RTX8000같은 구형기기에서는 동..
2024.03.09 -
axolotl 훈련 중 정보 해석하기
10.7B 모델을 알파카 포맷으로 1에폭 진행중입니다. lora로 돌리는데 RAM은 37.5GB, VRAM은 33.9GB정도 먹습니다. VRAM은 초기에 30GB였는데 데이터가 쌓이는지 소폭 증가했습니다. 워낙 데이터셋이 큰지라 시간이 많이 걸리는데 훈련 중간에 loss, grad_norm 등 여러 외계어가 보이는데요. 이것에 대한 내용을 chatgpt에게 묻고 어떤 의미인지 알려달라고 했습니다. ■ 손실 함수 값 (Loss): 손실 함수의 값이 감소하고 있는지 확인해야 합니다. 제공된 정보에서는 'loss' 값이 감소하는 경향을 보이고 있습니다. 이는 훈련이 모델을 더 정확하게 만들고 있는 것을 나타낼 수 있습니다. 손실 감소 확인하기 (Loss Decrease): 손실이 완만하게 감소하는 것은 모델이..
2024.03.02 -
speculative decoding에대해서
speculative decoding(Assisted Generation, 보조 생성) 자연어 생성 모델의 레이턴시 문제를 해결하기 위한 새로운 디코딩 방법인 "보조 생성(assisted generation)"에 대해서 알아보겠습니다. 자연어 생성은 기본적으로 모델의 순방향 전파(forward pass) 과정을 반복하여 이루어지는데, 이 과정에서 가장 시간이 많이 소요됩니다. 이러한 레이턴시(지연) 문제를 해결하기 위해 보조 생성 방법을 도입하여, 기존의 모델을 보조하여 더 빠르고 효율적인 텍스트 생성을 가능케 합니다. 기존의 자연어 생성 과정에서는 모델이 다음 토큰의 확률 분포를 예측하는 과정에서 레이턴시 문제가 발생합니다. 이 과정은 주로 모델의 순방향 전파 연산에 의해 지배되며, 특히 메모리 대역폭..
2024.02.26 -
우바부가가 OPENAI 형식으로 통신이 가능하네요.
안녕하세요. 쿠루가이입니다. 최근에 RTX8000이라는 그래픽카드를 사서 이것저것 돌리는 맛으로 하루하루를 살고 있는데요. 우바부가를 최신버전으로 설치했더니 extensions에 openai 가 있더라고요. 오늘은 python 코드로 우바부가와 통신해서 마치 openai가 대답하는것처럼 코드를 짜는걸 소개해볼까합니다. Boolean command-line flags에 api를 체크하고 위의 openai를 체크한 다음 [Apply flags/extensions and restart]를 누르면 활성화 됩니다. 웹브라우저 주소창에서 'http://127.0.0.1:5000/v1' 를 입력하고 아래와 같이 출력되면 설정 성공입니다. 그리고 아래는 OPENAI 스타일 파이썬 코드인데 api_base를 'http:..
2024.02.06 -
RTX 8000를 사용해 LLM을 찍먹해보았습니다.
안녕하세요. 쿠루가이입니다. 오늘은 RTX 8000 언박싱 및 설치기...그리고 간단히 성능 테스트를 해보도록 하겠습니다. 구입 동기LLM이라는것을 안지 거의 1년이 다 되어 갑니다. 3년전에 나름 고사양PC로 샀었는데 LLM을 알고 나서는 완전 저사양 취급을 당합니다.ㅠㅠ 그것은 바로 그래픽 카드때문인데요. LLM을 구동하기 위해서는 VRAM이라는 메모리가 매우~~~ 커야합니다. 구동할 수 있는 LLM은 파라미터수에 따라 다른데요. 제가 가진 카드는 VRAM이 8GB이므로 기껏해봐야 6B 정도 LLM 구동하는게 전부입니다. 이것도 4비트 양자화 해야 겨우 돌릴수 있습니다.13B, 30B, 65B 같은 파라미터가 훨씬 많은 모델들은 도대체 어떤 성능을 가지고 있는지 궁금해하고 있었습니다. 아마 이런것들을..
2024.01.27