向量數據庫可以有效地相似性搜索和高維數據的索引。向量數據庫對於機器學習應用程序特別有用,在機器學習應用程序中,數據點通常表示為高維向量。這些數據庫允許用戶根據數據點的嵌入進行相似性搜索,從而更容易根據內容或功能找到相關信息。
在這個檢查項目中,我使用編織作為向量數據庫,並與OpenAI的嵌入式( text-embedding-ada-002-v2 )集成來創建並保存數據集的矢量。例如數據集,我從他們的網站(4000多家公司)中刪除了所有Y組合器,並在關鍵數據點中創建了向量(請參閱/examples/y-combinator/schema.json ,有關更多詳細信息)。我還將數據集上傳到Kaggle。
作為第二個例子,我從保羅·穆尼(Paul Mooney)創建的卡格格爾(Kaggle)下載了《指環王》字符數據集。
在根目錄中創建一個.env文件,然後添加變量:OpenAi_Apikey和data_path。 data_path變量應該是數據目錄的途徑:
OPENAI_APIKEY=XXXXXXXXXXXXXXXXX
DATA_PATH=C:Usersyour-user-namepathtoprojectdata
要使用此代碼,您需要使用以下方式安裝依賴項:
npm install
要使用數據庫,您將需要設置數據庫的Docker實例。
docker-compose up -d --build
填充編織數據庫(確保Docker正在運行)。您可以使用/examples目錄中提供的一個示例數據集(當前y-combinator和lotr-character )。
運行populate將使用示例數據集中的數據創建一個編織數據庫(並使用同一類刪除所有現有數據)。我在OpenAi使用中支付了〜$ 0.20,以填充Y組合數據集
npm run populate --dataset=<example-name>
如果成功,您可以通過編織GraphQl API輕鬆查看和查詢數據。您可以使用Apollo GraphQl沙盒探索數據並運行查詢。只需輸入圖形URL( http://localhost:8080/v1/graphql )。
如果您想獲得一些額外的樂趣,則可以使用TensorFlow的嵌入投影儀可視化數據。要獲取.TSV文件所需的需要使用以下命令(將它們放入/example/<example-name>文件夾中):
npm run tsv --dataset=<example-name>
這些可以上傳到網站以可視化您的數據。
要創建自己的數據,請遵循示例:
/examples中使用數據集名稱創建一個新文件夾。schema.json文件。此文件應包含您數據的模式。data.json文件。此文件應包含數據集的數據。npm run populate --dataset=<your-dataset-name>用數據填充數據庫。