文件向量数据库组件 — sgcAI | eSeGeCe

Vector Database (File)

TsgcAIDatabaseVectorFile 把嵌入向量及其源文本存储在两个本地文件中。把它赋给一个嵌入向量组件,您就得到了一个随应用程序一起分发的可检索语料库,既不需要服务器,也没有按查询计费的成本。

TsgcAIDatabaseVectorFile

一个无依赖的向量存储。向量及其源文本保存在内存中,批次关闭时写入磁盘,查询时扫描以找出最接近的匹配项。

组件类

TsgcAIDatabaseVectorFile

用途

本地向量存储

平台

Win32 和 Win64

sgcAI 是自包含的。该组件随 sgcAI 一同交付,并附带它所基于的 sgcWebSockets Core 运行时,因此无需购买基础授权。

两个文件构成的可检索语料库

把该组件指向一个输入文件和一个向量文件,再把它赋给一个嵌入向量组件,剩下的它会自动完成。

uses
  sgcAI, sgcAI_DB_Vector_File, sgcAI_OpenAI_Embeddings;

var
  oDB: TsgcAIDatabaseVectorFile;
  oEmbeddings: TsgcAIOpenAIEmbeddings;
begin
  oDB := TsgcAIDatabaseVectorFile.Create(nil);
  oDB.VectorFileOptions.InputFilename  := 'corpus.sgcif';
  oDB.VectorFileOptions.VectorFilename := 'corpus.sgcvf';

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

  // The store can also be driven directly.
  oDB.BeginAddData;
  oDB.AddData('Reset procedure: hold the button for 10 seconds.', vVector);
  oDB.EndAddData;

  Memo1.Text := oDB.QueryData(vQueryVector);
end;
// includes: sgcAI.hpp, sgcAI_DB_Vector_File.hpp

TsgcAIDatabaseVectorFile *oDB = new TsgcAIDatabaseVectorFile(NULL);
oDB->VectorFileOptions->InputFilename  = "corpus.sgcif";
oDB->VectorFileOptions->VectorFilename = "corpus.sgcvf";

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

String vBest = oDB->QueryData(vQueryVector);

关键属性与方法

您最常使用的成员。

VectorFileOptions

InputFilename 保存按 id 索引的源文本,VectorFilename 保存与之对应的向量。把这两个文件随应用程序一起分发,语料库即可离线使用。

导入

BeginAddData 开启一个批次,AddData 添加一段文本及其向量,EndAddData 关闭该批次并把两个文件写入磁盘。

查询

QueryData 接受一个查询向量,扫描已存储的向量以找出最接近的匹配项,并返回其背后的原始文本。

id 控制

OnBeginAddData 让您为某个批次设置起始 id 和 id 标签,使第二次导入可以追加到已有语料库上,而不是覆盖它。

何时使用它

它最适合能够轻松放进内存的语料库,以及必须在无网络连接时也能工作的桌面应用程序。对于大型或共享索引,请改用 Pinecone 存储。

可互换

它实现了与 TsgcAIDatabaseVectorPinecone 相同的接口,因此从本地文件迁移到托管索引只是换一个组件,而不是改代码。

继续探索

在线帮助sgcAI 组件的完整 API 参考和使用指南。
所有 sgcAI 组件浏览全部 15 个组件的完整功能矩阵。
下载免费试用版在桌面应用程序中构建可离线检索的语料库。
价格Single、Team 和 Site 授权,均含完整源代码,无需基础产品。
超值之选:All-AccesseSeGeCe 全部产品,含高级支持,每年 €1,059 起。
查看 All-Access 价格

准备好开始了吗?

下载免费试用版,把可检索的知识库直接装进您的可执行文件。