FEATURED · 精选文章

Haystack × Amazon Bedrock 集成指南:构建云端 LLM 应用的全组件实战手册

发布时间 / 2026/9/13 15:53:32
来源 / 创域科博编辑部
栏目 / 资讯中心
Haystack × Amazon Bedrock 集成指南:构建云端 LLM 应用的全组件实战手册 Haystack × Amazon Bedrock 集成指南构建云端 LLM 应用的全组件实战手册【免费下载链接】haystackOpen-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.项目地址: https://gitcode.com/GitHub_Trending/ha/haystack本篇技术指南围绕 Haystack 开源 AI 编排框架的 Amazon Bedrock 集成amazon-bedrock-haystack包展开系统讲解从 Embedding、多模态检索、重排、对话生成到 Token 计数与 S3 文件下载的完整组件体系。读者将掌握每个组件的初始化参数、运行接口、AWS 认证方式与真实可用代码示例并能在 Haystack Pipeline 中组合出生产级 RAG 与 Agent 工作流。集成概览一个包覆盖 Bedrock 全链路Amazon Bedrock 是 AWS 提供的全托管基础模型服务通过统一 API 暴露 Amazon、Anthropic、Cohere、Meta、Mistral 等厂商的模型。Haystack 的amazon-bedrock-haystack集成包把 Bedrock 的能力拆解为一组可插拔的 Haystack 组件覆盖索引、检索、生成三大阶段组件模块路径典型用途AmazonBedrockTextEmbedderhaystack_integrations.components.embedders.amazon_bedrock将查询等单个字符串编码为向量AmazonBedrockDocumentEmbedder同上为文档列表计算 Embedding支持元数据拼接AmazonBedrockDocumentImageEmbedder同上基于图片/PDF 文件计算多模态 EmbeddingAmazonBedrockChatGeneratorhaystack_integrations.components.generators.amazon_bedrock基于 Bedrock Converse API 的对话补全支持工具调用、流式、提示缓存AmazonBedrockRankerhaystack_integrations.components.rankers.amazon_bedrock基于 Cohere Rerank 模型的文档重排AmazonBedrockKnowledgeBaseRetrieverhaystack_integrations.components.retrievers.amazon_bedrock从 Bedrock 托管知识库检索文档S3Downloaderhaystack_integrations.components.downloaders.s3从 S3 桶下载文件到本地并回填文件路径AmazonBedrockTokenCounterhaystack_integrations.token_counters.amazon_bedrock基于 BedrockCountTokensAPI 的精确 Token 计数安装方式统一为pip install amazon-bedrock-haystack组件级使用说明见 AmazonBedrockChatGenerator、AmazonBedrockDocumentEmbedder、AmazonBedrockTextEmbedder、AmazonBedrockDocumentImageEmbedder、AmazonBedrockRanker、AmazonBedrockKnowledgeBaseRetriever、AmazonBedrockGenerator 与 S3Downloader 页面完整 API 签名见 Amazon Bedrock 集成 API 参考。AWS 认证环境变量、Secret 与 IAM所有 Amazon Bedrock 组件统一使用 AWS 进行认证认证优先级如下AWS 环境已正确配置时凭据自动从环境变量或 AWS 配置文件~/.aws/credentials与~/.aws/config加载无需在构造函数中显式传入AWS 环境未配置时通过构造函数显式传入aws_access_key_id、aws_secret_access_key与aws_region_name使用Secret包装推荐做法使用 AWS CLI 配置 boto3 凭据通过 IAM 身份策略授予 Bedrock 与 S3 权限。组件默认从以下环境变量读取凭据均可通过Secret.from_env_var覆盖或直接传参环境变量对应参数说明AWS_ACCESS_KEY_IDaws_access_key_idAWS 访问密钥 IDAWS_SECRET_ACCESS_KEYaws_secret_access_keyAWS 秘密访问密钥AWS_SESSION_TOKENaws_session_token临时会话令牌可选AWS_DEFAULT_REGIONaws_region_name区域名必须确保该区域支持 Amazon BedrockAWS_PROFILEaws_profile_nameAWS 配置文件中的命名 Profile从源码的默认值可见见 API 参考这些参数均为strictFalse的可选加载——即环境变量缺失时不会立即报错而是在调用warm_up()或run()时由客户端创建逻辑校验。每个组件都实现了warm_up()创建 boto3 客户端与close()释放客户端生命周期方法与 Haystack 组件的资源管理约定保持一致。分层异常体系精确的错误定位该集成定义了一套继承自Exception的异常层级见 API 参考 的haystack_integrations.common.amazon_bedrock.errors与haystack_integrations.common.s3.errors模块让开发者能针对不同故障类型做精细化处理Exception └── AmazonBedrockError # 集成产生的所有错误的基类 ├── AWSConfigurationError # AWS 配置不正确 ├── AmazonBedrockConfigurationError # Bedrock 节点配置不正确 └── AmazonBedrockInferenceError # 推理节点执行出错 └── S3Error # S3 相关组件错误的基类 ├── S3ConfigurationError # AmazonS3 节点配置不正确 └── S3StorageError # 与 S3Storage 交互出错文件不存在/下载失败AmazonBedrockError有一个实用特性它透明地包装原始异常使原始异常的属性如message可以直接通过AmazonBedrockError.message访问便于在捕获后快速透传底层错误信息。S3 文件下载S3Downloader 与底层 S3StorageS3Downloader用于把 S3 桶中的文件下载到本地文件系统并给每个Document的meta[file_path]回填本地路径通常放在文件转换器Converter或路由器之前让后续组件能直接读取本地文件。初始化参数from haystack.dataclasses import Document from haystack_integrations.components.downloaders.s3 import S3Downloader downloader S3Downloader( file_root_path/tmp/s3_downloads, # 必填下载根目录 file_extensions[.pdf, .txt], # 可选仅下载指定扩展名 file_name_meta_keyfile_name, # 可选文件名所在 meta 键默认 file_name max_workers32, # 可选并发下载线程数默认 32 max_cache_size100, # 可选本地缓存文件数上限默认 100 s3_key_generation_functionNone, # 可选自定义 S3 key 生成函数 s3_bucket_name_envS3_DOWNLOADER_BUCKET, # 可选桶名所在环境变量名 )关键参数说明file_root_path可通过该参数或FILE_ROOT_PATH环境变量设置两者都未设置时抛出ValueError。下载被严格限制在该目录内若文档的文件名解析后超出该目录如绝对路径或包含..该文档会被记录日志并跳过而不会写入磁盘——这是一项防止路径穿越的安全约束max_workers与max_cache_size组件并行下载文件以加速大批量处理本地缓存超过上限时按最近最少使用LRU策略淘汰已下载过的文件会被 touch 更新访问时间而不会重复下载s3_key_generation_function默认使用Document.meta[file_name_meta_key]作为 S3 key若 S3 上的目录结构与 meta 中的文件名不一致可传入Callable[[Document], str]自定义 key 生成逻辑boto3_config底层 boto3 客户端的配置字典可用于调优重试行为、超时与连接管理等底层设置。环境变量与 from_env 工厂组件读取以下环境变量环境变量说明S3_DOWNLOADER_BUCKET必填指定下载来源桶缺失时warm_up()抛ValueErrorS3_DOWNLOADER_PREFIX可选为所有生成的 S3 key 增加前缀如folder/subfolder/FILE_ROOT_PATH可选下载根目录AWS_ENDPOINT_URL可选自定义端点可用于 MinIO、LocalStack 等 S3 兼容服务底层存储类S3Storagehaystack_integrations.common.s3.utils封装了__init__(s3_bucket, session, s3_prefixNone, endpoint_urlNone, configNone)、download(key, local_file_path)与close()方法并提供类方法from_env(*, session, config, s3_bucket_name_envS3_DOWNLOADER_BUCKET)从环境变量构造实例——S3_DOWNLOADER_BUCKET缺失或为空时抛ValueErrorS3_DOWNLOADER_PREFIX与AWS_ENDPOINT_URL为可选。使用示例from haystack.dataclasses import Document from haystack_integrations.components.downloaders.s3 import S3Downloader documents [ Document(meta{file_name: report.pdf}), Document(meta{file_name: data.txt}), ] downloader S3Downloader(file_root_path/tmp/s3_downloads, file_extensions[.pdf, .txt]) result downloader.run(documentsdocuments) for doc in result[documents]: print(fFile downloaded to: {doc.meta[file_path]})run(documents)返回{documents: [...]}其中每个Document携带本地路径文件名缺失或解析出根目录的文档会被记录并跳过下载失败或文件在桶中不存在时抛S3Error。在 Pipeline 中S3Downloader常与DocumentTypeRouter、PDFMinerToDocument串联实现S3 下载 → 类型路由 → 格式转换 → 索引的完整链路完整示例见 S3Downloader 组件文档。Embedding 三件套文本、文档与图片AmazonBedrockTextEmbedder查询编码AmazonBedrockTextEmbedder把单个字符串典型如检索查询编码为向量通常放在检索器之前import os from haystack_integrations.components.embedders.amazon_bedrock import ( AmazonBedrockTextEmbedder, ) os.environ[AWS_ACCESS_KEY_ID] ... os.environ[AWS_SECRET_ACCESS_KEY] ... os.environ[AWS_DEFAULT_REGION] us-east-1 text_embedder AmazonBedrockTextEmbedder( modelcohere.embed-english-v3, input_typesearch_query, # Cohere 模型专属参数 truncateLEFT, # Cohere 模型专属参数 ) print(text_embedder.run(I love pizza!)) # {embedding: [-0.453125, 1.2236328, 2.0058594, 0.67871094...]}run(text)返回{embedding: [...]}输入非字符串时抛TypeError推理失败抛AmazonBedrockInferenceError。AmazonBedrockDocumentEmbedder文档批量编码AmazonBedrockDocumentEmbedder为文档列表计算 Embedding并写入每个Document.embedding字段常用于索引管线中DocumentWriter之前。构造函数在model之外还支持batch_size默认 32每次编码的文档数量。只有 Cohere 模型支持批量推理Amazon Titan 模型会忽略该参数progress_bar默认True是否显示进度条生产环境可关闭以保持日志干净meta_fields_to_embed需要与文档正文一起参与编码的 meta 字段列表embedding_separator默认\n拼接 meta 字段与正文的分隔符**kwargs透传给模型的推理参数——Cohere 模型如input_type、truncateAmazon Titan Text Embeddings V2 如dimensions、normalize。import os from haystack import Document from haystack_integrations.components.embedders.amazon_bedrock import ( AmazonBedrockDocumentEmbedder, ) os.environ[AWS_ACCESS_KEY_ID] ... os.environ[AWS_SECRET_ACCESS_KEY] ... os.environ[AWS_DEFAULT_REGION] us-east-1 doc Document(contentsome text, meta{title: relevant title, page number: 18}) embedder AmazonBedrockDocumentEmbedder( modelcohere.embed-english-v3, input_typesearch_document, meta_fields_to_embed[title], # 把 title 拼入正文一起编码提升检索效果 ) result embedder.run(documents[doc]) print(result[documents][0].embedding)AmazonBedrockDocumentImageEmbedder多模态 EmbeddingAmazonBedrockDocumentImageEmbedder根据文档 meta 中指向的图片或 PDF 文件路径计算多模态 Embedding同样写入Document.embedding字段。支持的模型包括amazon.titan-embed-image-v1、cohere.embed-english-v3、cohere.embed-multilingual-v3、cohere.embed-v4:0。import os from haystack import Document from haystack_integrations.components.embedders.amazon_bedrock import ( AmazonBedrockDocumentImageEmbedder, ) os.environ[AWS_ACCESS_KEY_ID] ... os.environ[AWS_SECRET_ACCESS_KEY] ... os.environ[AWS_DEFAULT_REGION] us-east-1 documents [ Document(contentA photo of a cat, meta{file_path: cat.jpg}), Document( contentInvoice page, meta{file_path: invoice.pdf, mime_type: application/pdf, page_number: 1}, ), ] embedder AmazonBedrockDocumentImageEmbedder( modelamazon.titan-embed-image-v1, image_size(1024, 1024), # 可选等比缩小到指定尺寸降低体积与耗时 ) result embedder.run(documentsdocuments)专属参数file_path_meta_field默认file_path文档中存放图片/PDF 路径的 meta 字段名root_path文件根目录为None时路径按绝对路径解析image_size(width, height)元组等比缩放图片以减小文件体积、内存与传输开销适合有分辨率约束的模型**kwargs模型专属参数——Amazon Titan 使用embeddingConfigCohere 使用embedding_types该组件只支持单个取值传入多个值会报错见 组件文档。编码后文档的meta中会额外写入embedding_source含type与file_path_meta_field记录 Embedding 的来源。Embedding 模型选型提示来自 API 参考 与组件文档Amazon Titan 与 Cohere 系列受支持示例模型 ID 包括amazon.titan-embed-text-v1、amazon.titan-embed-text-v2:0、amazon.titan-embed-image-v1、cohere.embed-english-v3、cohere.embed-multilingual-v3、cohere.embed-v4:0模型不支持时抛ValueErrorAWS 环境配置错误抛AmazonBedrockConfigurationError。对话生成AmazonBedrockChatGeneratorAmazonBedrockChatGenerator通过 BedrockConverse API完成对话补全是集成中最核心的生成组件。其run(messages, ...)返回{replies: [ChatMessage, ...]}messages也接受纯字符串自动包装为一条 user 角色的ChatMessage。基础与多模态使用from haystack.dataclasses import ChatMessage from haystack_integrations.components.generators.amazon_bedrock import ( AmazonBedrockChatGenerator, ) generator AmazonBedrockChatGenerator(modelglobal.anthropic.claude-sonnet-4-6) messages [ ChatMessage.from_system(You are a helpful assistant that answers questions in Spanish only), ChatMessage.from_user(Whats Natural Language Processing?), ] response generator.run(messages, generation_kwargs{max_tokens: 512})多模态输入通过ImageContent混入用户消息from haystack.dataclasses import ChatMessage, ImageContent image ImageContent.from_file_path(apple.jpg) user_message ChatMessage.from_user( content_parts[Describe the image using 10 words at most., image] ) response generator.run(messages[user_message])[replies][0].text工具调用Tool Support组件支持 Haystack 统一工具架构——同一份Tool/Toolset定义在 Bedrock、OpenAI、Ollama 等生成器间保持一致。tools参数接受Tool 对象列表、单个 Toolset、或 Tool 与 Toolset 混合的列表。完整的两轮工具调用 → 执行 → 回填结果流程如下见 API 参考from haystack.dataclasses import ChatMessage from haystack.tools import Tool from haystack_integrations.components.generators.amazon_bedrock import ( AmazonBedrockChatGenerator, ) def weather(city: str): return fThe weather in {city} is sunny and 32°C weather_tool Tool( nameweather, descriptionuseful to determine the weather in a given location, parameters{ type: object, properties: {city: {type: string}}, required: [city], }, functionweather, ) client AmazonBedrockChatGenerator( modelglobal.anthropic.claude-sonnet-4-6, tools[weather_tool], ) messages [ChatMessage.from_user(Whats the weather like in Paris?)] results client.run(messagesmessages) # 提取模型发起的工具调用 tool_message next(msg for msg in results[replies] if msg.tool_call) tool_call tool_message.tool_call # 执行工具并把结果回填给模型 weather_result weather(**tool_call.arguments) new_messages [ messages[0], tool_message, ChatMessage.from_tool(tool_resultweather_result, origintool_call), ] final_result client.run(new_messages) print(final_result[replies][0].text)流式输出设置streaming_callback即可开启流式输出回调接收StreamingChunk对象默认不启用流式一旦设置即切换为流式模式。run()也接受streaming_callback覆盖参数。结构化输出response_formatgeneration_kwargs中的response_format可请求按 JSON Schema 校验的结构化输出generation_kwargs { response_format: { name: person, schema: { type: object, properties: { name: {type: string}, age: {type: integer}, }, required: [name, age], additionalProperties: False, }, } }schema为必填的 JSON Schema 字典name默认response_schema与description可选。启用后解析出的 JSON 对象存放在reply.meta[structured_output]中。generation_kwargs还支持maxTokens、stopSequences、temperature、topP等通用采样参数run()时传入的generation_kwargs与初始化时按 key 合并运行时传入的键优先初始化设置的键保留。提示缓存Prompt Caching组件支持 Bedrock 提示缓存以降低推理延迟与输入 Token 成本受模型与最小 Token 阈值限制每个请求最多 4 个缓存点缓存消息在ChatMessage.meta中设置cachePoint键如{cachePoint: {type: default, ttl: 5m}}成功写入后可通过result[replies][0].meta[usage][cache_write_input_tokens]读取缓存的输入 Token 数缓存工具通过初始化参数tools_cachepoint_config{type: default, ttl: 5m}缓存所有工具定义缓存系统提示通过system_cachepoint_config配置。Guardrails 与异步执行guardrail_config配置已在 Bedrock 中创建的 Guardrail字典需匹配GuardrailConfiguration流式模式匹配GuardrailStreamConfiguration设置trace: enabled时Guardrail 追踪信息写入结果ChatMessage的meta[trace]。注意流式模式启用 Guardrail 可能引入额外延迟可通过streamProcessingMode调节run_async提供run_async(messages, streaming_callbackNone, generation_kwargsNone, toolsNone)异步推理接口适合非阻塞或并发执行场景异步回调优先。AmazonBedrockChatGenerator的常用生成参数maxTokens、stopSequences、temperature、topP、response_format与模型专属参数说明、多模态与工具示例可进一步参考 AmazonBedrockChatGenerator 组件文档 与 API 参考。补充已废弃的 AmazonBedrockGenerator旧版AmazonBedrockGenerator面向prompt文本输入的生成器在文档中被标记为deprecated将在未来版本移除官方建议迁移到AmazonBedrockChatGenerator后者同样接受纯字符串输入。详情见 AmazonBedrockGenerator 组件文档。语义重排AmazonBedrockRankerAmazonBedrockRanker基于 Bedrock Rerank API 按查询语义相关度对文档重新排序输出按相关度降序排列。支持模型cohere.rerank-v3-5:0默认、amazon.rerank-v1:0。from haystack import Document from haystack.utils import Secret from haystack_integrations.components.rankers.amazon_bedrock import ( AmazonBedrockRanker, ) ranker AmazonBedrockRanker( modelcohere.rerank-v3-5:0, top_k2, aws_region_nameSecret.from_token(eu-central-1), ) docs [Document(contentParis), Document(contentBerlin)] output ranker.run(queryWhat is the capital of germany?, documentsdocs) docs output[documents]参数说明top_k默认 10返回文档的最大数量run()中也可按次覆盖max_chunks_per_doc文档超过 512 Token 时允许切分的最大块数None时使用默认值 10。文档注明该参数当前未在实现中使用仅为未来兼容性保留meta_fields_to_embed与meta_data_separator默认\n将指定 meta 字段与文档内容拼接后参与重排。model为空或top_k不大于 0 时抛ValueError。Pipeline 典型用法是检索器 → Ranker先由InMemoryBM25Retriever粗召回再用 Ranker 精排示例见 AmazonBedrockRanker 组件文档。托管知识库检索AmazonBedrockKnowledgeBaseRetrieverAmazonBedrockKnowledgeBaseRetriever从 Amazon Bedrock Managed Knowledge Base 检索文档。它与其他检索器最大的不同是不需要 Haystack Document Store 或 Embedder——索引与向量化完全由 AWS 托管组件只需一个文本query即可检索。from haystack.utils import Secret from haystack_integrations.components.retrievers.amazon_bedrock import ( AmazonBedrockKnowledgeBaseRetriever, ) retriever AmazonBedrockKnowledgeBaseRetriever( knowledge_base_idABCDEFGHIJ, # 也回退到 AWS_KNOWLEDGE_BASE_ID 环境变量 aws_region_nameSecret.from_token(eu-central-1), number_of_results5, ) result retriever.run(queryWhat are the benefits of managed knowledge bases?) for doc in result[documents]: print(doc.content) print(doc.meta[source]) # 底层内容来源S3、网页、Confluence 等 print(doc.score)关键行为use_agentic_retrieval默认True优先尝试AgenticRetrieveStreamAgentic Retrieve API不可用时回退到标准RetrieveAPI默认值可通过USE_AGENTIC_RETRIEVAL环境变量覆盖number_of_results默认 5最大返回条数run(query, top_kNone)中的top_k若提供则覆盖它返回的每个Document附带score以及sourceS3、web、Confluence、Salesforce、SharePoint 或自定义文档位置、knowledge_base_id、knowledge_base_type等元信息检索调用失败抛AmazonBedrockInferenceError。该组件在 RAG 管线中通常位于ChatPromptBuilder之前与AmazonBedrockChatGenerator组合为检索 → 提示构建 → 生成的完整问答链路完整示例见 AmazonBedrockKnowledgeBaseRetriever 组件文档。精确 Token 计数AmazonBedrockTokenCounterAmazonBedrockTokenCounter实现 Haystack 的TokenCounter协议但它不使用本地分词器而是把输入发送到 Bedrock 的CountTokens操作由服务端返回与模型完全一致的分词结果——包括 Bedrock 对消息、系统提示和工具 Schema 施加的格式开销。消息与工具会先转换为与AmazonBedrockChatGenerator相同的 Converse 格式因此计数结果与真实Converse请求的消耗完全对齐。from haystack.dataclasses import ChatMessage from haystack_integrations.token_counters.amazon_bedrock import AmazonBedrockTokenCounter counter AmazonBedrockTokenCounter(modelanthropic.claude-3-5-sonnet-20240620-v1:0) messages [ChatMessage.from_user(Hello, how are you?)] token_count counter.count(messages) print(fToken count: {token_count})使用注意来自 API 参考count(messages, toolsNone)要求消息构成完整、合法的对话Bedrock 会像 Converse API 一样校验输入必须以 user 消息开头工具结果必须与产生它们的工具调用配对因此它适合对完整请求做发送前的整体尺寸评估不适合对孤立片段如单独一条 tool-result 消息计数片段级计数例如 compactor 内部逐条消息度量应改用本地计数器如ApproximateTokenCountertools参数传入的工具 Schema 同样消耗 Token需要计入时一并传入无内容可度量时返回0CountTokens请求失败抛AmazonBedrockInferenceErrormodel为空抛ValueErrorToken 计数与具体模型强相关。组装端到端 RAG从知识库检索到答案生成将前述组件组合进一个 Haystack Pipeline即可获得一个无需自建索引、全 AWS 托管的 RAG 管线示例源自 AmazonBedrockKnowledgeBaseRetriever 组件文档from haystack import Pipeline from haystack.components.builders import ChatPromptBuilder from haystack.dataclasses import ChatMessage from haystack.utils import Secret from haystack_integrations.components.generators.amazon_bedrock import ( AmazonBedrockChatGenerator, ) from haystack_integrations.components.retrievers.amazon_bedrock import ( AmazonBedrockKnowledgeBaseRetriever, ) template [ ChatMessage.from_user( Given these documents, answer the question.\nDocuments: {% for doc in documents %} {{ doc.content }} {% endfor %} \nQuestion: {{question}} \nAnswer: , ), ] rag_pipeline Pipeline() rag_pipeline.add_component( retriever, AmazonBedrockKnowledgeBaseRetriever( knowledge_base_idABCDEFGHIJ, aws_region_nameSecret.from_token(eu-central-1), ), ) rag_pipeline.add_component(prompt_builder, ChatPromptBuilder(templatetemplate, required_variables*)) rag_pipeline.add_component(llm, AmazonBedrockChatGenerator(modelglobal.anthropic.claude-sonnet-4-6)) rag_pipeline.connect(retriever.documents, prompt_builder.documents) rag_pipeline.connect(prompt_builder.prompt, llm.messages) question What are the benefits of managed knowledge bases? result rag_pipeline.run( { retriever: {query: question}, prompt_builder: {question: question}, }, ) print(result[llm][replies][0].text)如需自建索引路线则用AmazonBedrockDocumentEmbedder→DocumentWriter构建索引管线用AmazonBedrockTextEmbedder→InMemoryEmbeddingRetriever构建查询管线两条管线的完整可运行代码分别见 AmazonBedrockDocumentEmbedder 组件文档 与 AmazonBedrockTextEmbedder 组件文档需要先下载 S3 文件的场景则在转换前插入S3Downloader。序列化与排查要点所有组件都实现了标准的to_dict()/from_dict(data)序列化接口可无缝配合 Haystack 的 Pipeline 序列化机制Pipeline.dumps/loads与 YAML 配置。排查问题时建议按以下顺序定位配置层检查AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_DEFAULT_REGION是否设置区域是否支持 Bedrock——配置错误对应AWSConfigurationError/AmazonBedrockConfigurationError初始化层model为空、模型不受支持、file_root_path未设置、top_k不大于 0 等会抛ValueError执行层推理、检索或CountTokens调用失败对应AmazonBedrockInferenceErrorS3 下载失败或文件不存在对应S3StorageError/S3ConfigurationError。通过 Amazon Bedrock 集成 API 参考 可随时查阅每个组件的最新参数签名、默认值与异常约定将其与上述组件文档配合使用即可在 Haystack 中构建覆盖下载、编码、检索、重排、生成、计数全链路的云端 LLM 应用。【免费下载链接】haystackOpen-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.项目地址: https://gitcode.com/GitHub_Trending/ha/haystack创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED — 相关阅读

相关资讯

LATEST — 最新资讯

最新发布

TODAY — 本日精选

新闻

WEEKLY — 本周精选

新闻

MONTHLY — 本月精选

新闻