Agent Skills by ALSEL
Anthropic ClaudeLLM・AI開発⭐ リポ 0品質スコア 50/100

pinecone

本番AIアプリケーション向けのマネージドベクターデータベース。フルマネージドかつオートスケーリングに対応し、ハイブリッド検索(密+疎)、メタデータフィルタリング、名前空間をサポート。レイテンシは100ms未満(p95)を実現。本番RAG、レコメンデーションシステム、大規模セマンティック検索に最適で、サーバーレス・マネージドインフラを活用したい場合に特に有効。

description の原文を見る

Managed vector database for production AI applications. Fully managed, auto-scaling, with hybrid search (dense + sparse), metadata filtering, and namespaces. Low latency (<100ms p95). Use for production RAG, recommendation systems, or semantic search at scale. Best for serverless, managed infrastructure.

SKILL.md 本文

Pinecone - マネージド ベクトルデータベース

本番AI アプリケーション向けのベクトルデータベース。

Pinecone を使う時機

以下の場合に使用:

  • マネージド、サーバーレスのベクトルデータベースが必要
  • 本番環境の RAG アプリケーション
  • 自動スケーリングが必要
  • 低レイテンシが重要 (<100ms)
  • インフラストラクチャを管理したくない
  • ハイブリッド検索 (デンスベクトル + スパースベクトル) が必要

メトリクス:

  • フルマネージド SaaS
  • 数十億のベクトルまで自動スケーリング
  • p95 レイテンシ <100ms
  • 99.9% アップタイム SLA

代替案を検討:

  • Chroma: セルフホスト、オープンソース
  • FAISS: オフライン、純粋な類似度検索
  • Weaviate: セルフホスト、より多くの機能

クイックスタート

インストール

pip install pinecone-client

基本的な使い方

from pinecone import Pinecone, ServerlessSpec

# 初期化
pc = Pinecone(api_key="your-api-key")

# インデックス作成
pc.create_index(
    name="my-index",
    dimension=1536,  # Must match embedding dimension
    metric="cosine",  # or "euclidean", "dotproduct"
    spec=ServerlessSpec(cloud="aws", region="us-east-1")
)

# インデックスに接続
index = pc.Index("my-index")

# ベクトルをアップサート
index.upsert(vectors=[
    {"id": "vec1", "values": [0.1, 0.2, ...], "metadata": {"category": "A"}},
    {"id": "vec2", "values": [0.3, 0.4, ...], "metadata": {"category": "B"}}
])

# クエリ実行
results = index.query(
    vector=[0.1, 0.2, ...],
    top_k=5,
    include_metadata=True
)

print(results["matches"])

コア操作

インデックス作成

# サーバーレス (推奨)
pc.create_index(
    name="my-index",
    dimension=1536,
    metric="cosine",
    spec=ServerlessSpec(
        cloud="aws",         # or "gcp", "azure"
        region="us-east-1"
    )
)

# ポッドベース (一貫した性能向け)
from pinecone import PodSpec

pc.create_index(
    name="my-index",
    dimension=1536,
    metric="cosine",
    spec=PodSpec(
        environment="us-east1-gcp",
        pod_type="p1.x1"
    )
)

ベクトルをアップサート

# 単一アップサート
index.upsert(vectors=[
    {
        "id": "doc1",
        "values": [0.1, 0.2, ...],  # 1536 dimensions
        "metadata": {
            "text": "Document content",
            "category": "tutorial",
            "timestamp": "2025-01-01"
        }
    }
])

# バッチアップサート (推奨)
vectors = [
    {"id": f"vec{i}", "values": embedding, "metadata": metadata}
    for i, (embedding, metadata) in enumerate(zip(embeddings, metadatas))
]

index.upsert(vectors=vectors, batch_size=100)

ベクトルをクエリ

# 基本的なクエリ
results = index.query(
    vector=[0.1, 0.2, ...],
    top_k=10,
    include_metadata=True,
    include_values=False
)

# メタデータフィルタ付き
results = index.query(
    vector=[0.1, 0.2, ...],
    top_k=5,
    filter={"category": {"$eq": "tutorial"}}
)

# ネームスペースクエリ
results = index.query(
    vector=[0.1, 0.2, ...],
    top_k=5,
    namespace="production"
)

# 結果にアクセス
for match in results["matches"]:
    print(f"ID: {match['id']}")
    print(f"Score: {match['score']}")
    print(f"Metadata: {match['metadata']}")

メタデータフィルタリング

# 完全一致
filter = {"category": "tutorial"}

# 比較演算子
filter = {"price": {"$gte": 100}}  # $gt, $gte, $lt, $lte, $ne

# 論理演算子
filter = {
    "$and": [
        {"category": "tutorial"},
        {"difficulty": {"$lte": 3}}
    ]
}  # Also: $or

# In演算子
filter = {"tags": {"$in": ["python", "ml"]}}

ネームスペース

# ネームスペース単位でデータを分割
index.upsert(
    vectors=[{"id": "vec1", "values": [...]}],
    namespace="user-123"
)

# 特定のネームスペースをクエリ
results = index.query(
    vector=[...],
    namespace="user-123",
    top_k=5
)

# ネームスペースを一覧表示
stats = index.describe_index_stats()
print(stats['namespaces'])

ハイブリッド検索 (デンス + スパース)

# スパースベクトル付きアップサート
index.upsert(vectors=[
    {
        "id": "doc1",
        "values": [0.1, 0.2, ...],  # Dense vector
        "sparse_values": {
            "indices": [10, 45, 123],  # Token IDs
            "values": [0.5, 0.3, 0.8]   # TF-IDF scores
        },
        "metadata": {"text": "..."}
    }
])

# ハイブリッドクエリ
results = index.query(
    vector=[0.1, 0.2, ...],
    sparse_vector={
        "indices": [10, 45],
        "values": [0.5, 0.3]
    },
    top_k=5,
    alpha=0.5  # 0=sparse, 1=dense, 0.5=hybrid
)

LangChain 統合

from langchain_pinecone import PineconeVectorStore
from langchain_openai import OpenAIEmbeddings

# ベクトルストア作成
vectorstore = PineconeVectorStore.from_documents(
    documents=docs,
    embedding=OpenAIEmbeddings(),
    index_name="my-index"
)

# クエリ実行
results = vectorstore.similarity_search("query", k=5)

# メタデータフィルタ付き
results = vectorstore.similarity_search(
    "query",
    k=5,
    filter={"category": "tutorial"}
)

# リトリーバーとして使用
retriever = vectorstore.as_retriever(search_kwargs={"k": 10})

LlamaIndex 統合

from llama_index.vector_stores.pinecone import PineconeVectorStore

# Pinecone に接続
pc = Pinecone(api_key="your-key")
pinecone_index = pc.Index("my-index")

# ベクトルストア作成
vector_store = PineconeVectorStore(pinecone_index=pinecone_index)

# LlamaIndex で使用
from llama_index.core import StorageContext, VectorStoreIndex

storage_context = StorageContext.from_defaults(vector_store=vector_store)
index = VectorStoreIndex.from_documents(documents, storage_context=storage_context)

インデックス管理

# インデックス一覧
indexes = pc.list_indexes()

# インデックス情報取得
index_info = pc.describe_index("my-index")
print(index_info)

# インデックス統計取得
stats = index.describe_index_stats()
print(f"Total vectors: {stats['total_vector_count']}")
print(f"Namespaces: {stats['namespaces']}")

# インデックス削除
pc.delete_index("my-index")

ベクトル削除

# ID で削除
index.delete(ids=["vec1", "vec2"])

# フィルタで削除
index.delete(filter={"category": "old"})

# ネームスペース内の全て削除
index.delete(delete_all=True, namespace="test")

# インデックス全体削除
index.delete(delete_all=True)

ベストプラクティス

  1. サーバーレスを使用 - 自動スケーリング、コスト効率的
  2. バッチアップサート - より効率的 (1バッチ100-200件)
  3. メタデータを追加 - フィルタリングを有効化
  4. ネームスペースを使用 - ユーザー/テナント単位でデータを分離
  5. 使用状況を監視 - Pinecone ダッシュボードで確認
  6. フィルタを最適化 - 頻繁にフィルタされるフィールドにインデックスを貼る
  7. フリーティアでテスト - 1インデックス、10万ベクトル無料
  8. ハイブリッド検索を使用 - より高い品質
  9. 適切なディメンション設定 - 埋め込みモデルに合わせる
  10. 定期的なバックアップ - 重要なデータをエクスポート

パフォーマンス

操作レイテンシ備考
Upsert~50-100msバッチ単位
Query (p50)~50msインデックスサイズに依存
Query (p95)~100msSLA 目標
Metadata filter~+10-20ms追加オーバーヘッド

価格 (2025年現在)

サーバーレス:

  • 読み取りユニット 100万件あたり $0.096
  • 書き込みユニット 100万件あたり $0.06
  • ストレージ GB/月あたり $0.06

フリーティア:

  • サーバーレスインデックス 1個
  • ベクトル 10万個 (1536次元)
  • プロトタイピングに最適

リソース

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
davila7
リポジトリ
davila7/claude-code-templates
ライセンス
MIT
最終更新
不明

Source: https://github.com/davila7/claude-code-templates / ライセンス: MIT

関連スキル

OpenAILLM・AI開発⭐ リポ 6,054

agent-browser

AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。

by JimmyLv
汎用LLM・AI開発⭐ リポ 1,982

anyskill

AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 1,982

engram

AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 21,584

skyvern

AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。

by Skyvern-AI
汎用LLM・AI開発⭐ リポ 1,149

pinchbench

PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。

by pinchbench
汎用LLM・AI開発⭐ リポ 4,693

openui

OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。

by thesysdev
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: davila7 · davila7/claude-code-templates · ライセンス: MIT