Retrieval 시스템을 위한 MTEB 벤치마크
·
AI/어플리케이션 개발
정보 검색(IR) 시스템은 사용자의 쿼리에 응답하여 문서를 찾아주는 역할을 합니다. 이러한 시스템이 발전함에 따라, 기존 시스템을 분석하고 이해하기 위한 포괄적인 평가 방법의 필요성도 커졌습니다.텍스트 임베딩은 일반적으로 단일 작업에 대한 소수의 데이터셋을 기반으로 테스트되며, 이는 다른 작업에서의 성능을 충분히 보여주지 못합니다. 예를 들어, 의미적 텍스트 유사성(Semantic Textual Similarity, STS)에 최적화된 임베딩이 클러스터링이나 재정렬과 같은 작업에도 동일하게 효과적인지는 명확하지 않습니다. 이로 인해 새로운 모델과 임베딩 기법이 계속해서 제안되지만, 일관된 테스트가 이루어지지 않아 해당 분야에서의 발전을 평가하기 어렵습니다.이 문제를 해결하기 위해 연구자들은 Massive..
Retrieval 시스템을 위한 BEIR 벤치마크
·
AI/어플리케이션 개발
정보 검색(IR) 시스템은 사용자의 쿼리에 응답하여 문서를 찾아주는 역할을 합니다. 이러한 시스템이 발전함에 따라, 기존 시스템을 분석하고 이해하기 위한 포괄적인 평가 방법의 필요성도 커졌습니다.BEIR(Benchmarking IR)는 다양한 작업과 정보 유형에 대해 검색 시스템의 성능을 평가하기 위한 도구입니다. 전통적인 벤치마크가 특정 작업이나 도메인에만 초점을 맞추는 것과 달리, BEIR는 여러 시나리오에서 다양한 정보 검색 모델을 테스트하는 이질적인 평가 프레임워크입니다. BEIR는 사실 확인, 질문 응답, 생물의학 정보 검색 등 다양한 작업을 위한 18개의 데이터셋을 포함하고 있고, 이러한 다양성 덕분에, BEIR는 현실 세계의 사용 사례에 가까운 방식으로 정보 검색 시스템의 범용성과 안정성을 ..
Retrieval을 위한 query generation 기반 Re-Ranker
·
AI/어플리케이션 개발
최근 자연어 처리(NLP) 분야에서 대형 언어 모델(Large Language Models, 이하 LLM)의 성과가 눈부십니다. OpenAI의 GPT-4와 Google의 PaLM 2 같은 최신 LLM은 다양한 NLP 작업에서 뛰어난 제로샷(zero-shot) 성능을 입증하며 주목받고 있습니다. 이러한 성과는 단순한 질의응답을 넘어 텍스트 순위 매기기(text ranking)라는 새로운 응용 분야로 확장되고 있습니다.이전 포스트에서 LLM을 사용하여 도큐먼트의 ranking을 매기는 방법에 대해서 다루었으니, 관심 있으신 분들은 참고하시면 좋을 것 같습니다. Retrieval을 위한 zero-shot LLM Ranker앞서서최근 자연어 처리(NLP) 분야에서 대형 언어 모델(Large Language Mo..
Retrieval을 위한 zero-shot LLM Ranker
·
AI/어플리케이션 개발
앞서서최근 자연어 처리(NLP) 분야에서 대형 언어 모델(Large Language Models, 이하 LLM)의 성과가 눈부십니다. OpenAI의 GPT-4와 Google의 PaLM 2 같은 최신 LLM은 다양한 NLP 작업에서 뛰어난 제로샷(zero-shot) 성능을 입증하며 주목받고 있습니다. 이러한 성과는 단순한 질의응답을 넘어 텍스트 순위 매기기(text ranking)라는 새로운 응용 분야로 확장되고 있습니다.특히, 초기의 제로샷 LLM 랭커는 주로 포인트와이즈(pointwise) 접근 방식을 따랐습니다. 이 방식은 하나의 질의(query)와 하나의 문서(document)에 대해 각각 점수를 계산한 후, 이를 바탕으로 문서를 순위별로 정렬합니다. Liang et al. (2023)와 Sacha..
Retrieval 시스템 평가 매트릭
·
AI/어플리케이션 개발
정보 검색(Information Retrieval) 시스템의 성능은 다양한 메트릭으로 평가됩니다. 여기서는 주요 개념과 지표를 간단히 설명합니다.  들어가기 앞서@K검색 결과 상위 K개의 문서만 평가.예: @5는 상위 5개 문서만 반환.목적: 사용자가 주로 확인하는 상위 결과에 집중.활용: Precision@K, Recall@K, nDCG@K 등. Relevance란?사용자 쿼리와 검색 결과 간의 일치 정도. 높은 관련성은 사용자가 원하는 정보가 검색 결과에 포함되어 있음을 의미. 관련성은 주관적인 요소와 시스템의 매칭 알고리즘에 의해 평가.주요 요소:문맥적 적합성: 사용자 쿼리의 의미와 검색 결과의 내용 간의 적합성.사용자 의도: 사용자가 쿼리를 통해 무엇을 찾으려 하는지에 대한 정확한 이해.결과의 품..
Retrieval 시스템이란?
·
AI/어플리케이션 개발
Retrieval 시스템은 대규모 데이터셋에서 관련 정보를 효율적으로 식별하는 데 필수적인 기술로, 다양한 AI 애플리케이션에서 핵심적인 역할을 합니다. 이러한 시스템은 다양한 데이터 형식을 처리할 수 있도록 설계되었습니다:비정형 텍스트(예: 문서)는 주로 벡터 스토어나 어휘 검색 색인(lexical search index)에 저장됩니다.구조화된 데이터는 관계형 데이터베이스나 그래프 데이터베이스와 같은 정의된 스키마를 가진 저장소에 보관됩니다.데이터 형식의 다양성이 증가하고 있음에도 불구하고, 현대 AI 애플리케이션은 모든 유형의 데이터를 자연어 인터페이스를 통해 접근 가능하게 만드는 것을 목표로 하고 있습니다. 모델은 자연어 쿼리를 검색 색인 또는 데이터베이스와 호환 가능한 형식으로 변환하는 데 중요한..
LangChain을 활용한 Tool Calling # 4
·
AI/어플리케이션 개발
자연어 처리와 대화형 AI 모델을 통해 복잡한 문제를 해결하려면, 단순히 언어를 이해하는 것을 넘어서 다양한 툴을 활용할 필요가 있습니다. LangChain은 이러한 필요성을 충족시킬 수 있는 프레임워크로, 특히 Tool Calling 기능을 통해 외부 데이터와의 상호작용을 쉽게 만들어 줍니다. 이 글에서는 LangChain을 활용한 Tool Calling의 작동 원리와 실제 사용 방법을 구체적인 예제를 통해 소개하겠습니다.  LangChain이란?LangChain은 자연어 처리 모델을 좀 더 강력하고 유연하게 사용할 수 있게 도와주는 Python 기반의 오픈소스 프레임워크입니다. 이 프레임워크는 AI 모델과 다양한 외부 도구를 연결하는 데 초점을 맞추고 있어, AI 모델이 API 호출, 데이터베이스 쿼..
LangChain을 활용한 Tool Calling # 3
·
AI/어플리케이션 개발
자연어 처리와 대화형 AI 모델을 통해 복잡한 문제를 해결하려면, 단순히 언어를 이해하는 것을 넘어서 다양한 툴을 활용할 필요가 있습니다. LangChain은 이러한 필요성을 충족시킬 수 있는 프레임워크로, 특히 Tool Calling 기능을 통해 외부 데이터와의 상호작용을 쉽게 만들어 줍니다. 이 글에서는 LangChain을 활용한 Tool Calling의 작동 원리와 실제 사용 방법을 구체적인 예제를 통해 소개하겠습니다.  LangChain이란?LangChain은 자연어 처리 모델을 좀 더 강력하고 유연하게 사용할 수 있게 도와주는 Python 기반의 오픈소스 프레임워크입니다. 이 프레임워크는 AI 모델과 다양한 외부 도구를 연결하는 데 초점을 맞추고 있어, AI 모델이 API 호출, 데이터베이스 쿼..
LangChain을 활용한 Tool Calling # 2
·
AI/어플리케이션 개발
자연어 처리와 대화형 AI 모델을 통해 복잡한 문제를 해결하려면, 단순히 언어를 이해하는 것을 넘어서 다양한 툴을 활용할 필요가 있습니다. LangChain은 이러한 필요성을 충족시킬 수 있는 프레임워크로, 특히 Tool Calling 기능을 통해 외부 데이터와의 상호작용을 쉽게 만들어 줍니다. 이 글에서는 LangChain을 활용한 Tool Calling의 작동 원리와 실제 사용 방법을 구체적인 예제를 통해 소개하겠습니다.  LangChain이란?LangChain은 자연어 처리 모델을 좀 더 강력하고 유연하게 사용할 수 있게 도와주는 Python 기반의 오픈소스 프레임워크입니다. 이 프레임워크는 AI 모델과 다양한 외부 도구를 연결하는 데 초점을 맞추고 있어, AI 모델이 API 호출, 데이터베이스 쿼..
LangChain을 활용한 Tool Calling # 1
·
AI/어플리케이션 개발
자연어 처리와 대화형 AI 모델을 통해 복잡한 문제를 해결하려면, 단순히 언어를 이해하는 것을 넘어서 다양한 툴을 활용할 필요가 있습니다. LangChain은 이러한 필요성을 충족시킬 수 있는 프레임워크로, 특히 Tool Calling 기능을 통해 외부 데이터와의 상호작용을 쉽게 만들어 줍니다. 이 글에서는 LangChain을 활용한 Tool Calling의 작동 원리와 실제 사용 방법을 구체적인 예제를 통해 소개하겠습니다.  LangChain이란?LangChain은 자연어 처리 모델을 좀 더 강력하고 유연하게 사용할 수 있게 도와주는 Python 기반의 오픈소스 프레임워크입니다. 이 프레임워크는 AI 모델과 다양한 외부 도구를 연결하는 데 초점을 맞추고 있어, AI 모델이 API 호출, 데이터베이스 쿼..