将 Haystack pipelines 和 agents 快速部署为 REST API 和 MCP Tools 的生产级服务化工具。由 deepset 官方维护,支持 OpenAI 兼容端点、Chainlit UI 集成、流式响应和文件上传。
项目简介#
Hayhooks 是 deepset 官方推出的 Haystack pipeline 服务化工具,支持将 pipelines 和 agents 一键部署为 REST API,同时提供 MCP Protocol 支持,可与 Cursor、Claude Desktop 等 MCP 客户端无缝集成。
核心特性#
REST API 部署#
- 将 Haystack pipelines 和 agents 部署为 REST API
- 支持基于 YAML 和基于 wrapper 的两种部署方式
- 自动生成 OpenAI 兼容端点
/chat/completions
MCP 协议支持#
- 作为 MCP Server 运行,将每个 pipeline/agent 暴露为 MCP Tool
- 可与 Cursor、Claude Desktop 等 MCP 客户端集成
- 支持通过对话控制核心 API(部署、卸载、列出、运行 pipelines)
前端集成#
- Chainlit UI:嵌入式聊天前端,零配置,支持流式输出和自定义组件
- Open WebUI:作为 OpenAI 兼容后端,支持事件通知和状态反馈
其他能力#
- 内置文件上传处理,适用于 RAG 系统和文档处理
- 多组件流式输出,提供
async_streaming_generator和streaming_generator
典型应用场景#
- RAG 系统部署 - 快速将检索增强生成 pipeline 部署为 API
- AI Agent 服务化 - 将 Haystack agents 封装为可调用的 REST/MCP 工具
- 多 LLM 流式管道 - 串联多个 LLM 组件并自动流式输出
- 文档索引与查询 - 使用 Elasticsearch 进行文档索引和语义搜索
安装与快速开始#
# 基础安装
pip install hayhooks
# MCP 支持
pip install "hayhooks[mcp]"
# Chainlit UI
pip install "hayhooks[chainlit]"
# 启动服务
hayhooks run
# 带 Chainlit UI
hayhooks run --with-chainlit
核心类与 API#
BasePipelineWrapper- Pipeline 包装器基类setup()- 初始化 pipeline/agentrun_api()/run_api_async()- 自定义 HTTP POST 端点run_chat_completion_async()- OpenAI 兼容端点async_streaming_generator()- 异步流式生成器streaming_generator()- 同步流式生成器
HTTP API 调用示例#
# 自定义端点
curl -X POST http://localhost:1416/my_agent/run \
-H 'Content-Type: application/json' \
-d '{"question": "What can you do?"}'
# OpenAI 兼容端点
curl -X POST http://localhost:1416/chat/completions \
-H 'Content-Type: application/json' \
-d '{"model": "my_agent", "messages": [{"role": "user", "content": "Hello"}]}'
项目信息#
- 版本: v1.13.0 (Beta)
- 许可证: Apache-2.0
- Python 版本: >=3.10, <3.15
- 部署支持: Docker Compose、直接 Python 运行