Deep Learning/NLP 8

RAFT(Retrieval Augemented Fine tuning)에서 어떤 식으로 Fine tuning을 해야할까요?

지난 포스트에서, RAG을 할 바에야 RAFT를 하는 것이 낫다는 결론을 내면서 끝을 냈습니다. 하지만 실제로 어떤 식으로 Fine-tuning 을 해야되는 지에 대해서는 알아보지 않았는데요, 이번 포스트에서는 어떤식으로 Fine-tuning을 하는지에 대해서 실질적인 예시를 가져와서 알아보도록 하겠습니다.   위의 example은 실제 training 에 사용되는 데이터를 가지고 온 것입니다.  이를 활용하면, 실제 finetune 하는게 그렇게 어렵지 않을 것 같습니다. 하지만 확실히, 그냥 finetuning 하는것보다는 훨씬 공수가 많이 드는 작업이긴 할 것 같습니다. 실제 가져와야되는 데이터들이 많으니깐 말이죠. 그리고 실제 context에서 일일히 참조가 되는 정보를 뽑아서 제공해줘야되기도 하..

Deep Learning/NLP 2024.07.17

RAG의 새로운 대안 .. RAFT(RAG 할바에야 RAFT!)

요즘 RAG(Retrieval Augmented Generation)를 모르는 사람이 없을 정도로 RAG가 대세로 떠오르고 있습니다. RAG를 모르는 사람들을 위해서 간단하게 설명하자면, RAG란, Base Document가 있고, 거기를 참고해서 Q&A를 하게 만드는 것을 말합니다. Prompt Engineering 을 어떻게 하느냐에 따라 물론 달라지겠지만, Hallucination을 방지하기 위해서 많이 씁니다. 하지만 단점으로는, Base model의 성능에 너무 많은 의존을 하게 되고, 그러다 보니 Foundation 모델의 성능이 떨어지게 되면 성능의 퀄리티가 떨어지는 단점이 있습니다. Foundation model 의 성능에 의존하다 보니, 가장 좋은 모델 (가령, GPT 4)를 쓸 수 밖에..

Deep Learning/NLP 2024.07.16

RAG란? 그리고 Langchain 을 이용한 구현까지

RAG란, Retrieval-Augmented Generation의 약자로, retriever(검색기) 파트와 generator(생성기) 파트로 나눠져 있습니다. retriever는 관련 정보를 Database에서 검색하고, 생성기는 이 정보를 사용하여서 최종 응답을 생성합니다. 관련 링크 : https://python.langchain.com/docs/use_cases/question_answering/ Q&A with RAG | 🦜️🔗 Langchain Overview python.langchain.com Indexing 이후에, (load -> split -> store)이후에, Vector Database 또는 Embedding model 에 저장한 후에, Retrieval 과 Generation..

Deep Learning/NLP 2024.01.23

Jetson 에서 LLAMA2 돌리기!

결론부터 말하면, 돌리기는 실패했습니다. 하지만 llama.cpp를 make하는데까지는 성공하고, 또 어떤 노력으로 돌리려고 했는지의 과정을 설명하려고 합니다. 사용 device : Nvidia Jetson Xavier NX Developer cat /proc/device-tree/model 그 전에 llama2를 로컬에서 돌리는 방법의 포스팅을 참고해서, https://walkaroundthedevelop.tistory.com/166 맥북 실리콘에서 LLAMA2 로컬에서 돌리는 방법입니다. reference : https://www.youtube.com/watch?v=TsVZJbnnaSs Repos and models 1. Request access: https://ai.meta.com/resource..

Deep Learning/NLP 2023.07.28

LLAMA2. 과연 엄청난 혁신일까?

LLAMA 모델이 공개(또는 유출?) 되면서 한번 파란이 일었었는데, 생각보단..? 별로 우리의 삶에 영향이 없었던 것으로 생각됩니다.그 이유로는, 아마 훨씬 더 좋은 모델인 GPT3, GPT3.5, GPT4 가 무료 또는 적은 비용으로 사용이 가능하기 때문이라고 생각됩니다. 게다가, LLAMA 초기 모델의 경우 모델을 구하는것도 상당히 어려웠어서, 더 개발하기가 힘든 부분이 있었습니다. 하지만 이번 LLAMA2 같은 경우, 메타에서 작정하고 내놓은 느낌입니다. 그럼 LLAMA 1에 비해서 어떤 점이 달라졌는지 살펴볼까요?? context size가 커진 것, 훈련에 사용된 데이터가 40% 늘어난 점, 상업적 사용이 가능한 점 이외에, 가장 중요한 점은, Fine-tune할 수 있는 Chat versio..

Deep Learning/NLP 2023.07.24

맥북 실리콘에서 LLAMA2 로컬에서 돌리는 방법입니다.

reference : https://www.youtube.com/watch?v=TsVZJbnnaSs Repos and models 1. Request access: https://ai.meta.com/resources/models-and-libraries/llama-downloads/ 2. Clone: https://github.com/facebookresearch/llama 3. Clone: https://github.com/ggerganov/llama.cpp 위 두 개의 git repository를 클론하고 1번 url에서 llama2 model을 받습니다. llama2 모델은 (7B, 13B, 70B, 7B-chat, 13B-chat, 70B-chat) 6가지 종류 중 하나입니다. 7B 모델 기준 ..

Deep Learning/NLP 2023.07.24

로컬에서 LLM을 돌려봅시다.. (2) 장비를 맞춰봅시다

요즘 NLP를 하고 있는데, 진입장벽이 많이 높다는 생각이 듭니다. 특히 LLM 쪽은, 하드웨어 진입장벽 때문에라도 보통 사람들이 쉽게 접근하기 어렵다는 생각이 많이 듭니다. LLM의 시대를 연 ChatGPT의 경우에는.. 너무 높은 사양을 요구해서 개인이 실질적으로 하기는 힘들지만, 새로운 LLAMA의 경우에는, 특히 낮은 사양의 경우에는 충분히 인퍼런스 할만하다고 생각이 드는게 사실입니다. 시작하기 전에, 이 포스팅을 위해 참고를 많이 한 블로그를 소개하겠습니다. reference : https://timdettmers.com/2023/01/30/which-gpu-for-deep-learning/ The Best GPUs for Deep Learning in 2023 — An In-depth Anal..

Deep Learning/NLP 2023.06.01

로컬에서 LLM을 돌려봅시다.. (1) LAMMA 그리고 그 이후

요즘 LLM이 엄청 핫합니다. 페이스북에서 LAMMA 모델을 유출? 또는 공개를 한 이후, 또 ChatGPT의 막대한 성공 이후에 ChatGPT까지는 아니더라도 적은 컴퓨팅 파워로 어느정도의 성능을 원하는 사람들이 많아지고 있습니다. 앞으로 이런 사람들이 많은 만큼, 더 작은 모델들을 위한 연구가 계속 진행될 것으로 생각됩니다. 작게나마 현재 LLAMA(Large Language Model Meta AI)를 비롯해서 현재 어떻게 되어가고 있는지를 정리해 보도록 하겠습니다. 1. LLAMA 메타 (구 페이스북)에서 만든 작은 언어 모델. Open Source 로 만들었지만 실제로 weight을 다운받으려면 메타에 waitlist을 등록해야 됩니다. 65B, 33B, 13B, 7B 네 가지 정도의 모델이 있..

Deep Learning/NLP 2023.05.17