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

検索結果 Weaviate
Weaviate コミュニティ
1つのキーワードが1つのコミュニティです。
コミュニティ作成
アカウント
見つかりません
Weaviate を含む検索結果
# Weaviateの機能と実践的な使い方 🚀 埋め込みAPIの呼び出しコードをアプリから消したいと思ったことはありませんか。Weaviateのモデルプロバイダ統合を使えば、ベクトル化も生成もリランクも、コレクション設定に書くだけで自動的に動きます。 📌 タイトルと機能のURL タイトル: Model provider integrations URL: 📝 概要 Weaviateは、OpenAI・Cohere・Google・AWS・Azure OpenAI・Mistral・Anthropic・Hugging Face・Ollama など20以上のモデルプロバイダと統合しています。これらを「投入時の自動埋め込み」「クエリ文の自動埋め込み」「RAGの生成」「検索結果のリランク」に組み込めます。アプリ側で埋め込みAPIを呼んでベクトルを渡すコードが不要になるのが最大の利点です。 🔧 機能の説明 統合は大きく次の3つの役割に分かれます。 ・Vectorizer(埋め込み): テキストやマルチモーダルのベクトル化を担当します。 ・Generative(生成): RAGパイプライン向けのテキスト生成を担当します。 ・Reranker(リランク): 検索結果の並べ替えを担当します(Cohere、Jina AI、NVIDIA、Voyage AI などが提供)。 提供形態も2種類あります。API型プロバイダ(OpenAI、Google、Cohere、AWS Bedrock など)は外部APIを呼び出し、ローカルホスト型(Ollama、Hugging Face Transformers、Model2vec)は自分のインフラ上で動かします。API型モジュールは v1.33 以降は既定で有効です。 🛠 実践的な使い方 ・コレクション作成時に `Configure.Vectors`(旧 `Configure.Vectorizer`)で埋め込みプロバイダを指定すると、投入時もクエリ時も自動でベクトル化されます。 ・生成は `Configure.Generative` でプロバイダを指定し、検索結果に対してRAGを実行します。 ・リランカーは `Configure.Reranker` で指定します。 ・自動ベクトル化の対象は `text` / `text[]` 型のプロパティで、プロパティ名をアルファベット順に並べて連結し、必要に応じてコレクション名を先頭に付けてからモデルに送ります(プロパティ単位で対象外にも設定可能)。 🎯 ユースケース ・社内文書検索: 投入時に本文を自動でベクトル化し、検索時はクエリ文を同じモデルで自動ベクトル化して整合させます。 ・モデルの差し替え: ベンダーやモデルを変えたいとき、コレクション設定の変更だけで対応できます。 ・閉域要件: Ollama などローカルホスト型を使えば、データを外部に出さずに埋め込み生成まで完結します。 ・RAGチャット: 検索と生成を同一の設定内で組み合わせ、外部のオーケストレーションを最小化できます。 ⚠️ 注意点 ・API型プロバイダはAPIキーが必須で、利用に応じた課金が発生します。 ・レート制限は各プロバイダのポリシーに従います。大量投入時は注意が必要です。 ・v1.27 より前のバージョンでは、連結した文字列が小文字化されてからモデルに送られます。 ・v1.33 より前ではAPI型モジュールを使うため `ENABLE_API_BASED_MODULES` を有効化する必要があります。 #Weaviate# #Embeddings#
もっと見る
# 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#
もっと見る
🎨 どのスタジオにも「final_final_v7.png」があります。過去作を探すより作り直す方が早い——そんな笑えない現実に、AIは別の角度から効きます。 クリエイティブの現場では、作品が整理の追いつかない速さで溜まっていきます。厄介なのは、キーワード検索が使えないこと。「blue environmental concept」で探しても、ファイル名が ENV_ALTSTYLING_DARK_V4 なら一件もヒットしません。言葉とファイル名の語彙が、そもそも噛み合っていないのです。 そこで発想を変えます。画像や映像を、意味を数値で表す「ベクトル埋め込み」に変換して保存する。すると「異なる言い回しでも意味が近ければベクトル空間で近くに並ぶ」ので、自然文で意味検索ができます。基盤にはWeaviateを使い、ベクトルの近さとメタデータのフィルタ(プロジェクト・日付・種別)を組み合わせるハイブリッド検索で、目的の素材にたどり着けます。数万点のコンセプト画像から「cold, forested biome that feels visually distinct」で探す、Bロールをショットの特徴で引く、過去のドラムの質感を掘り出す——命名規則を知らなくても。 ここでのAIは、新しいコンテンツを生成する主役ではなく、既存の作業をアクセスしやすくする「インフラ層」です。整理と検索に奪われていた時間を創作に戻す。Building Foundry: AI isn't replacing creativity, it's removing friction は、その地味だが本質的な価値を語っています。 🔗 #VectorSearch# #CreativeAI#
もっと見る
AIエージェントをエンタープライズシステムに組み込むプラクティス 【階層化メモリ -- 4層メモリとコンテキスト・ブローカー】 💡 毎回ゼロから始まるAIエージェントは、何度も同じ質問をする新入社員と同じです。記憶を4層に分離し、「いま本当に必要な情報だけ」を動的に組み立てる仕組みが、実用レベルのエージェントを作ります。 🔥 解決する課題 - セッション跨ぎの文脈喪失:セッション間・エージェント間で文脈が失われ毎回やり直しになる - 文脈窓の有限性:全履歴を詰め込むとコスト・精度が劣化する - 記憶肥大:無制限な蓄積でコスト・プライバシーリスク・文脈汚染が増大する - Lost in the middle:大量コンテキスト投入でかえって回答精度が下がる 🏗️ 提案パターン メモリを4層に分離します。ワーキング(現セッション・揮発)、エピソード(過去要約・ユーザー単位)、セマンティック(RAG対象の知識)、組織知識(人・部署・関係の知識グラフ)。各層に適切な保存先・TTL・ACLを設定します。コンテキスト・ブローカーがユーザーの意図に応じて各層から情報を取得し、トークン予算内で優先度付け・要約・圧縮を行い、最も関連の高い情報だけでコンテキストを組み立てます。 ✅ 選定条件 - 採用する場合:セッション跨ぎ・エージェント跨ぎで文脈を引き継ぐ継続支援型エージェント - 採用しない場合:一発完結のステートレスタスク、固定の少量コンテキストで足りる用途 ⚠️ 落とし穴 - エピソードメモリの肥大化:生ログではなく要約を残し、重要度スコア + TTL + 時間減衰で制御します - コンテキストブローカーの品質:リランキングの精度が低いと不要情報が混入し、精度が劣化します - ACLの層間整合:メモリ層ごとにACLが異なる場合、集約時に最も厳しい権限に縮退させる設計が必要です 🛠️ 実装方針 1. ベクタDB(Pinecone / Weaviate / pgvector)をセマンティックメモリ層に、Neo4jを組織知識グラフ層に配置し、各層に保存先・TTL・ACLを設定します 2. エピソードメモリは生ログではなく要約パイプラインを通し、重要度スコア+時間減衰で自動的に忘却・圧縮する仕組みを実装します 3. コンテキスト・ブローカーをリランキング(Cohere Rerank / cross-encoder)で構築し、ユーザーの意図に応じてトークン予算(目安8,000トークン)内で最も関連の高い情報を動的に組み立てます 4. Mem0 / Zepなどのメモリ管理フレームワークを活用し、セッション跨ぎ・エージェント跨ぎのデータ引き継ぎを実装します 5. 各メモリ層にACLタグを付与し、集約時にコンテキスト・ファイアウォール(P10)と連携して最も厳しい権限に縮退させます #AIエージェント# #エンタープライズアーキテクチャ#
もっと見る