跳转到主要内容

抓取并部署Haystack管道

项目描述

钩子

PyPI - Version PyPI - Python Version Docker image release

目录

快速入门

安装软件包

首先安装软件包

pip install hayhooks

《code>钩子软件包同时提供服务器和客户端组件,客户端可以启动服务器。从shell中,使用以下命令启动服务器:

$ hayhooks run
INFO:     Started server process [44782]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on https://:1416 (Press CTRL+C to quit)

检查钩子状态

从另一个shell中,您可以查询服务器状态:

$ hayhooks status
Hayhooks server is up and running.

部署Haystack管道

部署Haystack管道的时间。管道必须是Yaml格式(pipeline.dump()的输出),如果您没有,您可以使用此存储库中的一个。从存储库的根目录:

$ hayhooks deploy tests/test_files/test_pipeline_01.yml
Pipeline successfully deployed with name: test_pipeline_01

status的另一个调用应确认您的管道已准备好提供服务。

$ hayhooks status
Hayhooks server is up and running.

Pipelines deployed:
- test_pipeline_01

查看API模式

钩子将使用自省来根据您的管道的输入和输出设置相应的OpenAPI模式,让我们使用以下命令获取管道图:

$ curl https://:1416/draw/test_pipeline_01 --output test_pipeline_01.png

下载的图像应如下所示

test pipeline

如您所见,管道要启动需要类型为int的输入,名称为value,并且我们可以传递另一个类型为int的输入,名称为add。运行结束后,管道将返回类型为int的输出,名称为result

如果您在浏览器中打开https://:1416/docs#/,您应该会看到两个模式,一个用于请求,其中我们将传递管道输入(注意add是可选的)

Test_pipeline_01RunRequest
    first_addition
        value* integer
        add (integer | null)

另一个用于响应,我们将接收管道结果

Test_pipeline_01RunResponse
    double
        value* integer

运行管道

在这个时候,了解模式后,我们可以使用HTTP客户端运行我们的管道

$ curl -X 'POST' \
  'https://:1416/test_pipeline_01' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "first_addition": {
    "value": 19
  }
}'

{"double":{"value":42}}%

卸载管道

Hayhooks试图在重启服务器的情况下尽可能多地执行会计工作。例如,要释放资源,您可以直接从客户端取消部署管道

$ hayhooks undeploy test_pipeline_01
Pipeline successfully undeployed

设置hayhooks服务器

要连接到特定服务器,您可以将--server参数传递给客户端

$ hayhooks --server http://myserver:1416 status

禁用SSL验证

出于开发目的,您可以使用--disable-ssl标志禁用SSL验证

$ hayhooks --disable-ssl status

Docker设置

[!TIP]如果您已安装docker-compose并希望快速启动,只需执行docker-compose up -d

您可以在与我们在快速入门中一样在单独的shell中启动服务器,而是在Docker容器中运行它

$ docker run --rm -p 1416:1416 deepset/hayhooks:main
...

如果您想自己构建容器

$ cd docker
$ docker buildx bake
...

容器中有两个特殊的文件夹,您可以使用mount覆盖

  1. 一个包含管道定义的文件夹/opt/pipelines,这些定义将在容器启动时自动部署
  2. 一个包含自定义组件的文件夹/opt/custom_components,如果它们是管道的一部分,Haystack将能够导入这些组件

例如,您可以将本地./pipelines文件夹挂载,该文件夹包含您希望在启动时运行的管道,如下所示

$ docker run --rm -p 1416:1416 -v $PWD/pipelines:/opt/pipelines "deepset/hayhooks:main"

许可

hayhooksApache-2.0许可证的条款进行分发。

项目详情


下载文件

为您的平台下载文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

hayhooks-0.0.17.tar.gz (17.1 kB 查看哈希值)

上传时间

构建分布

hayhooks-0.0.17-py3-none-any.whl (18.3 kB 查看哈希值)

上传时间 Python 3

支持者:

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面