인공지능(19)
-
github의 llama_cpp.server에 lora 기능을 추가해달라고 요청했다!
안녕하세요. 쿠루가이입니다. `llama.cpp`를 OPENAI와 비슷하게 사용할 수 있는 `llama-cpp-python` 라고 있습니다. 최근에 gguf 파일도 추가되고 정말 좋은데요. 한가지 lora를 적용할 수 없어서 사용이 좀 꺼려지더군요. LLM을 사용하는 이유는 거의 커스터마이즈된 나만의 LLM을 갖기 위해서인데 lora가 없어서 너무 불편했습니다. 그래서 github에 아래와 같이 의뢰를 했었습니다. 그 후에 다른 유저들이 제 말을 못 알아 들었는지 llama_cpp.server가 아니라 자꾸 파이썬 코드에서 불러오는걸 사용해봐라. 모델을 병합하여 gguf만들어 그냥 사용하라라는 답변을 주더군요. 저는 llama.cpp에 lora 메뉴가 있으니까 그걸 llama_cpp.server에 적용해..
2023.09.19 -
WSL에 우바부가 설치하기
WSL 설치하기시작 → 실행 → 제어판(config 입력) → 프로그램 → Windows 기능 켜기/끄기 → Linux용 Windows 하위 시스템 체크 → 확인 Ubuntu 다운로드도스프롬프트에서 wsl 라고 입력하면, 배포판이 설치되어 있지 않다고 메시지가 나옵니다.Microsoft Windows [Version 10.0.19044.2006] (c) Microsoft Corporation. All rights reserved. C:\Users\Hyungwon>wsl Linux용 Windows 하위 시스템에 배포가 설치되어 있지 않습니다. 아래의 Microsoft Store에서 배포를 설치할 수 있습니다. https://aka.ms/wslstore 윈도우 스토어에 들어가서 ubuntu 라고 검색하고 제..
2023.08.27 -
딥러닝 기초 용어 정리( Epoch, Loss, Accuracy)
안녕하세요. 쿠루가이입니다. 오늘은 학습을 할 때 자주 나오는 용어인 Epoch, Loss, Accuracy에 대해서 간단히 정리해보겠습니다. Epoch 에폭이라고 읽고, 전체 데이터가 모두 학습한 단위를 말합니다. 즉, 1에폭은 dataset의 전체 레코드를 한번씩 학습했다는 의미입니다. 아래와 같이 `num_train_epochs = 5`와 같은 경우, 전체 dataset의 전체 레코드를 5번씩 학습했다는 의미입니다. # import transformers # # needed for gpt-neo-x tokenizer tokenizer.pad_token = tokenizer.eos_token trainer = maskTrainer( model=model, train_dataset=data["train..
2023.08.26 -
[LLM] 인공지능 챗으로 동맥경화에 대해서 상담을 받아보았습니다.
안녕하세요. 쿠루가이입니다. kurugai/llama-ko-medical-chat-7b · Hugging Face 의 모델을 가지고 건강상담을 해보았습니다. 이 모델은 kfkas/Llama-2-ko-7b-Chat 모델을 기반으로 squarelike/ko_medical_chat 의 데이터셋으로 5에폭 학습시켰습니다. 아래는 실제 건강검진에서 문제가 된 부분입니다. 이 부분을 가지고 llm과 상담을 하려고 합니다. 아래는 대화 내용입니다.아래는 의사와 환자간의 진료 기록입니다. 의사는 환자에게 병의 원인과 치료, 그리고 예방하는 방법에 대해서 알려주어야할 의무가 있습니다. 좀 길게 말해줘도 무방합니다. 환자: 최근에 건강검진을 했는데 우측 외경동맥 근위부에 약 1.9mm 두께의 비석회성 플라크가 보인다는 소..
2023.08.21 -
[LLM] 우바부가 API로 gradio 연동하기
안녕하세요. 쿠루가이입니다. 오늘은 text-generation-webui(이하 우바부가)에서 외부로 통신하는 방법에 대해서 알아보겠습니다. 컴퓨터 사양 저는 2021년 2월에 컴퓨터를 새로 맞췄습니다. 사양은 아래와 같습니다. CPU : 10세대 인텔® 코어™ i7 프로세서 - 10700KF(8 core / 16 Thread) / 수냉쿨링시스템 OS : Windows 11 Pro 64 RAM : 64GB DDR4 3200 SSD : 1TB, 2TB GPU : NVIDIA® GeForce RTX™ 3070(8GB GDDR6 전용) Power : 750W 80PLUS Platinum 그때 당시에는 LLM을 할거라는 생각을 전혀 하지 못했습니다. 그래서 QHD로 오버워치가 144Hz로 동작만 한다면 아무 문..
2023.08.17 -
임베딩 개념 이해
임베딩은 특정한 데이터 유형의 벡터 표현입니다. 임베딩은 복잡한 구조를 숫자의 벡터로 변환하여 기계가 데이터를 이해하고 처리할 수 있게 만드는 역할을 합니다. 임베딩은 마치 단어나 이미지를 특별한 방법으로 숫자로 바꾸어 주는 마법 같은 것입니다. 그러면 기계가 우리가 사용하는 단어나 그림을 이해할 수 있도록 도와주는 겁니다. 예를 들어, 우리가 고양이와 개 사진을 보면 바로 알아차릴 수 있지만, 컴퓨터는 그렇게 쉽게 이해하지 못합니다. 그래서 우리가 사진을 임베딩으로 바꾸어주면, 컴퓨터도 그림을 더 쉽게 이해할 수 있게 됩니다. 또한, 단어를 임베딩으로 바꿔주면 컴퓨터가 단어의 뜻을 알아차리기 쉬워집니다. 예를 들면, '사과'라는 단어를 임베딩으로 바꾸면, 컴퓨터는 '사과'가 과일임을 알게 될겁니다. 이..
2023.08.02