인공지능 썸네일형 리스트형 [NLP] 모델 한번 바꿀 때마다 난관... 우리 팀의 능력자(!) 분께서 또 찾아주신 모델!! EXAONE 모델을 대화문 요약으로 파인튜닝한 모델이 있어서, 이 모델로 인퍼런스 해볼라고 모델 로드하는데 자꾸 막혀서 계속 헤매다가...아 이거 어찌나 짜증나던지.. 클로드한테 물어봐도 자꾸 똑같은 말만 반복하고 access token 을 설정하라는둥, 모델 프라이빗에 있는거 아니냐는둥.. 도돌이표같은 얘기만 계속 하면서 시간을 버림ㅠ 그러다가 원래 모델인 EXAONE-3.0-7.8B-Instruct 페이지를 보다가 뒤늦게 발견했다. "We recommend to use transformers v4.41 or later."트랜스포버 버전을 최신 버전으로 업그레이드하고 액셀러레이터인가? 그거 업데이트하니까 된다..!!!하하하하 ㅠㅠㅠ이 창에서 얼마나 헤.. 더보기 학습일지 | 딥러닝과 파이토치 딥러닝 = 텐서 연산 모음파이토치는 데이터를 텐서 객체로 다루기 때문에 데이터를 텐서로 바꿔야 한다. 그리고 모델을 불러와 학습시키고 예측 결과를 내놓게 한다. 결과가 나오면 오차를 손실함수로 수치화하고, 손실 함수가 최소가 되도록 하는 최적화 알고리즘을 거치면서 모델이 최적의 파라미터를 찾아 업데이트한다. 전이학습(Pretrained Model)말 그대로 이미 한번 학습을 시켜놓은 모델. 학습한 task에 대해서 일반적인 성능을 가지고 있다. 갓 업계에 입문한 쌩신입에게 기본적인 것을 가르쳐준 단계랄까. 아무것도 모르는 사람을 처음부터 가르쳐서 전문가로 만드는 것보다 기본은 알고 있는 사람에게 좀 더 심화 지식을 가르치는 것이 수월한 것처럼, (누군가 이미 잘 만들어놓은) 프리트레인된 모델을 가져와 .. 더보기 아티클 정리 | 인공지능의 역사, 분류 그리고 발전 방향에 관한 연구 머신러닝에 대해 공부를 시작하면서 온라인 강의로는 조금 부족하다고 생각이 들었는지, 부트캠프 측에서 몇 가지 아티클과 자료를 준비해주셨다. 그리고 스스로 정리해보라며 링크를 주셨는데, 원래는 포맷이 있는 것 같은데 포맷까지 써가면서 정리하기는 넘 딱딱하고, 그냥 스스로 공부한 거 정리한다는 생각으로 내맘대로 주절주절 썰 풀듯이 써본다. 인공지능의 역사, 분류 그리고 발전 방향에 관한 연구한국전자통신학회에서 발행하는 학술지에 실린 소논문이고 저자는 조민호 교수님이다. 아래 내용은 논문 내용을 바탕으로 내 맘대로 해석하고 그걸 의식의 흐름대로 구성을 바꿈. 1. 인공지능, 대체 뭔데?인간의 지능을 흉내낸 인공적인 지능. 휴먼의 지능도 어떻게 정의하는지, 어떻게 지능이 나타나는지 알 수 없는 마당에 인공지.. 더보기 Github에 소스코드 올리기 | api-key는 환경변수로 설정 혼자 실습할 때에는 API key를 직접 코드 안에 넣는 방식으로 했는데, 깃허브에 올리거나 외부에 공개할 때에는 API 키를 노출하면 안되기 때문에 환경변수에 저장시키는 방식으로 코드를 바꿨다. 그리고 Openai 버전으로 바꿔서 깃허브에 올려봤는데, 자질구레한 실수들이 있어서 기록 1) llm.py 안에 api key를 넣었는데 OPENAI_API_KEY 를 계속 OPEN_API_KEY로 잘못 써서 인식을 못해서 계속 오류남. 이걸 모르고 계속 헛짓거리를.. ^^ from langchain_openai import ChatOpenAIimport getpassimport osdef get_api_key(): if "OPENAI_API_KEY" not in os.environ: api_.. 더보기 라마 인덱스에서 빠르고 간편하게 RAG 수행하기 "라마 인덱스 라이브러리에서도 openai를 임포트할 수 있어요."LlamaIndex 라마 인덱스가 뭔데!!LlamaIndex (또는 llama_index) 라이브러리를 말함. 대규모 언어 모델(LLM)을 사용하여 구조화되지 않은 데이터를 쉽게 처리할 수 있게 해주는 데이터 프레임워크. 문서 인덱싱, 쿼리 처리, 데이터 구조화 등의 기능을 제공. 아! 그냥 라이브러리 이름이였구나. 인덱스가 붙어서 뭔가 했네. 어쨌든 라마 인덱스를 써서 RAG도 해야하는데...from llama_index.llms.openai import OpenAIfrom llama_index.core.llms import ChatMessageclient_llama = OpenAI(model = 'gpt-3.5-turbo')messa.. 더보기 8/6 학습일지 | 파이썬에서 RAG 구현하기 오픈ai에서 api를 받아오는데 첨에 분명 무료라 했는데 계속 오류떠서 5달러 결제했다. 근데 결제하고 바로 안되고, 한참 뒤에 오류 없이 실행됨. 오늘 한 것: 파이썬으로 챗지피티 3.5랑 얘기하는데 위키피디아 문서 주고 그거 기반으로 답변받기 코드 하나하나 뜯어보자import osapi_key = " "os.environ["OPEN_API_KEY"] = api_keyos.environ.get("OPEN_API_KEY")os.environ은 환경 변수에 접근할 수 있게 해주는 매핑 객체이고, 환경 변수를 쓰면 보안이나 관리가 쉽기 때문이 쓰는 거라도 한다. (솔직히 이해 못했지만) 랭체인에서 중요한 파트는 아니니 일단 패스.OpenAI 라이브러리를 임포트 해주는 것으로 시작!from openai i.. 더보기 RAG 발전에 중요한 영향을 끼친 3가지 논문 KNN-LM (2019), REALM (2020), RAG (2020)위 세 논문들은 RAG 기술의 기초를 다지고, 발전시키며, 현재의 형태로 정립하는 데 중요한 역할을 했다. 각각의 연구가 이전 연구의 한계를 보완하고 새로운 아이디어를 제시하면서 RAG 기술은 빠르게 발전해왔는데 (...) 이 논문들에 대해서 간략하게 살펴보자! KNN-LM (2019)주요 아이디어: 언어 모델에 k-최근접 이웃(k-Nearest Neighbors) 검색을 결합했습니다.영향: 대규모 데이터셋에서 관련 정보를 검색하여 언어 모델의 성능을 향상시킬 수 있음을 보여주었습니다.의의: 검색과 생성을 결합하는 아이디어의 초기 형태를 제시했습니다.inference 시에 explicit memory 사용사용자가 질문을 하거나 모델이.. 더보기 Langchain과 RAG에 관한 찍먹 기본 지식 RAG는 언제, 어떨 때 쓰려고 만들어진 것일까?미리 준비된 지식 베이스에서 관련 정보를 찾아서 정확하고 신뢰할 수 있는 답변을 생성하고 싶을 때. 대충 RAG가 돌아가는 시나리오(RAG pipeline)1) 인공지능 관련 지식을 모아서 [지식 베이스?]에 저장해둔다. (Vector DB에 저장)2) 사용자가 질문을 한다. "인공지능에 대해서 알려줘"3) RAG : 질문을 벡터로 변환(임베딩이라고 부름)한다. (질문 처리는 RAG 시스템의 일부인 특별한 모델이나 컴포넌트가 수행.)4) RAG : 질문과 연관된 정보를 [지식 베이스?]에서 찾는다. 질문 벡터와 가장 유사한 문서 벡터를 찾아낸다. 5) RAG : 가장 관련성이 높은 부분을 추출해 하나의 컨텍스트로 만든다.6) LLM에게 넘겨준다. "사용자.. 더보기 이전 1 2 다음