분류 전체보기 84

다양한 LLM 모델 종류와 사용 방법 (OpenAI, Anthropic, Perplexity)

LLM 모델은 사용 방법과 상황에 따라 다양한 모델을 선택할 수 있습니다. 다음은 다양한 LLM 모델의 종류와 사용방법에 대해서 알아 보겠습니다. 1. Open AI openAI에서 채팅 전용 Large Language Model(LLM)을 제공한다. 이 모델을 생성할 때 다양한 옵션 지정가능합니다. Option 1. model 또는 model_name : 적용 가능한 모델 선정하는 옵션 2. temperature : 샘플링 온도 설정 옵션. 값은 0~2 사이에서 선택 가능이고 낮은값은 출력 결과에 집중되고 높은 출력은 더 무작위하게 만듬 3. max_tokens : 생성할 토큰의 최대 개수 지정. 이 옵션은 모델이 한번에 생성할 수 있는 텍스트 길이 제어. OpenAI 모델 비교 fr..

출력 파서 [OutputParser] - JsonOutputParser

"JsonOutputParser"는 LLM의 출력 결과를 JSON의 형태로 파싱하고 반환하기 위한 파서이다. 주로 LangChain, OpenAI function calling 또는 기타 LLM 파이프라인에서 사용되며, 모델 출력이 JSON 포맷을 따르도록 유도하고, 안정적이고 프로그래밍에 친숙한 형태로 변환하는데 사용됩니다. JSON이란 ?JSON 데이터는 이름(키)과 값의 쌍으로 이루어져 있습니다. 여기서 "이름"은 문자열이고, "값"은 다양한 데이터 유형일 수 있습니다. JSON은 두 가지 기본 구조를 가집니다: - 객체: 중괄호 {}로 둘러싸인 키-값 쌍의 집합입니다. 각 키는 콜론 :을 사용하여 해당하는 값과 연결되며, 여러 키-값 쌍은 쉼표 ,로 구분됩니다. - 배열: 대괄호 []로 둘러싸..

출력 파서 (OutputParser) - PydanticOutputParser

PydanticOutputParser란 ? 언어 모델의 출력을 구조화된 정보로 변환하는데 도움을 주는 클래스이다. 이 클래스는 단순 텍스트 응답 대신 "명확하고 체계적인 형태로 필요한 정보를 제공 할 수 있다. 이클래스를 활용하면 언어 모델의 출력을 특정 데이터 모델에 맞게 변환하여 정보를 더 쉽게 처리하고 활용할 수 있다. ▶ 주요 매서드 1. get_format_instructions() : LLM에게 제공할 출력 형식을 안내하는 문자열(JSON등 포함)을 반환한다. 언어 모델이 출력해야 할 정보의 형식을 정의하는 지침 제공, 언어 모델이 출력해야할 데이터의 필드와 그 형태를 설명하는 지침을 문자열로 반환 가능, 이 지침은 언어 모델이 출력을 구조화하고 특정 데이터 모델에 맞게 변환하는데 매우 ..

출력파서(OutputParser) 란?

LangChain의 출력파서(Output Parser)는 언어 모델(LLM)의 출력을 더 유용하고 구조화된 형태로 변환하는 중요한 컴포넌트이다. 출력파서의 역할- LLM의 출력을 받아 더 적합한 형식으로 변환- 구조화된 데이터 생성에 매우 유용- LangChain 프레임워크에서 다양한 종류의 출력데이터를 파싱하고 처리 주요특징 1. 다양성 : LangChain은 많은 종류의 출력 ㅅ파서를 제공한다. 2. 스트리밍 지원 : 많은 출력 파서들이 스트리밍을 지원한다. 3. 확장성 : 최소한의 모듈부터 복잡한 모듈까지 확장 가능한 인터페이스 제공 출력파서의 이점 1. 구조화 : LLM의 자유 형식 텍스트 출력을 구조화된 데이터로 변환2. 일관성 : 출력 형식을 일관되게 유지하여 후속 처리 용이3. 유연성 ..

LangSmith로 프로젝트 추적 설정

LangSmith는 LangChain 팀에서 만든 디버깅 및 추적 툴이다.👉 LangSmith = LangChain + Debugging 플랫폼 ✅ 주요 기능LangChain에서 실행되는 Chain, LLM, Agent 등의 입출력 추적Chain 실행의 성능 로그 확인실험 및 테스트 케이스 관리Prompt tuning/테스트 시 유용체인 내부의 세부 흐름을 시각화하여 문제를 쉽게 파악 1 ) 프로젝트 추적 프로젝트 단위로 실행 카운트, Error 발생률, 토큰 사용량, 과금 정보등을 확인할 수 있다. input과 output에 대한 결과 추적 가능 및 사용 토큰과 비용까지 측정되어 확인할 수 있습니다. 2) LangSmith API Key 발급1. Setting을 클릭한다. 2 . Crea..

LangChain 문법 (invoke(), stream()) (1)

✅ invoke()란?invoke()는 LangChain의 모든 Runnable (예: LLM, Chain 등)을 한 번 호출해서 결과를 반환받는 메서드입니다.입력값 → 출력값 1번 호출await 키워드와 함께 비동기로 사용 가능가장 기본적인 실행 방식 from langchain.chat_models import ChatOpenAIllm = ChatOpenAI()response = await llm.invoke("안녕하세요!")print(response.content) ✅ stream()이란?stream()은 스트리밍 출력을 받을 수 있는 메서드입니다. 특히 Chat Model이나 LLM의 응답을 chunk 단위로 실시간 처리하고 싶을 때 사용합니다.ChatGPT처럼 단어/문장 단위로 출력되는 기능을 ..

[RAG] OpenAI API Key 발급 및 사용법 정리

최근 유행하고 있는 Chat GPT와 연계된 작업을 하기 위해서 Open AI에서 API Key를 발급받아 쉽게 사용이 가능하다.이글에서는 OpenAI API Key 발급 및 결제까지의 사용법에 대해서 설명해보고자 한다. OpenAI API 설치 및 API키 발급 OpenAI API Key를 발급받기 위해서는 우선 회원가입을 진행해야한다. 1. platform.openai.com에 들어가서 회원가입 진행한다.2. 로그인 후 왼쪽 Search를 클릭한후 billing overview를 검색하면 3. 아래와 같은 Billing 페이지로 넘어 옵니다. Billing 페이지에서 카드 정보를 등록하여 결제를 진행해야합니다. 처음 이용하시는 경우 아래와 같이 카드등록이 되어있지 않기 때문에 VISA 결제가 가능..

RAG(Retrieval-Augmented Generated) 기술이 주목 받는 이유

최근 인공지능 기술이 다양하게 발전하고 산업에서의 디지털 전환을 이끌고 있습니다. 그 중에서도 텍스트를 바탕으로 진행되는 생성형 AI가 주목을 받고 있습니다. Open AI의 GPT를 중심으로 업무의 디지털 전환이 빠르게 이루어져 많은 사람들에게 도움을 주고 있습니다. 하지만 이런 GPT기반의 생성형AI와 LLM이 지속적으로 노출되고 있는 문제로서 환각(Hallucination) : 존재하지 않은 정보를 마치 사실인 것처럼 그럴듯하게 만들어냄 , 지식의 한계 / 최신 정보 반영 불가 : 특정기간 훈련된 데이터 까지만 알고 있고 이후 정보는 모르거나 부정확함 , 출처없는 답변, 도메인 적합성 부족등과 같은 다양한 문제를 노출하고 있습니다. ✅ RAG의 등장 배경과 필요성 **Retrieval-Augm..

연합학습이란 (Federated Learning) ?

1. 연합학습 (Federated Learning) 필요성과 배경 1) 분산된 데이터 증가. 산업의 고도화와 함께 스마트 제품과 IOT 기기의 사용이 증가하면서 개인과 기관들이 소유하는 데이터의 양이 급증하고 있다. 이러한 분산된 데이터는 시간이 갈수록 점차 증가할 것으로 예상되며, 이러한 분산된 데이터는 개인 맞춤형 서비스 제공과 다양한 목적을 달성하기 ㅜ이해 여러 클라이언트와 기관 간의 데이터 통합과 공유에 중요한 역할을 한다.  이처럼 분산된 데이터의 증가는 중앙집중식 데이터 관리 방식의 한계를 드러내고 있다. 기존의 중앙집중식 방법은 데이터를 중앙에 위치, 저장함으로써 개인정보 유출 및 보안 문제를 야기할 수 있다. 이러한 문제를 해결하기 위해 연합학습환경이 제안되었다. 연합학습은 데이터의 개인 ..

하이퍼파라미터 최적화(초매개변수 최적화)

1) 하이퍼파라미터 최적화 기계학습은 주어진 데이터를 활용하여 특정 결과를 도출하고 그 결과를 반영하여 성능을 향상하는 알고리즘에 대한 연구이다. 효과적인 기계 학습 모델을 구축하려면 적절한 알고리즘을 선택하고, 초매개변수를 조정하여 최적의 모델을 찾는 과정이 필요하다. 이는 시간이 많이 소요되고 복잡한 과정이다. 기계 학습 모델에는 학습 과정에서 데이터에 의해 초기화되고 업데이트 되는 파라미터 모델의 구조를 정의하거나 학습 알고리즘을 제어하기 위해 사전에 설정되는 초매개 변수가 있다. 최적 ML 모델을 구축하려면 다양한 가능성을 탐색하고 이를 통해 최적의 초매개변수 조합을 찾는 것이 중요하다. 하이퍼파라미터 최적화는 모델의 성능을 극대화하기 위해 하이퍼파라미터 최적 조합을 찾는 과정이다. 기계학습 모델..