게시글
질문&답변
2024.03.26
Rag 사용시 전혀 관계없는 데이터를 가져오는 이슈
안녕하세요~. 반갑습니다. 해당 경우처럼 XXX 담당자가 명확히 지정되어있는 정형데이터의 경우 순수한 Embedding을 이용한 Similarity 비교만을 사용하기보다는 metadata에 추가정보를 맵핑해서 저장하고 metadata에 저장된 정보를 key로 활용하여 필터링 할 경우에 좀더 정확한 매칭 결과를 받아올 수 있습니다. (예를 들어 Vector Store에 저장할때 각 데이터 별로 담당자를 명확히 metadata로 저장하는 것입니다.) 아래 강의 영상들과 심화 실습 - Compression & 2-Depth 구현 - 판사GPT(JudgeGPT) 심화 실습 - Compression & 2-Depth 구현 - 특허GPT(PatentGPT) 아래 SelfQueryRetriever 문서를 참조하세요. https://python.langchain.com/docs/modules/data_connection/retrievers/self_query 좋은 하루되세요. 감사합니다.
- 0
- 2
- 58
질문&답변
2024.03.23
Fine-tuning 모델 성능 지표
안녕하세요~. 반갑습니다. Fine-Tuning 결과를 정량적으로 측정하는 지표는 어떤 task를 목적으로 fine-tuning하느냐에 따라 달라집니다. 예를 들어 번역 task에 fine-tuning할 경우 번역결과에 대한 성능을 측정할때 일반적으로 사용하는 BLEU 지표가 얼마나 개선되는지 정량적으로 측정하고, Language Modeling task에 fine-tuning할 경우 Language Modeling에 대한 성능을 측정할때 일반적으로 사용하는 Perplexity 지표가 얼마나 개선되는지를 정량적으로 측정합니다. 다양한 NLP 각 task 별로 어떤 지표가 정량적 지표로 주로 활용되는지는 아래 강의 영상들을 참조하세요. GPT-2 (2019) 모델 논문 리뷰 - Experiments GPT-3 (2020) 모델 논문 리뷰 - Results 1 좋은 하루 되세요. 감사합니다.
- 0
- 2
- 65
질문&답변
2024.03.20
bert vs gpt 의 혼란스러운 점
안녕하세요~. 반갑습니다. 구글에서도 BERT 이후에도 연구를 계속해서 최근에 발표된 Gemini(제미나이), Gemini 이전에 발표된 PaLM 모델등 BERT 이외의 생성모델을 연구하여 해당 모델들을 기반으로 채팅서비스를 만들었습니다. OpenAI에서는 말씀해주신대로 GPT를 기반으로 채팅서비스를 만들었습니다. 또한 위 모델들이 채팅에 대한 답변을 생성하는 기반 딥러닝 모델이라는 사실이 알려져 있을뿐 실제 채팅서비스에 딥러닝 기법외에 추가적인 별도의 엔지니어링 작업이 얼마나 들어가 있는지는 정확히는 알수없습니다. 좋은 하루되세요. 감사합니다.
- 0
- 2
- 46
질문&답변
2024.03.03
chromadb 용량
안녕하세요~. 반갑습니다. 말씀해주신 상황만으로는 정확히 어떤 상황이신지 파악하기 힘들지만 Embedding dimension이 어떤 크기인 임베딩 모델을 사용하느냐에 따라 용량이 달라질 수 있습니다. 용량을 줄이고 싶으시다면 Embedding dimension이 더 작은 임베딩 모델을 테스트해보시면 좋을 것 같습니다. 좋은 하루되세요. 감사합니다.
- 0
- 2
- 82
질문&답변
2024.02.25
RAG에서 Generator으로 어떤 데이터가 들어가는지 볼 수 있는 방법이 있나요?
안녕하세요~. 반갑습니다. https://www.langchain.com/langsmith 위 사이트에서 LangSmith라는 서비스를 신청하시고 내 LangSmith API 키를 아래와 같이 설정하시면 ( https://python.langchain.com/docs/use_cases/question_answering/quickstart#langsmith 를 참조하세요.) os.environ["LANGCHAIN_TRACING_V2"] = "true" os.environ["LANGCHAIN_API_KEY"] = getpass.getpass() Retriever가 실제 Generator가 보내는 데이터가 무엇인지 확인하실 수 있습니다. 다만 제가 예전에 신청할때는 베타버전이라 신청후 베타테스터에 선정되어야만 기능을 사용하고 API 키를 발급받을 수 있었는데 지금은 정식출시 된것인지 아직 베타버전인지는 잘 모르겠습니다. 아직도 베타버전이라면 베타테스터 신청을 진행하신후 승인이 날때까지 기다리신 다음에 베타테스터로 승인을 받으신후 사용하실 수 있습니다. 좋은 하루되세요. 감사합니다.
- 0
- 1
- 86
질문&답변
2024.02.25
RAG 실습 강의에서 template 문구 관련해 질문이 있습니다.
안녕하세요~. 반갑습니다. 아래 AI 인턴이 답변해준 내용을 참고하시면 될 것 같습니다. 해당 부분은 모델이 답변 생성을 조금더 잘하도록 도와주는 역할을 한다고 생각하시면 될 것 같습니다. 해당 부분을 삭제하고 질문: {question}""" 까지만 끊어서 사용해도 큰 문제는 없을 것입니다. 좋은 하루되세요. 감사합니다.
- 0
- 2
- 77
질문&답변
2024.02.25
RAG의 데이터 소스로 RDB 사용 시 어떤 로더를 사용해야 하나요?
안녕하세요~. 반갑습니다. 데이터 소스로 RDB를 사용하고 싶은 경우 어떤 로더를 사용해 연동을 하나요?? DB와 직접 연동은 힘들고 해당하는 데이터를 파일도 별도로 추출하여 사용해야 할까요?? 구글링하여도 벡터 디비를 사용하는 방식만 나와 답답해서 질문 드립니다 ㅠㅠ -> 랭체인에서 Vector store로 지원하는 전체 목록은 아래 링크에서 확인하실 수 있습니다. https://python.langchain.com/docs/integrations/vectorstores 현재 Vector Store로 RDB에 직접 연동하는 기능은 제공하지 않는 것으로 보이며 그나마 RDB와 유사한 형태로 연동해서 사용하시려면 SQLite-VSS를 사용하시는게 좋아보입니다. https://python.langchain.com/docs/integrations/vectorstores/sqlitevss 2. langchain에서 지원하는 로더 대신에 사용하는 외부 모듈이 존재할까요?? aws와 같은 퍼블릭 클라우드의 s3나 엘라스틱 서치를 데이터 소스로 하여 사용하고 싶은 경우는 어떻게 설정하는 것이 좋을지 문의 드립니다. -> 랭체인에서 지원하는 전체 도큐먼트 로더 목록은 아래 링크에서 확인하실 수 있습니다. https://python.langchain.com/docs/integrations/document_loaders S3에 있는 파일이나 디렉토리를 읽어올 수 있습니다. https://python.langchain.com/docs/integrations/document_loaders/aws_s3_file https://python.langchain.com/docs/integrations/document_loaders/aws_s3_directory 3. 보통 S3 버킷을 데이터 소스로 하여 정의할 때 s3를 호스팅하여 urlLoader를 이용해 사용하는 방식을 많이 차용하나요? -> 이 부분은 개별 어플리케이션 구현을 어떻게하느냐 따라 다른 문제이므로 상황에 맞게 적절하게 구성해서 사용하시면 될 것 같습니다. 4. aws의 ElasticSearch를 검색 시스템으로 사용하고 싶은데, 참고할 만한 힌트가 있을까요?... 해당 모듈을 바로 직접적으로 import해서 vectorDB대신 사용하는 것인지, 혹은 ES를 데이터 소스로하여 데이터롤 로드해서 vectorDB에 넣고 사용하는 것인지 감이 잘 잡히지 않습니다 ㅠ -> 이부분은 제가 ElasticSearch에 대한 지식이 없어서 정확히 답변드리긴 힘들 것 같습니다. 아래 문서에서 ElasticSearch와 연동하는 템플릿 내용을 다루고 있는 것 같습니다. https://python.langchain.com/docs/templates/rag-elasticsearch https://python.langchain.com/docs/integrations/vectorstores/elasticsearch 좋은 하루되세요. 감사합니다.
- 0
- 2
- 144
질문&답변
2024.02.17
Fine-tuning 문의
안녕하세요~. 반갑습니다. 제 데이터로 Fine-tuning 을 하면 기존 학습 데이터는 사라지는 건가요? -> Fine-Tuning 시에 사용한 데이터가 충분하지 않다면 여러번 Fine-Tuning을 진행할시 이전에 학습한 지식이 사라질 수 있습니다. 이를 보통 Catastrophic Forgetting이라는 용어로 부릅니다. 하지만 충분한 데이터로 학습을 진행하면 Catastrophic Forgetting을 완화할 수 있습니다. 이전에 학습한 지식을 잊어버리지 않거나 잊어버리는 정도는 상황마다 다릅니다. Fine-tuning 한 데이터셋은 어디에 저장되나요? 파라미터 값만 저장되고 데이터셋은 따로 저장이 되는 것이 아닌가요? -> 이 부분은 무슨 말씀이신지 정확히 이해하지 못했습니다. Fine-Tuning 한 데이터셋은 따로 저장되지 않습니다. 좋은 하루되세요. 감사합니다.
- 0
- 2
- 149
질문&답변
2024.02.15
fine-tuning 관련 질문
안녕하세요~. 반갑습니다. 먼저 강의를 잘 보고 계시다니 기쁘네요^^. llama2 fine-tuning 시 label이 붙은 데이터에 대한 fine-tuning을 하는 내용만 있는데 (supervised learning) label이 없는 text 데이터에 대해 unsupervised learning 방식으로 fine-tuning 하는 방법이 있을까요? -> autotrain llm 실행시에 trainer를 sft(Supervised Fine-Tuning의 약자입니다.)으로 설정하는 옵션을 끄고 학습하면 Unsupervised Learning 형태로 학습을 진행할 수 있습니다. 즉, 원래 아래와 같이 학습하던 학습 명령어를 !autotrain llm --train \ --project-name "llama2-korquad-finetuning-da" \ --model "TinyPixel/Llama-2-7B-bf16-sharded" \ --data-path "korquad_prompt_da" \ --text-column "text" \ --peft \ --quantization "int4" \ --lr 2e-4 \ --batch-size 8 \ --epochs 40 \ --trainer sft \ --model_max_length 256 아래와 같이 변경해서 학습시키시면 됩니다.(--trainer sft 제거) !autotrain llm --train \ --project-name "llama2-korquad-finetuning-da" \ --model "TinyPixel/Llama-2-7B-bf16-sharded" \ --data-path "korquad_prompt_da" \ --text-column "text" \ --peft \ --quantization "int4" \ --lr 2e-4 \ --batch-size 8 \ --epochs 40 \ --model_max_length 256 또한 fine-tuning 이후 checkpoint를 기존 pretrained LLM에 통합해서 나만의 LLM을 생성하는 방법에 대해서도 궁금합니다. -> 이 부분은 무슨 말씀이신지 정확히 이해하지 못했습니다. fine-tuning된 checkpoint 자체가 pretrained LLM을 기반으로 새로운 지식을 추가한 나만의 LLM이라고 생각하시면 됩니다. 로보카압투 님도 새해 복 많이 받으세요. 좋은 하루되세요. 감사합니다.
- 0
- 2
- 112
질문&답변
2024.02.12
db.delete_collection() db가 정의되어 있지 않아 문의드립니다.
안녕하세요~. 반갑습니다. 해당 강의 영상에서는 sentence-transformers/all-mpnet-base-v2 임베딩 모델로 db를 한번 생성하고 실습을 진행한뒤 셀의 위쪽 부분으로 다시 올라온뒤에 BAAI/bge-large-en-v1.5, jhgan/ko-sroberta-multitask 임베딩 모델로 기존 db를 삭제후 다시 db를 생성하는 형태로 실습을 진행하였습니다. 강의 영상과 다르게 1가지 모델로만 순차적으로 아래로 셀을 내려가면서 실행하신다면 db를 굳이 삭제하실 필요가 없습니다. 좋은 하루되세요. 감사합니다.
- 0
- 1
- 61