Haystack

Суть

Haystack 2 — open-source Python framework для компонентных RAG-, search- и agent-pipelines. Его сильная сторона — явный граф совместимых компонентов, а не скрытая цепочка вызовов.

Модель

  • Component — типизированный шаг: converter, embedder, retriever, ranker, generator, router и т. п.
  • Pipeline — направленный мультиграф; поддерживает ветвления, циклы и сериализацию.
  • AsyncPipeline — параллельно выполняет независимые компоненты.
  • Document Store — интерфейс хранения и поиска документов.
  • Tool — функция, component или pipeline, доступные модели.
  • Agent — итеративный tool-use component с явными exit conditions.

Проверка совместимости входов и выходов ловит часть ошибок сборки, но не доказывает корректность данных, retrieval или ответа.

Когда выбирать

  • нужны видимые и заменяемые стадии ingestion/query pipeline;
  • используются hybrid search, filters, routing и reranking;
  • retrieval важнее сложной долгоживущей агентной оркестрации;
  • существующий pipeline удобно предоставить агенту как один контролируемый tool.

Для workflow с богатым состоянием, approvals и длительным возобновлением отдельно сравни orchestration runtime. Для простого RAG сравни с небольшим собственным pipeline.

Production-чек

  • evals отдельно для retrieval и generation;
  • retries, timeouts и лимиты циклов;
  • контроль доступа и фильтры метаданных до выдачи контекста;
  • защита от вредоносных инструкций в документах;
  • tracing, сериализация и совместимость версий компонентов;
  • фактический выигрыш AsyncPipeline по latency.

Официальные источники

Связанные заметки