Pinecone Vector Database 컴포넌트 — sgcAI | eSeGeCe

Vector Database (Pinecone)

TsgcAIDatabaseVectorPinecone은 임베딩을 관리형 Pinecone 인덱스에 저장합니다. 수집 시 모든 벡터를 하나의 upsert로 묶어 보내고, 조회 시에는 가장 가까운 항목의 저장된 텍스트를 반환하므로, 코퍼스를 여러 컴퓨터와 사용자가 공유할 수 있습니다.

TsgcAIDatabaseVectorPinecone

파일 저장소의 클라우드 버전입니다. 인터페이스와 호출 방식은 같지만 인덱스가 Pinecone에 있어 메모리 한계를 넘어 확장됩니다.

컴포넌트 클래스

TsgcAIDatabaseVectorPinecone

용도

관리형 벡터 인덱스

플랫폼

Win32와 Win64

sgcAI는 자체 완결형 제품입니다. 이 컴포넌트는 기반이 되는 sgcWebSockets Core 런타임과 함께 sgcAI에 포함되어 제공되므로, 별도로 구매해야 할 기본 라이선스가 없습니다.

Pinecone에 수집하고 어디서든 조회하기

API 키와 환경, 인덱스와 프로젝트를 설정한 뒤 임베딩 컴포넌트에 할당하세요.

uses
  sgcAI, sgcAI_DB_Vector_Pinecone, sgcAI_OpenAI_Embeddings;

var
  oDB: TsgcAIDatabaseVectorPinecone;
  oEmbeddings: TsgcAIOpenAIEmbeddings;
begin
  oDB := TsgcAIDatabaseVectorPinecone.Create(nil);
  oDB.PineconeOptions.ApiKey           := 'pc-...';
  oDB.PineconeOptions.Environment      := 'us-west4-gcp-free';
  oDB.PineconeIndexOptions.IndexName   := 'sgc-embeddings';
  oDB.PineconeIndexOptions.ProjectId   := 'abcd1234';

  oEmbeddings := TsgcAIOpenAIEmbeddings.Create(nil);
  oEmbeddings.OpenAIOptions.ApiKey := 'sk-...';
  oEmbeddings.Database := oDB;

  // Every chunk is batched into a single upsert.
  oEmbeddings.CreateEmbeddingsFromFile('manual.txt');

  // Retrieve context for a question.
  Memo1.Text := oEmbeddings.GetEmbedding('How do I reset the device?', '');
end;
// includes: sgcAI.hpp, sgcAI_DB_Vector_Pinecone.hpp

TsgcAIDatabaseVectorPinecone *oDB = new TsgcAIDatabaseVectorPinecone(NULL);
oDB->PineconeOptions->ApiKey         = "pc-...";
oDB->PineconeOptions->Environment    = "us-west4-gcp-free";
oDB->PineconeIndexOptions->IndexName = "sgc-embeddings";
oDB->PineconeIndexOptions->ProjectId = "abcd1234";

oDB->BeginAddData();
oDB->AddData("Reset procedure: hold the button for 10 seconds.", vVector);
oDB->EndAddData();

String vBest = oDB->QueryData(vQueryVector);

주요 속성 & 메서드

가장 자주 사용하게 되는 멤버들입니다.

PineconeOptions

ApiKeyEnvironment가 Pinecone 계정 인증을 수행하고 인덱스가 위치한 리전을 선택합니다.

PineconeIndexOptions

IndexNameProjectId가 특정 인덱스를 지정합니다. 두 값 모두 Pinecone 콘솔에서 확인할 수 있습니다.

수집

BeginAddData가 수집을 시작하고, AddData가 텍스트와 벡터를 큐에 넣으며, EndAddData가 청크마다 요청을 보내는 대신 배치 전체를 하나의 upsert로 전송합니다.

조회

QueryData는 인덱스에 유사도 질의를 보내고, 가장 잘 맞는 항목의 저장된 텍스트를 반환합니다.

ID 제어

OnBeginAddData가 배치의 첫 ID와 ID 레이블을 지정하므로, 여러 번의 수집이 충돌 없이 하나의 인덱스에 공존할 수 있습니다.

사용 시점

코퍼스가 로컬 파일 규모를 넘어설 때, 여러 애플리케이션이 하나의 인덱스를 공유할 때, 또는 수집과 조회가 서로 다른 컴퓨터에서 일어날 때 가장 적합합니다.

사양 & 참고 자료

이 컴포넌트가 사용하는 서비스와 프로토콜의 공식 자료입니다.

계속 살펴보기

온라인 도움말sgcAI 컴포넌트의 전체 API 레퍼런스와 사용 안내서.
sgcAI 전체 컴포넌트15개 컴포넌트 전체의 기능 매트릭스를 살펴보세요.
무료 체험판 다운로드임베딩을 관리형 인덱스로 보내고 조회해 보세요.
가격Single, Team, Site 라이선스, 전체 소스 코드 포함, 기본 제품 불필요.
최고의 가성비: All-Access모든 eSeGeCe 제품과 프리미엄 지원이 포함되어 연 €1,059부터 이용할 수 있어요.
All-Access 가격 보기

시작할 준비가 되셨나요?

무료 체험판을 다운로드하고 코퍼스를 관리형 벡터 인덱스에 올려 보세요.