AIKraft Agents

deepset-ai/haystack

Open-source AI orchestration framework for building context-engineered, production-ready LLM applications. Design modular pipelines and agent workflows with explicit control over retrieval, routing, memory, and generation. Built for scalable agents, RAG, multimodal applications, semantic search, and conversational systems.

Агенты⭐ 26 929MDXпоследний релиз: v3.4.1
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

Haystack — это open-source фреймворк на Python для создания масштабируемых LLM-приложений с модульными пайплайнами и агентами.

Зачем нужен

Инструмент решает задачу построения production-ready систем, предоставляя явный контроль над этапами извлечения информации (retrieval), маршрутизации, памяти и генерации. Он полезен для инженеров, которым нужна прозрачная архитектура для глубокой кастомизации и надежного развертывания сложных AI-решений.

Что можно реализовать

  • Построение масштабируемых систем RAG (Retrieval-Augmented Generation)
  • Создание мультимодальных приложений, работающих с разными типами данных
  • Разработка семантического поиска и систем ответов на вопросы
  • Проектирование автономных AI-агентов с сложными рабочими процессами

Ключевые возможности

  • Модульная архитектура пайплайнов и рабочих процессов агентов
  • Явный контроль над извлечением, маршрутизацией, памятью и генерацией
  • Поддержка семантического поиска и мультимодальных сценариев
  • Открытая лицензия и активное сообщество (Discord, GitHub)

👤 Кому подойдёт: разработчики и AI-инженеры, строящие сложные LLM-приложения

Релизы

v3.4.1patchbreaking
🕐 15 дн назад · релиз на GitHub ↗

Исправлена уязвимость в certifi: требуется версия >=2026.10.19 из-за компрометации ключей CA eMudhra/emSign.

  • Breaking: Требование certifi>=2026.10.19: старые версии доверяют скомпрометированным CA eMudhra/emSign (GHSA-6q48-6c7w-9gw2).
  • Fixed: Обновлён транзитивный зависимости certifi через httpx и posthog для устранения риска компрометации.
  • Added: Рекомендация: если вы фиксируете (pin) certifi, обновите версию до 2026.10.19 или новее.
v3.4.0majorbreaking
🕐 21 дн назад · релиз на GitHub ↗

Haystack v3.4.0: поддержка Python 3.15, новый инструмент для агентов и исправления сплиттеров документов.

  • Breaking: Удалена поддержка Python 3.10; минимальная версия теперь 3.11.
  • Added: Добавлен ToolResultOffloadCompactor для компактного хранения контекста агентов без потери результатов инструментов.
  • Fixed: Исправлено поведение сплиттеров: теперь корректно обрабатываются разрывы страниц, пробелы и символы перевода страницы.
  • Breaking: Изменена логика FilterPolicy.MERGE: теперь фильтры пересекаются, а не объединяются.
v3.3.0minorbreaking
🕐 1 мес назад · релиз на GitHub ↗

Ускорен SentenceWindowRetriever, исправлена BM25-токенизация для CJK, устранены баги в конвейерах и добавлены ограничения безопасности.

  • Added: SentenceWindowRetriever теперь делает один запрос к хранилищу на вызов, что снижает задержку без изменений в коде.
  • Breaking: BM25L и BM25Plus теперь возвращают только документы с совпадениями по терминам запроса, что может уменьшить количество результатов.
  • Fixed: Исправлена токенизация BM25 для китайского, японского и корейского языков с нормализацией NFC.
  • Fixed: Устранены баги в ChatPromptBuilder (потеря контента), DOCXToDocument (таблицы и ссылки) и ConditionalRouter (мутация данных).
  • Added: Добавлено требование anyio>=4.14.2 для устранения уязвимости CVE-2026-63374.
v3.2.0majorbreaking
🕐 1 мес назад · релиз на GitHub ↗

Haystack v3.2.0: новые хуки для агентов, компактный контекст, удобный API пайплайнов и ломающие изменения в сериализации.

  • Added: SummarizationCompactor: стратегия сжатия контекста агента через LLM-резюме для экономии токенов.
  • Added: TokenBudgetHook: ограничение бюджета токенов и новый механизм stop_run для безопасной остановки агентов.
  • Added: Fluent Pipeline: цепочечное добавление компонентов и связей через add_components и connect_many.
  • Breaking: Удален оператор + для Toolset; теперь инструменты передаются списком, старые YAML-файлы не загрузятся.
  • Breaking: Загрузка сериализованных OutputAdapter и ConditionalRouter с Jinja-фильтрами теперь требует unsafe=True.
v3.1.1patch
🕐 2 мес назад · релиз на GitHub ↗

Исправлена ошибка, из-за которой конвертеры сообщений OpenAI и Hugging Face падали при обработке пустого контента от ассистента.

  • Fixed: Конвертеры OpenAI Chat Completions и Responses больше не вызывают ошибку при получении сообщения ассистента с пустым контентом, что позволяет корректно обрабатывать отброшенные некорректные вызовы инс
  • Fixed: Конвертер Hugging Face теперь также корректно обрабатывает сообщения ассистента без контента, отправляя их с пустым значением вместо падения.
  • Fixed: Метод ChatMessage.from_openai_dict_format поддерживает пустой контент, обеспечивая корректный round-trip для таких сообщений.
v3.1.0minor
🕐 2 мес назад · релиз на GitHub ↗

Haystack v3.1.0: экспериментальная компактизация контекста агентов, новые токено-счётчики и exit_reason.

  • Added: Добавлен экспериментальный CompactionHook для агентов: сокращает историю диалога через SlidingWindowCompactor при достижении порога контекстного окна.
  • Added: Агент теперь возвращает exit_reason, объясняющий причину завершения (текст, инструмент или лимит шагов), что упрощает маршрутизацию вывода.
  • Added: Внедрён модуль haystack.token_counters с протоколом TokenCounter и реализациями ApproximateTokenCounter и TiktokenCounter для оценки количества токенов.
  • Added: Добавлен OpenAITokenCounter, использующий API OpenAI для точного подсчёта токенов с учётом форматирования, изображений и инструментов.
  • Added: В компоненты PyPDFToDocument и PDFMinerToDocument добавлен параметр link_format для парсинга ссылок из аннотаций PDF.
v3.0.0majorbreaking
🕐 3 мес назад · релиз на GitHub ↗

Haystack 3.0: полноценный async, хуки для агентов, интеграции вынесены в отдельные пакеты, устарели старые генераторы.

  • Added: Агенты получили систему хуков, навыки (Skills) и поддержку асинхронных инструментов.
  • Added: Pipeline и AsyncPipeline объединены в один класс с поддержкой стриминга и асинхронного выполнения.
  • Added: Встроенная наблюдаемость: трассировка на уровне шагов и доступ к метрикам (токены, вызовы инструментов).
  • Breaking: Удален ToolInvoker; классы Legacy Generators заменены на Chat Generators.
  • Breaking: 30 компонентов перенесены в отдельные пакеты haystack-core-integrations, изменились пути импорта.
v2.31.0majorbreaking
🕐 4 мес назад · релиз на GitHub ↗

Начало миграции компонентов в отдельные пакеты для Haystack 3.0, асинхронные оценщики и улучшенная маршрутизация.

  • Deprecated: Компоненты с тяжелыми зависимостями (SentenceTransformers, Hugging Face, Whisper и др.) объявлены устаревшими и будут удалены в v3.0.
  • Breaking: DocumentNDCGEvaluator теперь сравнивает документы по полю content по умолчанию, что может изменить результаты оценки.
  • Added: Добавлена нативная асинхронная поддержка для LLMEvaluator, FaithfulnessEvaluator и ContextRelevanceEvaluator.
  • Added: ConditionalRouter получил флаг output_passthrough для передачи сложных типов данных без преобразования в строку.
  • Added: MarkdownToDocument теперь поддерживает извлечение YAML-фронтматтера в метаданные при включении соответствующей опции.
v2.30.2patch
🕐 4 мес назад · релиз на GitHub ↗

Исправлено преждевременное завершение работы Agent при использовании условия выхода по тексту.

  • Fixed: Agent теперь корректно обрабатывает невалидные вызовы инструментов: если LLM генерирует сообщение с пустым текстом и без вызовов, агент продолжает цикл, позволяя модели восстановиться, а не завершаетс