Community研究&データ分析github.com

deepset-ai/haystack

エンドツーエンドのLLMオーケストレーションフレームワークで、大規模なドキュメント分析のための堅牢な検索・処理ツールを提供します。

haystack とは?

deepset-ai/haystack は、大規模なドキュメント分析を目的としたエンドツーエンドのLLMオーケストレーションフレームワークです。このスキルは、Claude Code や Cursor などのAIエージェント向けに設計されており、検索拡張生成(RAG)パイプラインやドキュメント処理システムを構築するための堅牢なツールを提供します。Haystack は、ドキュメントのインデックス作成、クエリによる検索、抽出QA、要約、質問応答などの機能をモジュール化されたコンポーネント(例:DocumentStore、Retriever、Reader)として提供し、高い拡張性と柔軟性を実現します。OpenAI、Cohere、Elasticsearch などの外部サービスと連携し、カスタムパイプラインを構築することが可能です。このフレームワークはPythonで実装されており、コードの記述や設定はすべてターゲット言語に翻訳せずに保持することが推奨されます。

対応~Claude Code~Codex CLI~Cursor
npx skills add deepset-ai/haystack

Installed? Explore more 研究&データ分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

haystack は何をしますか?

エンドツーエンドのLLMオーケストレーションフレームワークで、大規模なドキュメント分析のための堅牢な検索・処理ツールを提供します。

概要

Haystack は、大規模なドキュメントコレクションに対して検索、質問応答、要約、抽出QAなどの複雑なタスクを実行するための強力なフレームワークです。モジュール化されたアーキテクチャにより、カスタムパイプラインを簡単に構築でき、さまざまなバックエンド(Elasticsearch、FAISS、Weaviate など)とLLMプロバイダー(OpenAI、Cohere、Hugging Face など)をサポートします。

主な機能

  • ドキュメントインデックス作成: テキストを前処理し、ベクトル埋め込みを生成して、インデックスを作成します。
  • 検索: セマンティック検索、キーワード検索、ハイブリッド検索をサポート。
  • 質問応答: 抽出型QA、生成型QA、マルチホップQAを実現。
  • 要約: ドキュメントや検索結果の要約を生成。
  • カスタムパイプライン: 独自の処理フローを定義可能。

対応プラットフォーム

Haystack は以下のAIエージェントプラットフォームで利用できます:

  • Claude Code
  • Cursor
  • Codex
  • その他のカスタムエージェント

クイックスタート

from haystack import Document
from haystack.document_stores import InMemoryDocumentStore
from haystack.nodes import EmbeddingRetriever
from haystack.pipelines import DocumentSearchPipeline

# ドキュメントストアを作成
document_store = InMemoryDocumentStore(embedding_dim=384)

# ドキュメントを追加
documents = [Document(content="Haystack はLLMオーケストレーションフレームワークです。")]
document_store.write_documents(documents)

# Retriever を設定
retriever = EmbeddingRetriever(
    document_store=document_store,
    embedding_model="sentence-transformers/all-MiniLM-L6-v2"
)

# パイプラインを構築
pipeline = DocumentSearchPipeline(retriever=retriever)

# 検索を実行
results = pipeline.run(query="Haystack とは何ですか?")
print(results)

設定例

# haystack_pipeline.yaml
version: '1.0'
components:
  - name: DocumentStore
    type: ElasticsearchDocumentStore
    params:
      host: localhost
      port: 9200
      index: documents
  - name: Retriever
    type: EmbeddingRetriever
    params:
      embedding_model: sentence-transformers/all-MiniLM-L6-v2
      top_k: 10
  - name: Reader
    type: FARMReader
    params:
      model_name_or_path: deepset/roberta-base-squad2
pipelines:
  - name: query_pipeline
    nodes:
      - name: Retriever
        inputs: [Query]
      - name: Reader
        inputs: [Retriever]

ドキュメントとサポート

詳細なドキュメントは Haystack 公式サイト を参照してください。

ライセンス

Apache License 2.0

関連スキル