목차
728x90
1.LangChain
LangChain은 자연어 처리(NLP) 작업을 위해 설계된 오픈 소스 프레임워크다.
다양한 언어 모델과 데이터 소스를 연결하여 직관적이고 유연한 작업 흐름을 제공하는 데 사용한다.
Python, JavaScript 에서 사용가능하다.

2.LLM (대규모 언어 모델, Large Language Model)
수십억 개의 매개변수를 기반으로 학습된 자연어 처리 모델로, 문맥을 이해하고, 다양한 작업(질문 응답, 요약, 생성 등)을 수행할 수 있는 핵심 컴포넌트
(GPT-3, GPT-4, BERT)
3.체인(Chain)
여러 단계를 체계적으로 연결하여 작업을 수행하는 구조.
입력 데이터를 처리하는 일련의 과정을 정의하며, 체인을 구성함으로써 복잡한 문제를 단순화하고 반복 가능하게 함.
ex)"기사를 요약하고, 관련 주제를 검색한 뒤 결과를 번역해줘."의 체인
- 문서 요약 단계: LLM이 입력된 기사를 핵심 문장으로 요약.
- 관련 정보 검색 단계: 검색기를 통해 추가 데이터를 수집.
- 번역 단계: 결과를 사용자가 요청한 언어로 번역.
4.에이전트(Agent)
정적 체인과 달리 동적으로 실행 흐름을 결정하는 LangChain의 구성 요소
작업 중에 적합한 도구(검색기, 계산기 등)를 선택하고, 해당 도구와 상호작용하며 의사결정을 내림.
ex)서울의 날씨를 알려줘
- 에이전트가 날씨 API(도구)를 호출하여 서울의 날씨 데이터를 가져옴.
- "맑은 날씨이므로 한강에서 자전거 타기를 추천합니다."라는 답변 생성.
5.도구(Tool)
LangChain 에이전트가 특정 작업을 수행하기 위해 사용하는 외부 API나 내부 함수. 검색, 계산, 데이터 분석 등과 같은 기능을 제공하며, 에이전트의 작업 수행을 돕는 핵심 구성 요소
(검색 도구, 계산도구, 번역도구)
6.프롬프트(Prompt)
LLM에 제공되는 입력 텍스트로, 작업의 맥락과 방향을 설정. 프롬프트의 설계에 따라 LLM의 출력 품질과 적합성이 결정됨. LangChain은 정적 프롬프트와 동적 프롬프트를 모두 지원.
6-1.정적 프롬프트(Static Prompt)
정해진 형태로 미리 작성된 텍스트를 LLM에 입력하는 방식으로,사용자의 요청에 상관없이 항상 동일한 내용을 전달.
특정 작업에 대해 반복적으로 동일한 결과를 생성할 때 사용.
"주어진 텍스트를 세 문장으로 요약하시오: {텍스트}"
6-2.동적 프롬프트(Dynamic Prompt)
사용자의 입력이나 외부 데이터에 따라 실시간으로 프롬프트의 내용이 바뀌는 방식.
더 복잡하고 상황에 맞는 작업을 수행할 때 적합
"사용자가 질문한 내용 '{사용자 질문}'을 바탕으로 관련 정보를 검색하여 답변하시오."
"현재 시간은 {현재 시간}입니다. 날씨는 {API 결과}이며, 이에 맞는 활동을 추천하시오."
7.메모리(Memory)
LangChain에서 대화나 작업의 맥락을 저장하는 기능.
작업 중 이전 입력과 출력을 기억하여 일관성 있는 대화를 유지하고, 필요한 경우 장기적인 컨텍스트를 제공
8.벡터 스토어(Vector Store)
문서나 데이터를 벡터 형태로 저장하고, 입력 쿼리와의 유사도를 계산하여 관련 데이터를 검색하는 데이터베이스.
728x90
'AI' 카테고리의 다른 글
[AI] Anaconda 가상환경 사용 (0) | 2025.01.10 |
---|---|
[AI] torchvision란? (0) | 2025.01.09 |
[AI] ONNX (Open Neural Network Exchange) (0) | 2025.01.09 |
728x90

1.LangChain
LangChain은 자연어 처리(NLP) 작업을 위해 설계된 오픈 소스 프레임워크다.
다양한 언어 모델과 데이터 소스를 연결하여 직관적이고 유연한 작업 흐름을 제공하는 데 사용한다.
Python, JavaScript 에서 사용가능하다.

2.LLM (대규모 언어 모델, Large Language Model)
수십억 개의 매개변수를 기반으로 학습된 자연어 처리 모델로, 문맥을 이해하고, 다양한 작업(질문 응답, 요약, 생성 등)을 수행할 수 있는 핵심 컴포넌트
(GPT-3, GPT-4, BERT)
3.체인(Chain)
여러 단계를 체계적으로 연결하여 작업을 수행하는 구조.
입력 데이터를 처리하는 일련의 과정을 정의하며, 체인을 구성함으로써 복잡한 문제를 단순화하고 반복 가능하게 함.
ex)"기사를 요약하고, 관련 주제를 검색한 뒤 결과를 번역해줘."의 체인
- 문서 요약 단계: LLM이 입력된 기사를 핵심 문장으로 요약.
- 관련 정보 검색 단계: 검색기를 통해 추가 데이터를 수집.
- 번역 단계: 결과를 사용자가 요청한 언어로 번역.
4.에이전트(Agent)
정적 체인과 달리 동적으로 실행 흐름을 결정하는 LangChain의 구성 요소
작업 중에 적합한 도구(검색기, 계산기 등)를 선택하고, 해당 도구와 상호작용하며 의사결정을 내림.
ex)서울의 날씨를 알려줘
- 에이전트가 날씨 API(도구)를 호출하여 서울의 날씨 데이터를 가져옴.
- "맑은 날씨이므로 한강에서 자전거 타기를 추천합니다."라는 답변 생성.
5.도구(Tool)
LangChain 에이전트가 특정 작업을 수행하기 위해 사용하는 외부 API나 내부 함수. 검색, 계산, 데이터 분석 등과 같은 기능을 제공하며, 에이전트의 작업 수행을 돕는 핵심 구성 요소
(검색 도구, 계산도구, 번역도구)
6.프롬프트(Prompt)
LLM에 제공되는 입력 텍스트로, 작업의 맥락과 방향을 설정. 프롬프트의 설계에 따라 LLM의 출력 품질과 적합성이 결정됨. LangChain은 정적 프롬프트와 동적 프롬프트를 모두 지원.
6-1.정적 프롬프트(Static Prompt)
정해진 형태로 미리 작성된 텍스트를 LLM에 입력하는 방식으로,사용자의 요청에 상관없이 항상 동일한 내용을 전달.
특정 작업에 대해 반복적으로 동일한 결과를 생성할 때 사용.
"주어진 텍스트를 세 문장으로 요약하시오: {텍스트}"
6-2.동적 프롬프트(Dynamic Prompt)
사용자의 입력이나 외부 데이터에 따라 실시간으로 프롬프트의 내용이 바뀌는 방식.
더 복잡하고 상황에 맞는 작업을 수행할 때 적합
"사용자가 질문한 내용 '{사용자 질문}'을 바탕으로 관련 정보를 검색하여 답변하시오."
"현재 시간은 {현재 시간}입니다. 날씨는 {API 결과}이며, 이에 맞는 활동을 추천하시오."
7.메모리(Memory)
LangChain에서 대화나 작업의 맥락을 저장하는 기능.
작업 중 이전 입력과 출력을 기억하여 일관성 있는 대화를 유지하고, 필요한 경우 장기적인 컨텍스트를 제공
8.벡터 스토어(Vector Store)
문서나 데이터를 벡터 형태로 저장하고, 입력 쿼리와의 유사도를 계산하여 관련 데이터를 검색하는 데이터베이스.
728x90
'AI' 카테고리의 다른 글
[AI] Anaconda 가상환경 사용 (0) | 2025.01.10 |
---|---|
[AI] torchvision란? (0) | 2025.01.09 |
[AI] ONNX (Open Neural Network Exchange) (0) | 2025.01.09 |