ベクトルの更新と削除

Pineconeを使ったAIアプリケーション開発

James Chapman

Curriculum Manager, DataCamp

常にフレッシュに保つには

  • データを常に最新にする
  • クエリ性能を最適化
  • データ整合性を維持

取得、利用、検証、更新/削除までのデータライフサイクル。

Pineconeを使ったAIアプリケーション開発

ベクトル値を更新

index.fetch(ids=['1'])
{'namespace': '',
 'usage': {'read_units': 1},
 'vectors': {'1': {'id': '1',
                   'metadata': {"genre": "action", "year": 2023},
                   'values': [-0.0131468913, ...]}
            }
}
Pineconeを使ったAIアプリケーション開発

ベクトル値を更新

index.update(

id="1",
values=[0.370695321, ...]
)
  • 確認: リスト長 = インデックスの次元数
1 https://docs.pinecone.io/docs/update-data
Pineconeを使ったAIアプリケーション開発

ベクトル値を更新

index.fetch(ids=['1'])
{'namespace': '',
 'usage': {'read_units': 1},
 'vectors': {'1': {'id': '1',
                   'metadata': {"genre": "action", "year": 2023},
                   'values': [0.370695321, ...]}
            }
}
Pineconeを使ったAIアプリケーション開発

ベクトルのメタデータを更新

index.update(
    id="1",
    set_metadata={"genre": "comedy", "rating": 5}
)
1 https://docs.pinecone.io/docs/update-data
Pineconeを使ったAIアプリケーション開発

ベクトルのメタデータを更新

index.fetch(ids=['1'])
{'namespace': '',
 'usage': {'read_units': 1},
 'vectors': {'1': {'id': '1',
                   'metadata': {"genre": "comedy", "year": 2023, "rating": 5},
                   'values': [0.370695321, ...]}
            }
}
Pineconeを使ったAIアプリケーション開発

値とメタデータを同時に更新

index.update(
    id="1",
    values=[-0.31956, ...],
    set_metadata={"genre": "thriller", "ratings": 4}
)
1 https://docs.pinecone.io/docs/update-data
Pineconeを使ったAIアプリケーション開発

ベクトルの削除

index.delete(
    ids=["1", "2"]
)
1 https://docs.pinecone.io/docs/delete-data
Pineconeを使ったAIアプリケーション開発

メタデータでベクトルを削除

index.delete(
    filter={
        "genre": {"$eq": "action"},
    }
)
Pineconeを使ったAIアプリケーション開発

ネームスペース内のベクトルを削除

index.delete(delete_all=True, namespace='namespace1')
  • 注意: ネームスペースも削除されます!
1 https://docs.pinecone.io/docs/delete-data
Pineconeを使ったAIアプリケーション開発

演習に進みましょう!

Pineconeを使ったAIアプリケーション開発

Preparing Video For Download...