LangChainRB

Build Ruby-based Retrieval-Augmented Generation applications with LangChainRB and Zilliz Cloud or Milvus Vector Database

이 통합 기능을 무료로 사용하세요.
  • LangChainRB 및 Milvus

    LangChainRB는 Ruby 기반 LLM 애플리케이션 구축을 위한 오케스트레이션 계층으로, 벡터 데이터베이스(Milvus 및 Zilliz Cloud), LLM과 같은 여러 유형의 시스템을 함께 묶는 데 유용합니다. 이 솔루션을 사용하면 문서, 챗봇 및 상담원을 통한 Q&A에 유용한 시맨틱 검색 기능을 구축할 수 있습니다.

    주요 기능은 다음과 같습니다:

    • 프롬프트 관리 - 프롬프트 템플릿 생성, 로드 및 저장
    • 컨텍스트 길이 유효성 검사 - 컨텍스트 창 길이를 유효성 검사하여 LLM 오류를 방지합니다.
    • 데이터 청킹 - 다양한 문서에서 의미론적 의미가 있는 청크로 데이터를 분할한 후 임베딩을 생성하여 질리즈 클라우드와 같은 벡터 데이터베이스에 저장합니다.
    • 대화 메모리 - LLM과의 채팅을 메모리에 지속시키는 기능
    • Anthropic, Cohere, Google Palm, Hugging Face, Local Llama, OpenAI와 같은 인기 있는 LLM을 지원합니다.

    혜택

    • 공통 도메인별 언어 및 API
    • 상호 운용성 및 벤더 종속성 감소, 선호하는 LLM 선택 가능
    • 모범 사례 및 풍부한 기능 세트
  • Milvus로 벡터 검색을 실행하는 방법

    Milvus로 벡터 검색을 실행하는 방법

    llm = Langchain::LLM::GooglePalm.new(api_key: "...")
    
    client + Langchain::Vectorsearch::Milvus.new(url:, index_name:, llm: llm)
    client.add_texts 텍스트를 추가합니다: [...], ids: [...]
    
    my_pdf = Langchain.root.join("/Documents/file.pdf")
    my_text = Langchain.root.join("/Documents/file.txt")
    my_docx = Langchain.root.join("/문서/파일.docx")
    
    client.add_data(경로: [my_pdf, my_txt, my_docx])
    

    위 예제에 대한 몇 가지 참고 사항

    • 이 예제는 LLM에 Google Palm을 사용하고 있으며, API 키를 전달하여 LLM을 인스턴스화할 수 있습니다.
    • Milvus 루비 젬을 사용하여 클라이언트를 생성하고, Milvus가 실행되는 URL을 전달하고, 인덱스 이름을 지정하고, 인덱스를 전달합니다.
    • Milvus에 벡터를 하나씩 보내거나 일괄 업서트

    액티브 레코드` 예제

    클래스 제품 < ActiveRecord::Base
       벡터서치 공급자: Langchain::Vectorsearch::Milvus.new(url:, index_name:, llm:)
    
       저장 후 :업서트_투_벡터서치
    end
    

    벡터 검색 예제

    # 전달된 쿼리 문자열을 기반으로 유사한 문서를 검색합니다.
    client.similarity_search(
         Query:,
         k:     # 검색할 결과 수
    )
    
    # 전달된 질문에 기반한 Q&A 스타일 쿼리
    client.ask(
          질문:
    )
    
    
    
  • LangChainRB와 Milvus 통합에 대해 알아보기

    • LangChainRB 깃허브 리포지토리](https://github.com/andreibondarev/langchainrb)
    • LangChainRB 문서](https://rubydoc.info/gems/langchainrb)
    • 루비를 사용한 GenAI 앱 엔드투엔드 구축 비디오](https://zilliz.com/event/building-genai-app-ruby)
    • 밀버스 디스코드 가입](https://discord.com/invite/8uyFbECzPX)
    • LangChainRB 디스코드 가입](https://discord.com/invite/WDARp7J2n8)