登録して招待リンクを共有すると、動画再生報酬と紹介報酬を獲得できます。

検索結果 VectorDatabase
VectorDatabase コミュニティ
1つのキーワードが1つのコミュニティです。
コミュニティ作成
アカウント
見つかりません
VectorDatabase を含む検索結果
# Weaviateの機能と実践的な使い方 🚀 全件をベクトル込みで吸い出したい――移行や監査エクスポートで深いページングに苦しんでいませんか? Weaviateのカーソル(Cursor)APIなら、offset制限なしに全オブジェクトを順に取り出せます。 📌 タイトルと機能のURL タイトル: Read all objects URL: 📝 概要 Weaviateの iterator() メソッドは、従来のoffsetベースのページングが抱える性能劣化を避けて、コレクション全体を効率よく走査します。内部的には after オペレータを使うカーソル方式で、深いページングの問題を回避します。全件処理には必ずこのカーソルを使うのが鉄則です。 🔧 機能の説明 ・limit/offset の深いページングは、スキップ件数が増えるほど指数的に遅くなります。これが大規模データで致命的になります。 ・カーソルは after パラメータを使い、前回の続きから取得していくため、この劣化を回避します。 ・Pythonクライアントでは Iterator としてラップされ、for ループで自然に全件を回せます。 ・既定では全プロパティとUUIDを返し、blobやリファレンスのプロパティは含みません。 ・結果の順序は保証されません。系統的な全件アクセス向けの仕組みである点に注意してください。 🛠 実践的な使い方 ・基本形: collection = client.collections.use("WineReview") のあと for item in collection.iterator(): で全件を回し、item.uuid と を取り出します。 ・ベクトルも含めたい場合: for item in collection.iterator(include_vector=True): とし、item.vector でベクトルを取得します。 ・名前付きベクトルは include_vector=['title', 'body'] のように指定するか、True で全ベクトルを取得します。 ・マルチテナントのコレクションは、テナントごとに with_tenant(tenant_name).iterator() を回します。tenants.get() でテナント一覧を取得できます。 🎯 ユースケース ・別クラスタへの移行で、ベクトルとプロパティをまとめて吸い出して書き戻す。 ・監査・コンプライアンス用に、コレクション全件をエクスポートする。 ・再インデックスやバッチ処理で、全オブジェクトに順次アクセスする。 ・マルチテナント環境で、テナント単位に全件を走査して棚卸しする。 ⚠️ 注意点 ・結果の順序は保証されません。順序に依存する処理を組まないでください。 ・カーソルは系統的な全件アクセス向けで、ランダムなクエリ用途には向きません。 ・include_vector=True はベクトル分のデータ転送が増えるため、必要なときだけ有効化してください。 ・マルチテナントでは全テナントを一括で回せないため、テナントごとに iterator を実行する必要があります。 #Weaviate# #VectorDatabase#
もっと見る
# Weaviateの機能と実践的な使い方 🚀 データは入れて終わりではありません。差分更新・条件一括削除・存在チェックまで、Weaviateのオブジェクト操作APIは運用に必要なCRUDを一通り揃えています。マスタ同期の設計を一段引き上げましょう。 📌 タイトルと機能のURL タイトル: Manage objects URL: 📝 概要 Weaviateはコレクション内のオブジェクトに対し、作成・読み取り・更新(部分/全置換)・削除という基本的なCRUD操作を提供します。これらはPythonクライアントの 配下にまとまっており、部分更新と完全置換を使い分けられる点が運用上の要になります。 🔧 機能の説明 主なメソッドは次のとおりです。 ・insert: 単一オブジェクトを追加します。uuid、vector、references も指定できます。 ・insert_many: 複数オブジェクトをまとめて追加します。 ・update: 指定したプロパティだけを変更する部分更新です。他のプロパティは保持されます。 ・replace: オブジェクト全体を新しいデータで上書きします。 ・delete_by_id: UUID指定で1件削除します。 ・delete_many: フィルタ条件に一致する複数オブジェクトを一括削除します。 ・exists: オブジェクトの存在を確認します。 ベクトル化対象に設定したプロパティを更新すると、埋め込みは自動で再生成されます。これは更新時に透過的に行われます。 🛠 実践的な使い方 ・部分更新: properties={"title": "更新後"}) ・完全置換: properties={"title": "新", "body": "全体"}) ・条件一括削除: "brand").equal("OldBrand")) ・再現性のあるIDには weaviate.util の generate_uuid5() を使い、同じ入力から常に同じUUIDを得ます。これで再投入時の重複IDを防げます。 ・delete_many には事前確認用の dry_run(実削除せず対象を確認)と、詳細表示の verbose オプションがあります。 🎯 ユースケース ・商品マスタの差分同期で、価格や説明文だけを update の部分更新で反映する。 ・廃番ブランドの一掃を delete_many(where=...) で条件一括削除する。 ・generate_uuid5 で安定IDを採番し、日次同期で同一データの二重投入を防ぐ。 ・本番削除の前に dry_run で対象件数を確認してから実行する。 ⚠️ 注意点 ・ベクトル化対象プロパティの更新は自動で再ベクトル化され、埋め込みコストが発生します。「説明文の更新=コスト発生」を同期設計に織り込んでください。 ・update は部分更新、replace は全置換です。replace で渡し漏れたプロパティは消えるため取り違えに注意してください。 ・delete_many には QUERY_MAXIMUM_RESULTS による削除上限があり、リソース枯渇を防ぐためのものです。大量削除は分割が必要です。 ・削除は基本的に取り消せません。dry_run での事前確認を習慣にしてください。 #Weaviate# #VectorDatabase#
もっと見る
# Weaviateの機能と実践的な使い方 🚀 「テストのためにベクトルDBサーバを立てるのが面倒」を解決するのがEmbedded Weaviateです。スクリプトから一行で起動し、終われば消える使い捨てDBとして、CIやノートブックに組み込めます。 📌 タイトルと機能のURL タイトル: Embedded Weaviate URL: 📝 概要 Embedded Weaviateは、独立したサーバを立てる代わりに、アプリケーションのコードからWeaviateインスタンスを起動する実験的なデプロイ方式です。インスタンスのライフサイクルはクライアントアプリに紐づき、アプリが終了するとインスタンスも終了します(ただし永続化したデータは残ります)。インフラ準備ゼロで実験を回せるのが最大の利点です。 🔧 機能の説明 ・Pythonでは weaviate.connect_to_embedded(version=..., headers=..., environment_variables=...) でインスタンスを起動します。 ・クライアントは binary_path のキャッシュにバイナリがあるか確認し、無ければGitHubリリースから適切なバイナリ(linux/macOS向け)をダウンロードしてキャッシュします。 ・初回起動時に persistence_data_path に永続データストアが作られ、次回以降は同じデータストアを再利用するため、セッション間でデータが残ります。 ・ライフサイクルはスクリプト終了・アプリ終了・ノートブックの非アクティブ化で終了します。 🛠 実践的な使い方 ・主なパラメータは version(latest・バージョン文字列・バイナリURL)、port(既定8079)、persistence_data_path(既定 ~/.local/share/weaviate)、binary_path(既定 ~/.cache/weaviate-embedded)です。 ・詳細設定は EmbeddedOptions を使い、additional_env_vars={"ENABLE_MODULES": "..."} のようにモジュールやAPIキーを渡します。設定後 client.connect() で接続します。 ・ログが多い場合は environment_variables={"LOG_LEVEL": "error"} で抑制できます。 ・TypeScriptでは別パッケージ weaviate-ts-embedded をインストールして利用します。 🎯 ユースケース ・CIのユニットテストで、検索ロジックの回帰テストを「インフラ準備ゼロ」で実行する。 ・Jupyterノートブックでのプロトタイピングや実験。 ・ローカルでの単一ユーザー向けの軽量な検証用途。 ⚠️ 注意点 ・実験的ステータスであり、APIやパラメータが変更される可能性があります。 ・単一ノード専用で、クラスタリングや分散デプロイには対応しません。本番用途向けではありません。 ・対応OSはLinuxとmacOSのみです。 ・XDG_DATA_HOME や XDG_CACHE_HOME は他のアプリでも広く使われるため、変更すると他に影響が出る恐れがあります。 #Weaviate# #VectorDatabase#
もっと見る