管道模板
Haystack 提供模板以创建用于常见用例的现成管道。
要创建管道,可以调用from_template方法,传入格式为Pipeline 类的模板标识符PredefinedPipeline.TEMPLATE_IDENTIFIER.
例如,要使用INDEXING 模板创建并运行管道,您可以使用Pipeline.from_template(PredefinedPipeline.INDEXING)
在本节中,我们将详细介绍可用模板及其使用方法。
与网站聊天
生成一个管道,用于读取网页并询问有关其内容的问题。
| 模板标识符 | CHAT_WITH_WEBSITE |
| 模板参数 | - |
| 输入(* 表示必填) | 'converter': {'meta': {}}'fetcher': {'urls': ["https://example.com"]}*'llm': {'generation_kwargs': {}}'prompt': {'query': '要问的问题'} |
示例代码
from haystack import Pipeline, PredefinedPipeline
pipeline = Pipeline.from_template(PredefinedPipeline.CHAT_WITH_WEBSITE)
pipeline.run({"fetcher": {"urls": ["https://haystack.com.cn:"]}, "prompt": {"query": "what is Haystack?"}})
生成式问答
生成一个简单管道,使用OpenAIGenerator.
| 模板标识符 | GENERATIVE_QA |
| 模板参数 | - |
| 输入(* 表示必填) | 'generator': {'generation_kwargs': {}}'prompt_builder': {'question': "" } |
示例代码
from haystack import Pipeline, PredefinedPipeline
pipeline = Pipeline.from_template(PredefinedPipeline.GENERATIVE_QA)
pipeline.run({"prompt_builder":{"question":"Where is Rome?"}})
索引
生成一个管道,该管道从一个或多个文本文件中导入文档,为每个文档创建嵌入,最后将它们存储在 InMemoryDocumentStore 中。
| 模板标识符 | 索引 |
| 模板参数 | - |
| 输入(* 表示必填) | 'llm': {'generation_kwargs': {}}'prompt_builder': {'query': ''}'retriever': {'filters': {}, 'top_k': None}'text_embedder': {'text': ''}}* |
示例代码
from haystack import Pipeline, PredefinedPipeline
pipeline = Pipeline.from_template(PredefinedPipeline.INDEXING)
result = pipeline.run({"converter": {"sources": ["some_file.txt"]}})
RAG
使用先前已索引的数据(您可以使用索引模板)生成 RAG 管道。
| 模板标识符 | RAG |
| 模板参数 | - |
| 输入(* 表示必填) | 'llm': {'generation_kwargs': {}}'prompt_builder': {'query': ''}'retriever': {'filters': {}, 'top_k': None}'text_embedder': {'text': ''}}* |
示例代码
from haystack import Pipeline, PredefinedPipeline
pipeline = Pipeline.from_template(PredefinedPipeline.RAG)
pipeline.run({"text_embedder": {"text": "A question about your documents"}})
更新于 9 个月前
