Rememberizer Docs
로그인가입하기문의하기
한국어
한국어
  • 왜 Rememberizer인가?
  • 배경
    • 벡터 임베딩과 벡터 데이터베이스란?
    • 용어집
    • 표준화된 용어
  • 개인 사용
    • 시작하기
      • 지식 검색
      • 기념품 필터 접근
      • 공통 지식
      • 내장된 지식 관리
  • 통합
    • Rememberizer 앱
    • Rememberizer Slack 통합
    • Rememberizer Google Drive 통합
    • Rememberizer Dropbox 통합
    • Rememberizer Gmail 통합
    • Rememberizer Memory 통합
    • Rememberizer MCP 서버
    • 타사 앱 관리
  • 개발자 리소스
    • 개발자 개요
  • 통합 옵션
    • API 키 등록 및 사용
    • Rememberizer 앱 등록
    • Rememberizer 앱 승인
    • Rememberizer GPT 생성
    • LangChain 통합
    • 벡터 저장소
    • Slack과 대화하는 샘플 웹 앱
  • 기업 통합
    • 기업 통합 패턴
  • API 참조
    • API 문서 홈
    • 인증
  • 핵심 API
    • 의미적 유사성으로 문서 검색
    • 문서 검색
    • 문서 내용 검색
    • 슬랙 콘텐츠 검색
    • Rememberizer에 콘텐츠 기억하기
  • 계정 및 구성
    • 현재 사용자 계정 세부정보 가져오기
    • 사용 가능한 데이터 소스 통합 목록
    • 기념품
    • 추가된 모든 공개 지식 가져오기
  • 벡터 저장소 API
    • 벡터 저장소 문서
    • 벡터 저장소 정보 가져오기
    • 벡터 저장소의 문서 목록 가져오기
    • 문서 정보 가져오기
    • 벡터 저장소에 새 텍스트 문서 추가하기
    • 벡터 저장소에 파일 업로드하기
    • 벡터 저장소의 파일 내용 업데이트하기
    • 벡터 저장소에서 문서 제거하기
    • 의미적 유사성으로 벡터 저장소 문서 검색하기
  • 추가 자료
    • 공지사항
      • 이용 약관
      • 개인정보 처리방침
      • B2B
        • 레딧 에이전트에 대하여
  • 릴리스
    • 릴리스 노트 홈
  • 2025 릴리스
    • 2025년 4월 25일
    • 2025년 4월 18일
    • 2025년 4월 11일
    • 2025년 4월 4일
    • 2025년 3월 28일
    • 2025년 3월 21일
    • 2025년 3월 14일
    • 2025년 1월 17일
  • 2024 릴리스
    • 2024년 12월 27일
    • 2024년 12월 20일
    • 2024년 12월 13일
    • 2024년 12월 6일
  • 2024년 11월 29일
  • 2024년 11월 22일
  • 2024년 11월 15일
  • 2024년 11월 8일
  • 2024년 11월 1일
  • 2024년 10월 25일
  • 2024년 10월 18일
  • 2024년 10월 11일
  • 2024년 10월 4일
  • 2024년 9월 27일
  • 2024년 9월 20일
  • 2024년 9월 13일
  • 2024년 8월 16일
  • 2024년 8월 9일
  • 2024년 8월 2일
  • 2024년 7월 26일
  • 2024년 7월 12일
  • 2024년 6월 28일
  • 2024년 6월 14일
  • 2024년 5월 31일
  • 2024년 5월 17일
  • 2024년 5월 10일
  • 2024년 4월 26일
  • 2024년 4월 19일
  • 2024년 4월 12일
  • 2024년 4월 5일
  • 2024년 3월 25일
  • 2024년 3월 18일
  • 2024년 3월 11일
  • 2024년 3월 4일
  • 2024년 2월 26일
  • 2024년 2월 19일
  • 2024년 2월 12일
  • 2024년 2월 5일
  • 2024년 1월 29일
  • 2024년 1월 22일
  • 2024년 1월 15일
  • LLM 문서
    • Rememberizer LLM 준비 문서
Powered by GitBook
On this page
  • LangChain 통합
  • 소개
  • 시작하기
  • 구성 옵션
  • 기본 사용법
  • API 키 설정
  • 검색기 초기화
  • 쿼리에 대한 관련 문서 가져오기
  • 첫 번째 문서 표시
  • 고급 예제
  • API 키 설정
  • 검색기 및 언어 모델 초기화
  • 검색 QA 체인 생성
  • 질문하기
  • 답변 출력
  • API 키 설정
  • 구성 요소 초기화
  • 대화형 체인 생성
  • 예시 대화
  • 검색기 생성
  • 가중 점수를 가진 앙상블 생성
  • 관련 자료
  1. 통합 옵션

LangChain 통합

Rememberizer를 LangChain 검색기로 통합하여 LangChain 애플리케이션에 강력한 벡터 데이터베이스 검색 기능을 제공하는 방법을 배우세요.

PreviousRememberizer GPT 생성Next벡터 저장소

Last updated 25 days ago

LangChain 통합

Rememberizer는 RememberizerRetriever 클래스를 통해 LangChain과 통합되어, Rememberizer의 의미 검색 기능을 LangChain 기반 애플리케이션에 쉽게 통합할 수 있습니다. 이 가이드는 지식 기반에 접근하여 고급 LLM 애플리케이션을 구축하기 위한 이 통합 설정 및 사용 방법을 설명합니다.

소개

LangChain은 대형 언어 모델(LLM)을 사용하여 애플리케이션을 구축하기 위한 인기 있는 프레임워크입니다. Rememberizer를 LangChain과 통합하면 다음을 수행할 수 있습니다:

  • RAG(검색 증강 생성) 애플리케이션에서 Rememberizer 지식 기반을 사용할 수 있습니다.

  • 문서 및 데이터에 접근할 수 있는 챗봇을 생성할 수 있습니다.

  • 귀하의 지식을 활용하는 질문-답변 시스템을 구축할 수 있습니다.

  • 귀하의 정보를 검색하고 추론할 수 있는 에이전트를 개발할 수 있습니다.

통합은 langchain_community.retrievers 모듈에서 사용할 수 있습니다.

시작하기

필수 조건

시작하기 전에 다음이 필요합니다:

  1. Common Knowledge가 생성된 Rememberizer 계정

  2. Common Knowledge에 접근하기 위한 API 키

  3. LangChain이 설치된 Python 환경

설치

필요한 패키지를 설치합니다:

pip install langchain langchain_community

아래 예제에서 보여지는 것처럼 OpenAI 모델을 사용할 계획이라면:

pip install langchain_openai

인증 설정

RememberizerRetriever를 인증하는 두 가지 방법이 있습니다:

  1. 환경 변수: REMEMBERIZER_API_KEY 환경 변수를 설정합니다.

    import os
    os.environ["REMEMBERIZER_API_KEY"] = "rem_ck_your_api_key"
  2. 직접 매개변수: 검색기를 초기화할 때 API 키를 직접 전달합니다.

    retriever = RememberizerRetriever(rememberizer_api_key="rem_ck_your_api_key")

구성 옵션

RememberizerRetriever 클래스는 다음 매개변수를 수용합니다:

매개변수
유형
기본값
설명

top_k_results

int

10

검색에서 반환할 문서 수

rememberizer_api_key

str

None

인증을 위한 API 키 (환경 변수로 설정된 경우 선택 사항)

백그라운드에서, 리트리버는 추가 구성 가능한 매개변수와 함께 Rememberizer의 검색 엔드포인트에 API 호출을 합니다:

고급 매개변수
설명

prev_chunks

포함할 일치하는 청크 이전의 청크 수 (기본값: 2)

next_chunks

포함할 일치하는 청크 이후의 청크 수 (기본값: 2)

return_full_content

전체 문서 내용을 반환할지 여부 (기본값: true)

기본 사용법

다음은 LangChain을 사용하여 Rememberizer에서 문서를 검색하는 간단한 예입니다:

import os
from langchain_community.retrievers import RememberizerRetriever

API 키 설정

os.environ["REMEMBERIZER_API_KEY"] = "rem_ck_your_api_key"

검색기 초기화

retriever = RememberizerRetriever(top_k_results=5)

쿼리에 대한 관련 문서 가져오기

docs = retriever.get_relevant_documents(query="벡터 임베딩은 어떻게 작동하나요?")

첫 번째 문서 표시

if docs: print(f"문서: {docs[0].metadata['name']}") print(f"내용: {docs[0].page_content[:200]}...")


### 문서 구조 이해하기

검색기가 반환하는 각 문서에는 다음이 포함됩니다:

- `page_content`: 일치하는 문서 조각의 텍스트 내용
- `metadata`: 문서에 대한 추가 정보

메타데이터 구조의 예:

```python
{
  'id': 13646493,
  'document_id': '17s3LlMbpkTk0ikvGwV0iLMCj-MNubIaP',
  'name': 'What is a large language model (LLM)_ _ Cloudflare.pdf',
  'type': 'application/pdf',
  'path': '/langchain/What is a large language model (LLM)_ _ Cloudflare.pdf',
  'url': 'https://drive.google.com/file/d/17s3LlMbpkTk0ikvGwV0iLMCj-MNubIaP/view',
  'size': 337089,
  'created_time': '',
  'modified_time': '',
  'indexed_on': '2024-04-04T03:36:28.886170Z',
  'integration': {'id': 347, 'integration_type': 'google_drive'}
}

고급 예제

RAG 질문-응답 시스템 구축

이 예제는 Rememberizer에서 정보를 검색하고 GPT-3.5를 사용하여 답변을 작성하는 질문-응답 시스템을 생성합니다:

import os
from langchain_community.retrievers import RememberizerRetriever
from langchain.chains import RetrievalQA
from langchain_openai import ChatOpenAI

API 키 설정

os.environ["REMEMBERIZER_API_KEY"] = "rem_ck_your_api_key" os.environ["OPENAI_API_KEY"] = "your_openai_api_key"

검색기 및 언어 모델 초기화

retriever = RememberizerRetriever(top_k_results=5) llm = ChatOpenAI(model_name="gpt-3.5-turbo", temperature=0)

검색 QA 체인 생성

qa_chain = RetrievalQA.from_chain_type( llm=llm, chain_type="stuff", # 가장 간단한 방법 - 모든 문서를 프롬프트에 넣기 retriever=retriever, return_source_documents=True )

질문하기

response = qa_chain.invoke({"query": "AI의 맥락에서 RAG란 무엇인가요?"})

답변 출력

print(f"답변: {response['result']}") print("\n출처:") for idx, doc in enumerate(response['source_documents']): print(f"{idx+1}. {doc.metadata['name']}")


### 메모리가 있는 대화형 에이전트 구축

이 예제는 대화 기록을 유지할 수 있는 대화형 에이전트를 생성합니다:

```python
import os
from langchain_community.retrievers import RememberizerRetriever
from langchain.chains import ConversationalRetrievalChain
from langchain.memory import ConversationBufferMemory
from langchain_openai import ChatOpenAI

API 키 설정

os.environ["REMEMBERIZER_API_KEY"] = "rem_ck_your_api_key" os.environ["OPENAI_API_KEY"] = "your_openai_api_key"

구성 요소 초기화

retriever = RememberizerRetriever(top_k_results=5) llm = ChatOpenAI(model_name="gpt-3.5-turbo") memory = ConversationBufferMemory( memory_key="chat_history", return_messages=True )

대화형 체인 생성

conversation = ConversationalRetrievalChain.from_llm( llm=llm, retriever=retriever, memory=memory )

예시 대화

questions = [ "RAG란 무엇인가요?", "대형 언어 모델은 이를 어떻게 사용하나요?", "이 접근 방식의 한계는 무엇인가요?", ]

for question in questions: response = conversation.invoke({"question": question}) print(f"질문: {question}") print(f"답변: {response['answer']}\n")


## 모범 사례

### 검색 성능 최적화

1. **쿼리를 구체적으로 작성하기**: 더 구체적인 쿼리는 일반적으로 더 나은 결과를 가져옵니다.
2. **`top_k_results` 조정하기**: 3-5개의 결과로 시작하고 애플리케이션 필요에 따라 조정합니다.
3. **컨텍스트 윈도우 사용하기**: 검색기는 일치하는 청크 주위의 컨텍스트를 자동으로 포함합니다.

### 보안 고려사항

1. **API 키 보호**: 환경 변수 또는 비밀 관리 도구를 사용하여 안전하게 저장하세요.
2. **전용 키 생성**: 서로 다른 애플리케이션을 위해 별도의 API 키를 생성하세요.
3. **정기적으로 키 교체**: 주기적으로 새로운 키를 생성하고 오래된 키는 단계적으로 폐기하세요.

### 통합 패턴

1. **사전 검색 처리**: 검색 관련성을 개선하기 위해 사용자 쿼리를 사전 처리하는 것을 고려하십시오.
2. **사후 검색 필터링**: LLM에 전달하기 전에 검색된 문서를 필터링하거나 순위를 매깁니다.
3. **하이브리드 검색**: `EnsembleRetriever`를 사용하여 Rememberizer와 다른 검색기를 결합합니다.

```python
from langchain.retrievers import EnsembleRetriever
from langchain_community.retrievers import RememberizerRetriever, WebResearchRetriever

검색기 생성

rememberizer_retriever = RememberizerRetriever(top_k_results=3) web_retriever = WebResearchRetriever(...) # 다른 검색기 구성

가중 점수를 가진 앙상블 생성

ensemble_retriever = EnsembleRetriever( retrievers=[rememberizer_retriever, web_retriever], weights=[0.7, 0.3] # Rememberizer 결과는 더 높은 가중치를 가집니다 )


## 문제 해결

### 일반적인 문제

1. **인증 오류**: API 키가 올바르고 제대로 구성되었는지 확인하세요.
2. **결과가 반환되지 않음**: 공통 지식에 관련 정보가 포함되어 있는지 확인하세요.
3. **요금 제한**: 대량 애플리케이션에 대한 API 요금 제한을 염두에 두세요.

### 디버그 팁

- LangChain 디버그 모드를 설정하여 자세한 API 호출을 확인합니다:
  ```python
  import langchain
  langchain.debug = True
  • LLM에 전달하기 전에 원시 검색 결과를 검사하여 검색 문제를 식별합니다

관련 자료

Common Knowledge를 생성하고 API 키를 생성하는 방법에 대한 자세한 지침은 을 참조하세요.

LangChain

LangChain

Rememberizer

Rememberizer의

- AI 통합을 위한 대안 접근법

API 키 등록 및 사용
검색기 개념 가이드
검색기 사용 방법 가이드
API 문서
벡터 저장소
Rememberizer GPT 만들기
Rememberizer | 🦜️🔗 LangChain
Logo