AI * ML 13

LGCNS GoogleCloud LLM Hackathon 후기

AI의 발전과정 초거대 AI > 생성형 AI > 다양한 형태의 데이터를 학습하는 AI = Multimodal AI 거짓정보생성(Hallucination) 실제로 사실과 다르거나 존재하지 않는 정보를 생성하는 것 → 왜 일어나는지? - 불충분한 학습 데이터 : 생성형 AI는 특정기간 까지의 인터넷 , 책, 신문 기사 등에 서 수집된 대량의 텍스트를 학습 - 질문의 맥락 이해 부족 : 생성형 ai가 질문을 제대로 이해하지 못해서 엉뚱한 답변을 생성 - 생성형 AI의 본질은 ' 다음 단어 예측' : 지식을 학습하는 것이 아닌 데이터와 통계를 통해 다음단어를 예측합니다. →  어떻게 해결하나? - RAG : 검색증가 생성 - RLHF : 인간피드백기반 강화학습 RAG : Retrieval Augmented Ge..

AI * ML 2024.07.07

LangChain 기본 - 검색기(Retriever)

검색기(Retriever) 란?검색기(Retriever) 단계는 Retrieval-Augmented Generation(RAG) 시스템의 다섯 번째 단계로, 저장된 벡터 데이터베이스에서 사용자의 질문과 관련된 문서를 검색하는 과정입니다. 이 단계는 사용자 질문에 가장 적합한 정보를 신속하게 찾아내는 것이 목표이며, RAG 시스템의 전반적인 성능과 직결되는 매우 중요한 과정입니다.검색기의 필요성- 정확한 정보 제공: 검색기는 사용자의 질문과 가장 관련성 높은 정보를 검색하여, 시스템이 정확하고 유용한 답변을 생성할 수 있도록 합니다. 이 과정이 효과적으로 이루어지지 않으면, 결과적으로 제공되는 답변의 품질이 떨어질 수 있습니다.- 응답 시간 단축: 효율적인 검색 알고리즘을 사용하여 데이터베이스에서 적절한 ..

AI * ML 2024.07.03

LangChain 기본 - 임베딩(Embedding), 벡터저장소(VectorStore)

임베딩(Embedding)이란?임베딩은 Retrieval-Augmented Generation(RAG) 시스템의 세 번째 단계로, 문서분할 단계에서 생성된 문서 단위들을 기계가 이해할 수 있는 수치적 형태로 변환하는 과정입니다. 이 단계는 RAG 시스템의 핵심적인 부분 중 하나로, 문서의 의미를 벡터(숫자의 배열) 형태로 표현함으로써, 사용자가 입력한 질문(Query) 에 대하여 DB 에 저장한 문서 조각/단락(Chunk) 을 검색하여 가져올 때 유사도 계산시 활용될 수 있습니다. 임베딩의 필요성- 의미 이해 : 자연 언어는 매우 복잡하고 다양한 의미를 내포하고 있습니다. 임베딩을 통해 이러한 텍스트를 정량화된 형태로 변환함으로써, 컴퓨터가 문서의 내용과 의미를 더 잘 이해하고 처리할 수 있습니다.- 정..

AI * ML 2024.07.03

LangChain 기본 - 체인(Chains)

하나 이상의 LLM 구성요소 간의 논리적 연결인 Chain은 LangChain의 기능의 주축입니다. Chains은 필요성 및 관련된 LLM의 특징에 따라 단순한 것부터 복잡한 것까지 다양할 수 있습니다. 체인(Chains) 생성 단계는 이전의 LLM과정을 모두 하나로 묶어 하나의 RAG 파이프라인으로 조립하여 완성하는 단계 입니다. 다음과 같은 Chains의 종류가 있습니다.- Structured Output Chain PromptTemplate, LLM, OutputParser를 연결한 LLMChain과  - ConversationChain ChatOpenAI 클래스를 사용하여 대화형 AI 모델의 인스턴스를 생성하고, 이를 통해 사용자와의 대화를 처리할 수 있습니다.  - SimpleSequential..

AI * ML 2024.07.03

LangChain 기본 - RAG에 대해

1. RAG (Retrieval-Augmented Generation) 란?RAG(Retrieval-Augmented Generation) 기법은 기존의 대규모 언어 모델(LLM)을 확장하여, 주어진 컨텍스트나 질문에 대해 더욱 정확하고 풍부한 정보를 제공하는 방법입니다. 모델이 학습 데이터에 포함되지 않은 외부 데이터를 실시간으로 검색(retrieval)하고, 이를 바탕으로 답변을 생성(generation)하는 과정을 포함합니다. 특히 환각(생성된 내용이 사실이 아닌 것으로 오인되는 현상)을 방지하고, 모델이 최신 정보를 반영하거나 더 넓은 지식을 활용할 수 있게 합니다. 2. RAG 모델의 기본 구조검색 단계(Retrieval Phase): 사용자의 질문이나 컨텍스트를 입력으로 받아서, 이와 관련된 ..

AI * ML 2024.06.30

LangChain 기본 - LLM 체인의 구성 요소

1. 정의프롬프트(Prompt): 사용자 또는 시스템에서 제공하는 입력으로, LLM에게 특정 작업을 수행하도록 요청하는 지시문입니다. 프롬프트는 질문, 명령, 문장 시작 부분 등 다양한 형태를 취할 수 있으며, LLM의 응답을 유도하는 데 중요한 역할을 합니다. LLM(Large Language Model): GPT, Gemini 등 대규모 언어 모델로, 대량의 텍스트 데이터에서 학습하여 언어를 이해하고 생성할 수 있는 인공지능 시스템입니다. LLM은 프롬프트를 바탕으로 적절한 응답을 생성하거나, 주어진 작업을 수행하는 데 사용됩니다.2. 일반적인 작동 방식프롬프트 생성: 사용자의 요구 사항이나 특정 작업을 정의하는 프롬프트를 생성합니다. 이 프롬프트는 LLM에게 전달되기 전에, 작업의 목적과 맥락을 명..

AI * ML 2024.06.30

LangChain 시작하기 - Agent에 대해서

우리는 지금까지 각 단계를 사전에 인지하고 있는 체인의 샘플을 만들었습니다. 마지막으로 만들 것은 Agent로, LLM이 어떤 Step을 취할지 결정합니다. 참고: 이 예에서는 로컬 모델이 아직 충분히 신뢰할 수 없기 때문에 OpenAI 모델을 사용하여 Agent를 만드는 방법만 보여줍니다. Agent를 빌드할 때 가장 먼저 해야 할 일 중 하나는 액세스할 수 있는 도구를 결정하는 것입니다. 이 예에서는 Agent에게 다음 두 가지 도구에 대한 액세스 권한을 부여합니다. 1. 방금 만든 Retriever입니다. 이렇게 하면 질문에 쉽게 답할 수 있습니다 2. 검색 Tool을 사용합니다. 이렇게 하면 최신 정보가 필요한 질문에 쉽게 답변할 수 있습니다. 우선 1번에 대한 실습을 시작합니다. from lan..

AI * ML 2024.06.29

LangChain 시작하기 - 대화내용을 Context로 가지는 Retriever 설정

이전 포스팅에서 단순 INPUT을 받아 답변을 받는 실습을 하였습니다.https://armyost.tistory.com/488 LangChain 시작하기 - Retrieval 를 통한 컨텍스트 정의하기Retrieval Chain어떤 특정한 질문에 올바르게 대답하려면 LLM에 추가 컨텍스트를 제공해야 합니다. 추가적인 탐색을 통해 이를 수행할 수 있습니다. 이때 Retrieval을 쓰며 이는 LLM에 직접 전달하기에armyost.tistory.com 기존 샘플의 Prompt에 아래의 방법을 덮어써봅시다. 이번에는 대화내용을 Context로 가질 수 있도록 하는 Retriever설정에 대한 내용입니다.  Prompt 설정retriever을 업데이트하기 위해 새 chain을 생성합니다. 이 chain은 가장 ..

AI * ML 2024.06.23

LangChain 시작하기 - Retrieval 를 통한 컨텍스트 정의하기

Retrieval Chain어떤 특정한 질문에 올바르게 대답하려면 LLM에 추가 컨텍스트를 제공해야 합니다. 추가적인 탐색을 통해 이를 수행할 수 있습니다. 이때 Retrieval을 쓰며 이는 LLM에 직접 전달하기에는 데이터가 너무 많은 경우에 유용합니다. 그런 다음 검색기를 사용하여 가장 관련성이 높은 부분만 가져와서 전달할 수 있습니다. 이 과정에서 우리는 Retriever로부터 관련 문서를 조회한 후 이를 프롬프트에 전달합니다. Retriever 는 SQL 테이블, 인터넷 등 무엇이든 지원될 수 있지만 이 경우 Vector Store를 채워 이를 Retriever 로 사용하겠습니다.  $ pip install langchain-community$ pip install beautifulsoup4 f..

AI * ML 2024.06.21