Skip to main content
Open on GitHub

AWS

Amazon AWS平台相关的LangChain集成。

第一方 AWS 集成可在 langchain_aws 包中使用。

pip install langchain-aws

此外,langchain_community 包中还有一些社区集成,这些集成依赖于可选的 boto3 依赖项。

pip install langchain-community boto3

聊天模型

Bedrock 聊天

Amazon Bedrock 是一项完全托管的服务,提供来自领先AI公司的高性能基础模型(FMs)选择,如 AI21 LabsAnthropicCohereMetaStability AIAmazon,通过单一API提供,并附带一系列功能,帮助您构建具有安全性、隐私性和负责任AI的生成式AI应用程序。使用 Amazon Bedrock,您可以轻松地针对您的用例进行实验和评估顶级FMs,使用微调和 Retrieval Augmented GenerationRAG)等技术,利用您的数据对其进行私有化定制,并构建使用您的企业系统和数据源执行任务的代理。由于 Amazon Bedrock 是无服务器的,您无需管理任何基础设施,并且可以使用您已经熟悉的AWS服务,安全地将生成式AI功能集成和部署到您的应用程序中。

查看一个使用示例

from langchain_aws import ChatBedrock
API Reference:ChatBedrock

Bedrock Converse

AWS最近发布了Bedrock Converse API,该API为Bedrock模型提供了一个统一的对话界面。此API目前还不支持自定义模型。您可以查看这里支持的所有模型列表。为了提高可靠性,一旦Bedrock Converse API与现有的Bedrock API具有功能对等性,ChatBedrock集成将切换到使用Bedrock Converse API。在此之前,已经发布了一个单独的ChatBedrockConverse集成。

我们建议不需要使用自定义模型的用户使用ChatBedrockConverse。详情请参阅文档API参考

from langchain_aws import ChatBedrockConverse
API Reference:ChatBedrockConverse

大型语言模型

基础

查看一个使用示例

from langchain_aws import BedrockLLM
API Reference:BedrockLLM

亚马逊API网关

Amazon API Gateway 是一项完全托管的服务,使开发人员能够轻松创建、发布、维护、监控和保护任何规模的API。API充当应用程序访问后端服务中的数据、业务逻辑或功能的“前门”。使用API Gateway,您可以创建RESTful API和WebSocket API,这些API支持实时双向通信应用程序。API Gateway支持容器化和无服务器工作负载,以及Web应用程序。

API Gateway 处理所有涉及接受和处理多达数十万个并发API调用的任务,包括流量管理、CORS支持、授权和访问控制、限流、监控和API版本管理。API Gateway 没有最低费用或启动成本。您只需为您接收的API调用和传输的数据量付费,并且通过API Gateway的分层定价模型,您可以根据API使用量的增加来降低成本。

查看使用示例

from langchain_community.llms import AmazonAPIGateway
API Reference:AmazonAPIGateway

SageMaker 端点

Amazon SageMaker 是一个系统,可以使用完全托管的基础设施、工具和工作流程来构建、训练和部署机器学习(ML)模型。

我们使用SageMaker来托管我们的模型,并将其暴露为SageMaker Endpoint

查看使用示例

from langchain_aws import SagemakerEndpoint
API Reference:SagemakerEndpoint

嵌入模型

基础

查看一个使用示例

from langchain_community.embeddings import BedrockEmbeddings
API Reference:BedrockEmbeddings

SageMaker 端点

查看一个使用示例

from langchain_community.embeddings import SagemakerEndpointEmbeddings
from langchain_community.llms.sagemaker_endpoint import ContentHandlerBase

文档加载器

AWS S3 目录和文件

Amazon Simple Storage Service (Amazon S3) 是一个对象存储服务。 AWS S3 Directory AWS S3 Buckets

查看S3DirectoryLoader的使用示例

查看S3FileLoader的使用示例

from langchain_community.document_loaders import S3DirectoryLoader, S3FileLoader

亚马逊文本提取

Amazon Textract 是一种机器学习(ML)服务,能够自动从扫描的文档中提取文本、手写内容和数据。

查看使用示例

from langchain_community.document_loaders import AmazonTextractPDFLoader

亚马逊雅典娜

Amazon Athena 是一个基于开源框架构建的无服务器交互式分析服务,支持开放表和文件格式。

查看使用示例

from langchain_community.document_loaders.athena import AthenaLoader
API Reference:AthenaLoader

AWS Glue

AWS Glue Data Catalog 是一个集中式的元数据存储库,允许您管理、访问和共享存储在 AWS 中的数据的元数据。它作为数据资产的元数据存储,使各种 AWS 服务和您的应用程序能够高效地查询和连接到所需的数据。

查看使用示例

from langchain_community.document_loaders.glue_catalog import GlueCatalogLoader
API Reference:GlueCatalogLoader

向量存储

亚马逊OpenSearch服务

Amazon OpenSearch Service 提供交互式日志分析、实时应用程序监控、网站搜索等功能。OpenSearch 是一个开源的分布式搜索和分析套件,源自 ElasticsearchAmazon OpenSearch Service 提供最新版本的 OpenSearch,支持多个版本的 Elasticsearch,以及由 OpenSearch DashboardsKibana 提供的可视化功能。

我们需要安装几个Python库。

pip install boto3 requests requests-aws4auth

查看一个使用示例

from langchain_community.vectorstores import OpenSearchVectorSearch

Amazon DocumentDB (与MongoDB兼容) 使得在云中设置、操作和扩展与MongoDB兼容的数据库变得容易。 使用Amazon DocumentDB,您可以运行相同的应用程序代码,并使用与MongoDB相同的驱动程序和工具。 Amazon DocumentDB的向量搜索结合了基于JSON的文档数据库的灵活性和丰富的查询能力,以及向量搜索的强大功能。

安装与设置

查看详细配置说明

我们需要安装pymongo python包。

pip install pymongo

在AWS上部署DocumentDB

Amazon DocumentDB (与MongoDB兼容) 是一个快速、可靠且完全托管的数据库服务。Amazon DocumentDB 使得在云中设置、操作和扩展与MongoDB兼容的数据库变得容易。

AWS提供计算、数据库、存储、分析和其他功能的服务。有关所有AWS服务的概述,请参见使用亚马逊网络服务进行云计算

查看使用示例

from langchain_community.vectorstores import DocumentDBVectorSearch

亚马逊MemoryDB

Amazon MemoryDB 是一个持久的内存数据库服务,提供超快的性能。MemoryDB 与 Redis OSS 兼容,Redis OSS 是一个流行的开源数据存储,使您能够使用相同的灵活且友好的 Redis OSS API 和命令快速构建应用程序,这些 API 和命令是他们今天已经在使用的。

InMemoryVectorStore 类提供了一个向量存储,用于连接 Amazon MemoryDB。

from langchain_aws.vectorstores.inmemorydb import InMemoryVectorStore

vds = InMemoryVectorStore.from_documents(
chunks,
embeddings,
redis_url="rediss://cluster_endpoint:6379/ssl=True ssl_cert_reqs=none",
vector_schema=vector_schema,
index_name=INDEX_NAME,
)
API Reference:InMemoryVectorStore

查看使用示例

检索器

亚马逊Kendra

Amazon Kendra 是由 Amazon Web Services (AWS) 提供的智能搜索服务。它利用先进的自然语言处理(NLP)和机器学习算法,使组织内的各种数据源具备强大的搜索能力。Kendra 旨在帮助用户快速准确地找到所需信息,从而提高生产力和决策能力。

使用Kendra,我们可以搜索各种类型的内容,包括文档、常见问题解答、知识库、手册和网站。它支持多种语言,并能理解复杂的查询、同义词和上下文含义,以提供高度相关的搜索结果。

我们需要安装langchain-aws库。

pip install langchain-aws

查看使用示例

from langchain_aws import AmazonKendraRetriever
API Reference:AmazonKendraRetriever

Amazon Bedrock (知识库)

Knowledge bases for Amazon Bedrock 是一个 Amazon Web Services (AWS) 提供的服务,它允许您使用您的 私有数据来定制基础模型的响应,从而快速构建 RAG 应用程序。

我们需要安装langchain-aws库。

pip install langchain-aws

查看一个使用示例

from langchain_aws import AmazonKnowledgeBasesRetriever

工具

AWS Lambda

Amazon AWS Lambda 是由 Amazon Web Services (AWS) 提供的无服务器计算服务。它帮助开发者在无需配置或管理服务器的情况下构建和运行应用程序和服务。这种无服务器架构使您能够专注于编写和部署代码,而 AWS 自动负责扩展、修补和管理运行应用程序所需的基础设施。

我们需要安装boto3 python库。

pip install boto3

查看一个使用示例

内存

AWS DynamoDB

AWS DynamoDB 是一个完全托管的 NoSQL 数据库服务,提供快速且可预测的性能,并具有无缝扩展性。

我们必须配置AWS CLI

我们需要安装boto3库。

pip install boto3

查看使用示例

from langchain_community.chat_message_histories import DynamoDBChatMessageHistory

图表

Amazon Neptune 与 Cypher

查看一个使用示例

from langchain_community.graphs import NeptuneGraph
from langchain_community.graphs import NeptuneAnalyticsGraph
from langchain_community.chains.graph_qa.neptune_cypher import NeptuneOpenCypherQAChain

Amazon Neptune 与 SPARQL

查看一个使用示例

from langchain_community.graphs import NeptuneRdfGraph
from langchain_community.chains.graph_qa.neptune_sparql import NeptuneSparqlQAChain

回调函数

Bedrock 令牌使用

from langchain_community.callbacks.bedrock_anthropic_callback import BedrockAnthropicTokenUsageCallbackHandler

SageMaker 跟踪

Amazon SageMaker 是一项完全托管的服务,用于快速且轻松地构建、训练和部署机器学习(ML)模型。

Amazon SageMaker ExperimentsAmazon SageMaker 的一项功能,它允许您组织、跟踪、比较和评估机器学习实验和模型版本。

我们需要安装几个Python库。

pip install google-search-results sagemaker

查看使用示例

from langchain_community.callbacks import SageMakerCallbackHandler

Amazon Comprehend 审核链

Amazon Comprehend 是一种自然语言处理(NLP)服务,它使用机器学习来揭示文本中的有价值见解和联系。

我们需要安装boto3nltk库。

pip install boto3 nltk

查看一个使用示例

from langchain_experimental.comprehend_moderation import AmazonComprehendModerationChain

这个页面有帮助吗?