본문 바로가기
728x90
300x250

전체 글47

랭체인을 이용한 리트리버 검색기 활용 리트리버 검색기를 통해서 쿼리에 참조 하기위한 문서를 빠르면서 정확하게 찾기위한 전략을 여러가지 짤 수 있습니다. LangChain이 제공하는 Retrieval Augmented Generation RAG는 외부 데이터를 검색하고 LLM으로 전달하여 사용자 특정 데이터를 활용하는 방법을 설명합니다. LangChain은 다양한 모듈로 이 과정을 지원하는데, 문서 로더로 다양한 소스에서 문서를 불러오고, 문서 변환기로 문서를 적절히 가공합니다. 또한 텍스트 임베딩 모델을 사용해 문서에 임베딩을 생성하고, 벡터 저장소를 통해 효율적으로 저장하고 검색합니다.검색 알고리즘 또한 다양한 방식으로 구현되어 있어, 쉬운 의미적 검색부터 부모 문서 검색, 셀프 쿼리 검색, 앙상블 검색 등 다양한 방법을 사용할 수 있습니.. 2024. 2. 16.
랭체인의 LCEL 문법 https://python.langchain.com/docs/expression_language/get_started langChain Expression Language (LCEL)는 체인을 쉽게 구성 할 수있는 선언적인 방법입니다 기본 : 일자식 구성 프롬프트 + 모델 + 출력 파서 chain = prompt | model | output_parser 분기 : RunnableParallel과 RunnablePassThrough를 이용 심화 : 사용자 함수와 함께, Runable하게 구성하기 def format\_docs(docs): backgrounds = \[\] max\_token = 3000 count\_token = 0 for doc in docs: count\_token += len(toke.. 2024. 2. 15.
Pydantic 데이터 클래스 란? https://docs.pydantic.dev/latest/ pydantic은 이제 안사용하는 곳이 없을 정도로 필수 라이브러리가 되었습니다.데이터 클래스와 자료구조 관리에 필수템이 되어 모든 개발자들이 사용하고 있습니다.랭체인에서는 pydantic한 구조 사용은 적극적으로 권장(거의 필수)하며 거의 모든 부분에서 사용되고 있습니다. pydantic을 사용하는 주요 기업 OpenAI (https://github.com/pydantic/pydantic/discussions/6372) "OpenAI는 ChatCompletions API의 새로운 펑션 콜링 기능에 JSON Schema를 사용하므로, Pydantic 2.0과 함께 작동하도록 JSON Schema 문서를 업데이트 할 예정이 있습니다." 마이크로 .. 2024. 2. 14.
OpenAI의 Function Calling의 원리를 알아보자 한 3달전에 캐글에 랭체인을 이용한 라마와 펑션콜링에 대한 주제로 글을 쓴게 있는데 1110뷰를 돌파 했습니다. ㅎㅎ OpenAI의 function calling은 출시 됬을 때 chatgpt를 이용한 개발자들에게 혁신적인 인기가 있었습니다. 이번 포스트는 Jsonformer를 통해서 OpenAI의 function calling이 무엇인가? 어떻게 구현 됬는지 알아보려고 합니다. 모델이 구조화된 JSON을 출력하는 것은 문법적으로 올바르고 JSON 구조를 명시하는 스키마를 준수해야 합니다. 이 문제를 해결하는 것은 매우 어려운 작업입니다. 현재 이 문제에 대한 접근 방식은 부서지기 쉽고 오류가 발생하기 쉽습니다. 이는 프롬프트 엔지니어링, 세세한 조정 및 후처리에 의존하지만 여전히 많은 경우에 문법적으로.. 2024. 2. 13.
728x90
300x250