코그너티브 코어 (Cognitive Core)

코그너티브 코어(Cognitive Core)는 가상 에이전트의 핵심 구성 요소로, 작업 실행을 위해 대규모 언어 모델(LLM)을 활용하고 가상 에이전트의 고유한 성격 및 중앙 지능을 구현합니다.

대규모 언어 모델(LLM)에 대하여

현재 LLM은 오픈 소스 모델을 활용합니다. 각 가상 에이전트 성격 및 중앙 지능은 아래 접근 방식을 사용하여 통합됩니다.

  • 성격 개발 각 가상 에이전트의 배경 스토리, 지식, 성격 특성 및 특성은 RAG(Retrieval-Augmented Generation) 방법을 사용하여 개발됩니다. 이 접근 방식은 언어 모델의 생성 기능과 검색 메커니즘을 결합하여 AI가 기술 자료에서 관련 정보를 가져와 응답을 강화할 수 있도록 합니다. 이 기술은 광범위한 데이터를 활용하여 캐릭터의 상호 작용을 보다 다양하고 생생하게 만들 수 있기 때문에 가상 에이전트의 독특하고 매력적인 성격을 만드는 데 특히 효과적입니다.

  • 중앙정보국(Central Intelligence)

  • 상당한 데이터 세트가 있는 가상 에이전트의 경우 오픈 소스 모델의 직접 미세 조정이 사용됩니다. 이 프로세스에는 대규모 데이터 세트에 대해 특별히 모델의 매개 변수를 조정하여 가상 에이전트의 지정된 도메인 컨텍스트에서 정확하고 효과적으로 응답할 수 있는 기능을 향상시키는 작업이 포함됩니다. 필요에 따라 명령 기반 미세 조정이 적용됩니다. 여기에는 특정 지침이나 지침을 따르도록 모델을 훈련시키고 사전 정의된 규칙 또는 목표에 따라 응답과 조치를 더욱 구체화하는 것이 포함됩니다. 데이터 세트가 더 작으면 정보가 벡터 데이터베이스에 저장됩니다. 그런 다음 이 데이터는 RAG 방법을 사용하여 모델에 공급되어 AI가 이 제한된 정보 세트에 효율적으로 액세스할 수 있도록 합니다.

데이터 전처리

오늘날의 다양한 데이터 환경에서 관련 데이터 세트는 텍스트(교과서, 포럼, Wiki), 비디오 및 오디오와 같은 다양한 형식으로 제공됩니다. 현재 중심 캐릭터 코어는 주로 텍스트 기반 대규모 언어 모델(LLM)에 의존하고 있으며, 따라서 주로 텍스트 기반 학습 데이터를 통합합니다. 따라서 학습 데이터가 비디오 또는 오디오와 같은 텍스트가 아닌 형식으로 존재하는 경우 모델 학습을 위해 텍스트로 변환해야 합니다. 표준 데이터 처리 규칙은 모델 학습 전에 적용됩니다.

  • 데이터 정리: 이 단계에서는 데이터 세트를 정리하여 노이즈와 nullity를 제거합니다. 데이터 규칙은 데이터 무결성을 유지하고 데이터 품질을 개선하기 위해 적용됩니다.

  • 데이터 변환: 데이터 세트는 모델 학습에 해석 가능하고 사용할 수 있도록 변환 및 표준화를 거칩니다.

더 나은 사용자 경험을 위해 사용자 대화 기억

Virtual은 인간과 유사한 메모리 기능을 밀접하게 모방하고 사용자와의 개인화된 상호 작용을 용이하게 하는 것을 목표로 하는 영구 메모리 시스템으로 설계되었습니다. 이를 위해 시스템은 두 가지 주요 과제를 해결합니다.

  1. 사용자 및 대화 식별 및 회수:

  • 이 시스템은 각 사용자와 해당 대화를 안정적으로 식별하도록 설계되어 이러한 상호 작용을 정확하게 기억하고 참조할 수 있는 기능을 보장합니다.

2. 긴 대화 저장 및 메모리 처리:

  • 확장된 대화를 관리하고 저장하는 것은 메모리 처리 측면에서 어려운 과제입니다. 이 시스템은 이러한 긴 대화를 효율적으로 처리하도록 조정되었습니다.

고유 식별자 (Unique Identifier)

Virtual에 참여하는 각 사용자에게는 고유 식별자가 할당됩니다. 이 식별자는 대화 연속성과 사용자 특수성을 유지하는 데 중추적인 역할을 합니다.

샘플 데이터베이스 테이블

샘플 데이터베이스 테이블은 다음과 같이 구성됩니다.

CREATE TABLE Messages (
    message_id VARCHAR(32) NOT NULL PRIMARY KEY,
    conversation_id VARCHAR(32) NOT NULL,
    user_id VARCHAR(32) NOT NULL,
    prompt TEXT NOT NULL,
    timestamp DATETIME NOT NULL,
    response TEXT, 
    FOREIGN KEY (conversation_id) REFERENCES Conversations(conversation_id)
);

벡터 데이터베이스

메시지는 임베딩 기술을 사용하여 벡터화됩니다. 이 벡터화 프로세스는 텍스트 메시지를 효율적인 저장 및 검색에 적합한 숫자 벡터 형식으로 변환합니다.

getPrompt('identifier', 'context', 'params') 함수가 호출되면 시스템은 사용자 식별자를 사용하여 벡터 데이터베이스에서 연관된 모든 메시지를 검색합니다. 이 알고리즘은 대규모 언어 모델(LLM) 내에서 이러한 벡터를 처리하는 검색 방법을 채택하여 LLM이 dApp에서 추가적인 맥락 입력 없이 대화의 맥락을 이해할 수 있도록 합니다. LLM은 검색된 대화 내역을 기반으로 응답을 생성합니다. 이 접근 방식은 응답이 각 사용자의 진행 중인 대화 스레드에 맞게 맥락적으로 관련되고 개인화되도록 보장합니다.

Cognitive Core에 기여하는 방법에 대해 자세히 알아보세요.

Last updated