Componente Vector Database Pinecone — sgcAI | eSeGeCe

Vector Database (Pinecone)

TsgcAIDatabaseVectorPinecone mette i tuoi embeddings in un indice Pinecone gestito. L'ingestione raccoglie ogni vettore in un unico upsert e un'interrogazione restituisce il testo memorizzato dietro la corrispondenza più vicina, così un corpus può essere condiviso tra macchine e utenti.

TsgcAIDatabaseVectorPinecone

La controparte in cloud dello store su file. Stessa interfaccia, stesse chiamate, ma l'indice risiede in Pinecone e scala oltre ciò che sta in memoria.

Classe del componente

TsgcAIDatabaseVectorPinecone

Scopo

Indice vettoriale gestito

Piattaforme

Win32 e Win64

sgcAI è autonomo. Questo componente è distribuito dentro sgcAI insieme al runtime sgcWebSockets Core su cui è costruito, quindi non c'è nessuna licenza base da acquistare.

Ingestione su Pinecone, interrogazione da ovunque

Imposta la chiave API, l'ambiente, l'indice e il progetto, poi assegnalo a un componente di embeddings.

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);

Proprietà e metodi principali

I membri che userai più spesso.

PineconeOptions

ApiKey e Environment autenticano il tuo account Pinecone e selezionano la regione in cui risiede l'indice.

PineconeIndexOptions

IndexName e ProjectId individuano l'indice specifico. Entrambi compaiono nella console di Pinecone.

Ingestione

BeginAddData avvia la raccolta, AddData accoda un testo e il suo vettore, e EndAddData invia l'intero batch come un solo upsert invece di una richiesta per ogni blocco.

Interrogazione

QueryData esegue una query di somiglianza sull'indice e restituisce il testo memorizzato dietro la corrispondenza migliore.

Controllo degli id

OnBeginAddData imposta il primo id e l'etichetta dell'id per il batch, così più ingestioni possono convivere in un solo indice senza collidere.

Quando usarlo

Ideale quando il corpus supera le dimensioni di un file locale, quando più applicazioni condividono un solo indice, oppure quando ingestione e interrogazione avvengono su macchine diverse.

Specifiche e riferimenti

Fonti autorevoli per i servizi e i protocolli usati da questo componente.

Continua a esplorare

Guida onlineRiferimento API completo e guida all'utilizzo dei componenti sgcAI.
Tutti i componenti sgcAIEsplora la matrice completa delle funzionalità di tutti e 15 i componenti.
Scarica la versione di prova gratuitaInvia i tuoi embeddings a un indice gestito e interrogali.
PrezziLicenze Single, Team e Site, codice sorgente completo, nessun prodotto base richiesto.
La scelta più conveniente: All-AccessTutti i prodotti eSeGeCe, con Supporto Premium incluso, a partire da €1,059/anno.
Vedi i prezzi All-Access

Pronto per iniziare?

Scarica la versione di prova gratuita e metti il tuo corpus in un indice vettoriale gestito.