일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- REACT
- 밑바닥부터 시작하는 딥러닝
- tool_binding
- 강화학습의 수학적 기초와 알고리듬 이해
- update_state
- chat_history
- human-in-the-loop
- rl
- toolnode
- langgrpah
- Ai
- rag
- conditional_edge
- 밑바닥부터시작하는딥러닝 #딥러닝 #머신러닝 #신경망
- removemessage
- humannode
- RecSys
- tool_calls
- summarize_chat_history
- pinecone
- langgraph
- 강화학습
- Python
- subgraph
- add_subgraph
- lcel
- 추천시스템
- 강화학습의 수학적 기초와 알고리듬의 이해
- LangChain
- conditional_edges
- Today
- Total
목록pinecone (2)
타임트리
이번에는 https://sean-j.tistory.com/38 에서 만든 간단한 rag 파이프라인을 구현된 chain 대신, 직접 프롬프트를 작성하고 LCEL 로 RAG 파이프라인을 구성해보자. 랭체인은 복잡한 체인을 쉽게 구현할 수 있도록 LangChain Expression Language(LCEL)을 제공한다. 기본적으로 Runnable 인터페이스를 따르는 LCEL 객체들을 파이프 연산자(|)으로 연결하는 형태로 작성할 수 있는데, 이때 앞 객체의 output을 다음 객체의 input으로 전달한다. 그리고 Runnable은 입력을 받아 출력을 만드는 인터페이스라고 생각하면 된다. 이때 Runnable은 공통적으로 invoke, batch, stream 등의 메서드를 갖고 있어야 한다. 또, 모든..
LLM이 사전 학습한 정보를 벗어난 데이터의 범위를 벗어나는 경우, 원하는 대답을 얻을 수 없다. 또한, 생성 모델의 한계상 할루시네이션이 발생해 정확한 정보를 얻기 어려울 때도 있다. 우리가 원하는 정보를 얻기 위해 LLM을 Supervised fine-tuning하거나, Instruction fine-tuning을 하거나, RAG를 사용할 수 있다. SFT의 경우, 현실적으로 비용 문제 때문에 접근성이 떨어지기 때문에 제외하고 Instruction fine-tuning이나 RAG를 사용하게 된다. Instruction fine-tuning은 LLM을 Instruction-output 데이터셋으로 사용자 질의와 답변을 align 시켜주는 방법이다. RAG는 사용자 질문 의도에 적절한 외부 문서를 가..