일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 수학적확률
- 표본공간
- 통계학입문
- 포아송분포
- jupyter notebook
- 이산확률질량함수
- 연속확률변수
- 행사다리꼴
- 통계학개론
- 이변량자료
- 확률밀도함수
- Anaconda
- 균일분포
- 표본평균
- 이항분포
- 피어슨상관계수
- 이산형
- 기본행연산
- 조건부확률
- 누적분포함수
- 사조사
- 모평균
- 수치형자료
- 모수
- 기댓값과 분산
- 베르누이분포
- 범주형자료
- pmf
- 첨가행렬
- 절삭평균
- Today
- Total
목록langchain (9)
Syeonny의 블로그
MultiQueryRetriever 초기화 logging 설정¶디버깅이나 모니터링을 위하여 소프트웨어 동작 상태 정보를 기록해서 볼 수 있음로그(log)를 생성하도록 시스템을 작성하는 활동문제가 발생하는 경우 로그가 중요한 정보를 제공하기에 문제 진단, 해결가능INFO: 상태 변경과 같은 정보성 로그를 표시retriever.get_relevant_documents 질의와 관련된 문서를 검색하고 반환쿼리와 관련하여 검색기가 찾은 문서 수: 5개Adding the Generation in RAG지금까진 쿼리로 구동되는 rag를 구축템플릿 생성 추가, 체인 생성Chaining Everything with a SequentialChain여러 개의 체인을 연결d.page_content: 텍스트 콘텐츠 추출, 검색..
Streaming의 이유빠른 답변적응형 상호작용효율성 1. Stdout 사용streaming=TrueStreamingStdOutCallbackHandler와 같이 토큰이 생성될 때 그대로 출력 import osfrom langchain.chat_models import ChatOpenAIfrom langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandlerimport osOPENAI_API_KEY = os.environ.get('OPENAI_API_KEY')llm = ChatOpenAI( openai_api_key=OPENAI_API_KEY, temperature=0.0, model_name="gpt-3.5-turbo..
retrieval augmented generation 거대언어 hallucination 환각 문제 발생거대언어의 문제점: 최신 정보의 부재-> 극복방안: 분야의 제한 없이 광범위한 주제의 질문을 받고 답변하는 질의응답 시스템을 응용해서 RAG거대언어 이전: Q&A쌍을 만들어 둠쿼리 들어오면 제일 유사한 쿼리를 찾아냄. ex) 코사인 유사도이용 후 tf-idf를 이용한 벡터형으로 변환하여 저장 RAG : 검색된 정보를 바탕으로 언어 모델이 텍스트를 생성하는 방식으로 작동수집한 데이터를 일정 단위(문서 혹은 그보다 작은 단위)로 임베딩(Document Indexing)쿼리가 들어오면 임베딩하고 수집된 데이터 임베딩과 유사도를 비교해 가장 유사한 데이터 검색(Retriever)쿼리 + 데이터(문서)로 프롬프..
agent agent?우리의 대리인이라 생각하면 됨사용자가 명령을 주면, (tool) 알아서 검토하고 작업 결과물을 전달함chain of thought 에 행동을 부여 agent를 사용하기 위한 세가지 기본 LLM tool control the interaction agent agent 작동 방식 input 할당 (사용자가) agent가 생각 action/action input 사용할 도구 tool 결정, 도구의 input 결정 도구의 출력 결과 관찰 observation 관찰 결과가 작업이 완료 됐다고 판단될 때까지 과정을 반복함. ex. 계산기 llmmathchain을 사용하여 계산하는 함수를 만들어서 사용할거임 = 초기화함 tool 생성함, 이 tool엔 llm_math.run 가 실행하도록 저장되..
대화형 agent정적 데이터 세트를 학습시키기에 최신 데이터에 액세스 할 수 없음모든 분야가 아닌 전문 분야에 관한 지식을 가짐순수한 rag 사용해당 컨텍스트가 필요한지 여부에 관계없이 모든 쿼리에서 관련 컨텍스트나 정보를 검색실제로 외부 지식이 필요하지 않은 쿼리에 대해 시스템이 불필요하거나 관련 없는 데이터를 가져올 수 있음- 데이터 불러오기- 벡터 저장 인덱스 생성: 기존 인덱스가 존재하는지 확인 후, 생성벡터 삽입: 모델에서 생성된 벡터가 인덱스에 들어가는 형태장점) 일관성을 유지하고 인덱스가 벡터를 적절하게 처리가능Indexing처리 과정배치: 데이터세트를 100개 레코드의 더 작은 부분(배치)으로 분할메타데이터 수집: 데이터에서 제목, 맥락 등의 정보를 추출임베딩 생성: 모델을 사용하여 텍스트..
chain chain ? 단계의 출력이 다음 단계의 입력이 되는 프로세스. 한 task의 출력이 다음 task의 input이 됨 만약, prompt에 수식을 계산해 달라고 하면?계산을 실제로 하는게 아니라 '계산하는' 패턴을 학습하는 것임.여러 계산 수식을 하는 원리가 학습되어 있음.lstm으로 계산을 예측플러그인 > 수식을 생성 > 플러그인 사용 > 답 > llm으로 답변을 생성하여 보여줌chain의 종류 3가지 utility chain generic chaincombine document chain1. LLMMathChain: 수학 계산을 위한 Utility Chain from langchain_openai import ChatOpenAIfrom langchain.chains import LLMM..
프롬프트 프롬프트?사용자의 대화 주제나 방향을 설정하는 데 도움이 되거나시나리오에서 모델이 어떻게 반응하는지 평가하고 개선하는 데 사용이 됨. 구성 요소로 지시, 질문, 문맥, 입력, 예제, 답변 등이 들어감 주어진 context만 이용하여 대답하도록 설정함. prompt = """ Answer the ~~~. Context: ~~~. Question: ~~~. Answer: """ 1) langchain에 PromptTemplate 사용 from langchain import PromptTemplate 위에 만든 prompt를 이용하여 사용 prompt_template = PromptTemplate( inp..
Langchain이란 ?LLM 개발을 중점으로 둔 프레임워크 사용 전 pip install langchain코랩사용시 (!붙여서) langchian 구성 시 프롬프트 설정 필요 프롬프트란? 요구사항, 작업을 정의하기 위해 만들어짐. PromptTemplate을 가져와서 {변수}를 할당하며 초기화, 생성 prompt 생성됨. question이 prompt에 들어가 llm을 거쳐 답변을 사용자에게 알려줌. from langchain import PromptTemplatetemplate = """Question: {question}Answer: """prompt = PromptTemplate( template=template, input_variables=['question'])quest..

OpenAI api key 발급받기 우선, 모듈 설치부터 해준다. pip install openai 설치를 다 했으면, 주어진 링크로 이동하면 된다. https://platform.openai.com/playground/chat?models=gpt-4o OpenAI 플랫폼 링크로 여기에서 API KEY를 발급받을 수 있다. 로그인 후 아래 캡쳐에서 보이는 톱니바퀴 (Settings) 를 클릭한다. 그 후, 왼쪽칸에 보이는 Billing에 들어가 결제수단을 등록해준다. 이제 거의 다 되었다. 그 후 create new secret key 로 들어가 나만의 키를 생성하면 된다. 생성된 'sk-'로 시작되는 나만의 키를 환경변수에 저장하나 코랩의 경우에선 복사하여 사용하면 된다. 다른 사람이 보..