성공을 위한 벡터 검색

2022년 이전에는 작품 자체 없이 좋아하는 책의 특정 구절이나 방금 본 영화의 인용문을 빠르게 기억하고 싶다면 검색 엔진을 사용했을 것입니다. 잘 구성된 검색 입력으로 메시지를 표시하고, 반환된 결과를 분석하고, 답변이 포함된 것으로 보이는 SparkNotes 또는 IMDB 링크를 방문하고, 몇 분 내에 페이지에서 찾고 있는 텍스트를 찾으세요. 이제 ChatGPT를 열고 "가장 유명한 터미네이터 인용문은 무엇입니까?"라고 입력하기만 하면 됩니다. 또는 "두 도시 이야기의 시작 부분을 작성해 보세요"를 입력하고 몇 초 만에 답변을 그대로 받아볼 수 있습니다.

LLM(대형 언어 모델)의 가장 간단한 용도 중 하나는 지식 데이터베이스입니다. LLM은 ChatGPT와 같은 인터페이스를 통해 쉽게 검색할 수 있는 풍부한 정보가 포함된 방대한 데이터 세트에 대해 교육을 받았습니다. 예를 들어 ChatGPT가 영화나 책의 콘텐츠를 반환하도록 요청하는 경우 훈련 중에 노출된 정보를 기억하는 모델의 기능을 활용하는 것뿐입니다. 하지만 터미네이터 스크립트에 대한 교육을 받지 않았거나 가중치가 디킨스의 작품에 중요성을 부여하지 않는다면 어떻게 될까요? 기본 정보 검색과 같은 가장 단순한 사용 사례에서도 가장 정확하고 관련성이 높은 결과를 제공하기 위해 LLM에는 광범위한 정보에 정밀하게 액세스할 수 있는 정교한 인덱싱 및 검색 메커니즘이 필요합니다.

LLM 콘텐츠 생성 및 교육 이해

LLM 콘텐츠는 다음 토큰 예측 이라는 프로세스를 통해 생성됩니다 . 이를 통해 응답이 상황에 맞게 적절하고 다양하며 인간과 유사한 이해를 어느 정도 반영하도록 보장합니다. 다음 토큰 예측이 단계별로 작동하는 방식은 다음과 같습니다.

  1. 입력 처리: 프롬프트나 질문을 입력하면 해당 입력이 토큰(단어 또는 단어 조각)으로 변환됩니다.

  2. 맥락 이해: 모델은 사용자가 제공한 토큰을 살펴보고 훈련을 기반으로 현재 주제부터 사용 중인 어조까지 모든 것을 포함하는 맥락을 이해하려고 시도합니다.

  3. 다음 토큰 예측: 모델은 이해된 컨텍스트를 사용하여 가장 가능성이 높은 다음 토큰이 무엇인지 예측합니다. 이는 바로 이전 단어를 기반으로 추측하는 것이 아닙니다. 그 시점까지의 대화의 전체 맥락을 고려하는 것입니다.

  4. 토큰 선택: 가능한 다음 토큰의 범위를 예측한 후 하나를 선택합니다. 이 선택은 모델이 훈련된 데이터를 기반으로 다음에 올 가능성이 가장 높은 토큰인 확률을 기반으로 합니다. 그러나 여기에도 약간의 임의성이 있어 보다 다양하고 자연스러운 응답을 생성하는 데 도움이 된다는 점은 주목할 가치가 있습니다.

  5. 출력 생성: 선택한 토큰은 사람이 읽을 수 있는 텍스트로 다시 변환됩니다. 응답이 완료되지 않은 경우(종종 하나의 토큰 이후에 완료되지 않은 경우) 프로세스가 반복됩니다. 새 토큰이 시퀀스에 추가되고 모델은 업데이트된 컨텍스트를 기반으로 다음 토큰을 예측합니다.

  6. 반복적 구체화: 다음 토큰을 예측하고 이를 시퀀스에 추가하는 이 프로세스는 모델이 중지 지점에 도달할 때까지 반복됩니다. 이는 응답이 특정 길이에 도달하거나, 모델이 문장이나 구절의 끝을 나타내는 토큰을 예측하거나, 프롬프트에 포함된 지침을 이행하는 경우일 수 있습니다.

LLM 교육의 압축 제한 사항

LLM이 토큰을 예측할 때 가중치 내에 포함된 압축된 지식을 효과적으로 검색하고 활용하여 상황에 맞게 적절한 출력을 생성합니다. 이러한 방식으로 LLM 교육은 데이터베이스 압축을 반영합니다. 데이터베이스가 자주 액세스하는 데이터를 신속하게 호출하도록 최적화된 것처럼 LLM은 가중치에서 정보(특정 보간 메모리)를 검색하도록 설계되었습니다. 이 기능을 사용하면 잘 색인화된 정보를 데이터베이스에 쿼리하는 것과 마찬가지로 학습 중에 접한 친숙한 자료에 대한 쿼리에 대한 정확한 응답을 생성할 수 있습니다. 그러나 모델이 덜 익숙하거나 모호한 콘텐츠를 접하면 제한이 발생합니다. 예를 들어, LLM에 성경의 특정 구절을 요청하면 단어별로 인용하지만 훈련 중에 중복적으로 "증인"되지 않은 개념은 단어별로 인용할 수 없습니다. 의미 없는. 그런 의미에서도 LLM은 데이터베이스와 유사합니다. 데이터베이스가 명시적으로 저장된 데이터만 반환할 수 있는 것처럼 LLM은 교육 중에 광범위하게 확인되지 않은 주제에 대한 콘텐츠를 생성하는 데 어려움을 겪을 수 있습니다.

물론, LLM은 단순한 조회를 넘어 사물을 "이해"할 수 있도록 내부적으로 월드 모델을 갖고 있기 때문에 이 비유의 범위를 벗어납니다. 그러나 이러한 과도한 단순화는 LLM이 콘텐츠를 생성하도록 교육하는 방식의 일부 주요 제한 사항을 이해하는 데 도움이 됩니다.

LLM 교육의 추가 제한 사항

또한, 차세대 토큰 예측 시스템에는 텍스트 생성에 대한 근본적인 접근 방식으로 인해 발생하는 다른 고유한 제한 사항이 있습니다.

  • 컨텍스트 창 크기: 주요 제약 조건 중 하나는 모델의 컨텍스트 창 크기, 즉 모델이 예측할 때 고려할 수 있는 최대 텍스트 양(토큰 단위)입니다. 이전 버전의 GPT를 포함한 많은 모델의 경우 이 창은 긴 대화나 문서에 대한 컨텍스트를 유지할 만큼 크지 않습니다. 이로 인해 바로 앞의 토큰을 넘어 컨텍스트를 유지해야 하는 긴 텍스트나 복잡한 토론에서 일관성이 손실될 수 있습니다.

  • 일반화 대 특수성: 이러한 모델은 방대한 데이터세트에 대해 훈련을 받았지만, 이 훈련을 통해 일반화하는 능력으로 인해 일반적이거나 모호하게 관련 있는 콘텐츠를 생성할 수 있습니다. 훈련 데이터 외부에 대한 자세한 이해나 최신 지식이 필요한 매우 구체적이거나 미묘한 응답을 생성하는 데 있어 목표를 놓칠 수 있습니다.

  • 외부 지식 액세스 부족: 다음 토큰 예측 모델은 교육 데이터 세트에 포함된 정보로 제한됩니다. 교육 후 새로운 정보에 접근하거나 통합할 수 없습니다. 즉, 최근 이벤트, 발견 또는 인기 주제와 같은 현재 컨텍스트가 빠르게 구식이 되거나 부족할 수 있습니다.

  • 반복성 및 예측 가능성: 다음 토큰 예측의 알고리즘 특성으로 인해 때때로 반복적이거나 예측 가능한 텍스트 생성이 발생할 수 있습니다. 모델은 주어진 상황에서 통계적으로 따를 가능성이 더 높은 토큰을 선호하는 경우가 많기 때문에 루프에 빠지거나 일반적인 문구를 선호하여 출력의 변동성을 줄일 수 있습니다.

검색 증강 생성(RAG) 설명

앞서 언급한 것처럼 LLM은 훈련 중에 데이터의 다양한 측면에 할당한 가중치를 기반으로 응답을 생성합니다. 이러한 가중치는 입력 데이터의 다양한 요소가 모델에 의해 인식되는 정도를 반영합니다. 사용자 프롬프트에 훈련 데이터에서 크게 표현되지 않은 요소가 포함된 경우 모델은 정확하거나 관련성 있는 응답을 생성하지 못할 수 있습니다.

대화가 LLM의 컨텍스트 창을 초과하거나 프롬프트가 LLM 자체 교육 데이터 세트의 중요한 가중치 제한을 초과하는 경우(즉, 사용자가 찾고 있는 답변을 정확하게 기억할 수 없음을 의미) 모델은 일반적으로 외부 벡터 검색 데이터베이스에 의존합니다. , 이를 통해 사용자의 프롬프트에 추가할 수 있는 관련 컨텍스트나 새로운 데이터를 검색할 수 있습니다. 이 프로세스를 검색 증강 생성(RAG)이라고 합니다.

“성공을 위한 벡터 검색”

RAG 프로세스는 데이터를 벡터로 저장하고 관리하는 고급 유형의 데이터베이스인 벡터 검색 데이터베이스를 통해 가능합니다. 이러한 벡터는 각 차원이 데이터 의미의 일부 측면을 포착하여 복잡한 관계와 속성을 표현할 수 있는 고차원 공간의 데이터를 나타냅니다. 텍스트 및 언어의 맥락에서 벡터 검색 데이터베이스는 임베딩과 같은 기술을 사용하여 텍스트를 수치 벡터로 변환합니다. 이러한 변환을 통해 시스템은 이 다차원 공간에서 해당 벡터 간의 거리를 계산하여 서로 다른 텍스트 조각 간의 의미론적 유사성을 측정할 수 있습니다.

RAG 중에는 쿼리(즉, LLM에 대한 사용자 입력)와 저장된 데이터(예: 기사, 문서 또는 문장)가 모두 텍스트 임베딩을 사용하여 벡터로 변환됩니다. 이러한 임베딩은 텍스트 데이터를 유사한 의미가 벡터 공간의 근접 지점에 매핑되는 수치 벡터로 변환합니다. 그런 다음 데이터베이스는 쿼리 벡터와 저장된 데이터의 벡터 사이의 거리를 계산하여 텍스트의 의미가 얼마나 밀접하게 관련되어 있는지 확인합니다. 데이터베이스는 벡터가 쿼리 벡터에 가장 가까운 데이터 포인트(텍스트 콘텐츠), 즉 의미상 입력과 가장 유사한 데이터 포인트를 검색합니다. 이러한 데이터 포인트는 맥락과 의미 측면에서 "가장 가까운 이웃"으로 간주됩니다.

이러한 최근접 이웃은 기본 LLM이 자체 교육 데이터 내에서 액세스할 수 없었던 상황에 맞는 추가 정보를 제공하므로 LLM 출력의 정확성, 관련성, 풍부함 및 다양성을 크게 향상시킬 수 있습니다. 그중에서도 Sam Altman은 모델 미세 조정보다는 RAG를 사용하여 에이전트를 개발하는 "성공을 위한 벡터 검색" 접근 방식을 옹호했습니다.

미세 조정의 대안인 RAG

LLM 미세 조정에는 특정 작업의 성능을 향상하거나 특정 영역에 대한 이해를 높이기 위해 특정 데이터 세트에 대한 추가 교육을 기반으로 모델의 가중치를 조정하는 작업이 포함됩니다. 이 프로세스는 혁신 속도보다 느릴 뿐만 아니라, 미세 조정된 모델이 업데이트되는 즉시 쓸모 없게 될 뿐만 아니라 새로운 데이터 문제도 해결하지 못합니다.

이와 대조적으로 RAG를 사용하면 모델이 외부 데이터베이스에 실시간으로 액세스하여 현재 쿼리와 관련된 최신 정보를 검색할 수 있습니다. 기본 모델이 최근에 업데이트되거나 미세 조정되지 않은 경우에도 최신 데이터가 포함된 응답을 생성할 수 있습니다. 모델은 외부 정보 소스 검색을 통해 새로운 데이터와 변화하는 상황에 적응할 수 있기 때문에 더 오랫동안 관련성을 유지합니다.

RAG는 ​​딥 러닝과 기존 정보 검색 기술 간의 격차를 효과적으로 해소합니다. 이를 통해 딥 러닝의 강력한 상황별 이해와 정보 검색의 정확성이라는 두 가지 장점을 모두 활용합니다. 이러한 하이브리드 접근 방식을 통해 LLM은 보다 정확하고 상세하며 상황에 맞게 풍부한 응답을 생성할 수 있습니다.

LLM의 추가 제한 사항 해결

미세 조정 외에도 RAG는 표준 LLM과 관련하여 이전에 언급한 문제도 해결합니다.

  • 상황별 이해 확장: RAG는 모델의 응답을 향상시키는 최신 정보 또는 세부 정보를 가져와 기존 LLM의 상황 창을 확장합니다.

  • 구체성 및 정확성 향상: RAG는 훈련 중에 학습된 패턴에만 의존하는 대신 모델이 검색된 문서의 특정 세부 정보를 응답에 주입하여 응답을 더 정확할 뿐만 아니라 현재 특정 쿼리에 맞게 조정할 수 있도록 합니다.

  • 반복성 및 예측 가능성 완화: RAG는 각 쿼리에 대해 서로 다른 정보 세트를 동적으로 가져옴으로써 모델의 응답을 크게 변경할 수 있습니다. 이러한 가변성은 외부 데이터가 대화에 새로운 문구와 세부 사항을 도입하므로 순수 생성 모델에서 흔히 볼 수 있는 반복성과 예측 가능성을 줄이는 데 도움이 됩니다.

RAG의 과제와 필요한 진화

그러나 RAG에는 대기 시간과 인텔리전스 부족이라는 자체적인 문제가 있습니다. 사용자가 프롬프트를 제출하고, LLM이 더 많은 컨텍스트가 필요함을 나타내는 몇 가지 토큰을 내뿜고, 벡터 검색 데이터베이스가 사용자의 입력 프롬프트를 통해 가장 가까운 이웃 컨텍스트를 검색한 다음, 둘 다 최종적으로 전송되는 턴 기반 에이전트 챗봇 대화를 생각해 보세요. 추론을 위해 LLM에 다시 연결합니다. 그런 다음 사용자가 응답할 차례입니다.

이 시스템에서 각 사용자 프롬프트는 각 단계가 총 처리 시간에 추가되는 다단계 작업을 시작합니다. 전체 프로세스의 속도는 벡터 검색 데이터베이스가 필요한 컨텍스트를 얼마나 빨리 검색할 수 있는지에 따라 달라집니다. 데이터베이스 쿼리가 복잡하거나 데이터베이스 자체가 크고 최적으로 인덱싱되지 않은 경우 이 검색으로 인해 상당한 지연이 발생할 수 있습니다. 또한 특히 더 복잡한 대화에서는 응답을 적절하게 개선하기 위해 이러한 생성 및 검색 순서를 여러 번 반복해야 할 수도 있습니다. 이러한 반복 주기는 대기 시간을 증가시켜 내부 데이터에만 의존하는 순수한 생성 모델로 실현 가능한 것보다 상호 작용 속도가 느려질 수 있습니다.

또한 RAG가 강화된 LLM의 지능은 벡터 검색 데이터베이스에서 검색된 정보의 품질과 관련성에 크게 좌우됩니다. 데이터베이스 콘텐츠가 포괄적이지 않거나 최신 상태가 아니거나 잘 관리되지 않은 경우 검색된 정보의 유용성이 제한되어 응답의 전반적인 지능에 영향을 미칠 수 있습니다.

고품질 외부 데이터를 검색하더라도 이 정보를 LLM의 기존 응답 프레임워크에 얼마나 효과적으로 통합할 수 있는지에 대한 문제가 남아 있습니다. 모델은 이러한 외부 데이터를 통합해야 할 뿐만 아니라 상황에 맞게 적절하고 일관성 있는 방식으로 통합해야 합니다. 모델 훈련과 외부 데이터의 특성 사이의 불일치로 인해 기술적으로는 정확하지만 상황에 따라 연결되지 않는 응답이 발생할 수 있습니다.

차세대 LLM

차세대 LLM은 구조화된 데이터 처리(예: TradFi 시장 데이터 및 관련 금융 뉴스의 SQL 데이터베이스)와 함께 벡터 검색 기반 RAG와 기존 교육/미세 조정 방법을 함께 혼합할 가능성이 높습니다. '여기'에 LLM 제공업체가 있고 '저기에' 별도의 벡터 검색 데이터베이스가 있다는 개념은 인덱싱된 작업 메모리를 테라바이트급 벡터화된 컨텍스트가 있는 로컬 SSD로 직관적으로 확장하는 새로운 모델을 통해 대조됩니다.

Space and Time은 이미 SQL 데이터베이스 처리의 정확성과 변조 방지를 검증하는 ZK 증명인 Proof of SQL을 고객에게 제공했으며 최근에는 벡터 검색 검색에도 동일한 기능을 수행하는 Proof of Vector Search를 제공했습니다. 이러한 새로운 증거는 LLM이 새로운 컨텍스트를 통합하고, 더 광범위하고 미묘한 데이터 스펙트럼에 실시간으로 액세스하고, 구조화된 데이터 처리를 통합하여 추적 가능하고 검증 가능한 방식으로 더 통찰력 있는 분석을 생성할 수 있는 미래를 위한 길을 열어줍니다. 이러한 발전은 궁극적으로 LLM의 적용 범위를 확대하고 금융 서비스, 뉴스 집계, 위험 평가 등 최신 데이터에 크게 의존하는 부문에서 활용도를 확장하여 AI의 차세대 물결을 주도할 것입니다. 주도적 혁신.