Microsoft
所有与 Microsoft Azure
及其他 Microsoft
产品相关的功能。
聊天模型
Azure OpenAI
查看 使用示例
我们正在统一所有软件包的模型参数。现在我们建议使用 model
而不是 modelName
,以及 apiKey
用于 API 密钥。
import { AzureChatOpenAI } from "@langchain/openai";
const model = new AzureChatOpenAI({
temperature: 0.9,
azureOpenAIApiKey: "<your_key>", // In Node.js defaults to process.env.AZURE_OPENAI_API_KEY
azureOpenAIApiInstanceName: "<your_instance_name>", // In Node.js defaults to process.env.AZURE_OPENAI_API_INSTANCE_NAME
azureOpenAIApiDeploymentName: "<your_deployment_name>", // In Node.js defaults to process.env.AZURE_OPENAI_API_DEPLOYMENT_NAME
azureOpenAIApiVersion: "<api_version>", // In Node.js defaults to process.env.AZURE_OPENAI_API_VERSION
});
API 参考
- AzureChatOpenAI 来自
@langchain/openai
LLM
Azure OpenAI
Microsoft Azure,通常被称为
Azure
,是由Microsoft
运行的云计算平台,它通过全球数据中心提供对应用程序和服务的访问、管理和开发。它提供了一系列功能,包括软件即服务 (SaaS)、平台即服务 (PaaS) 和基础设施即服务 (IaaS)。Microsoft Azure
支持多种编程语言、工具和框架,包括 Microsoft 专用和第三方软件和系统。
Azure OpenAI 是一项云服务,旨在帮助您使用来自 OpenAI、Meta 及其他机构的各种预构建和精选模型,快速开发生成式 AI 体验。
LangChain.js 支持与 Azure OpenAI 集成,使用 OpenAI SDK 中的新 Azure 集成。
您可以在 此页面 上了解有关 Azure OpenAI 及其与 OpenAI API 区别的更多信息。如果您没有 Azure 帐户,可以创建一个免费帐户 以开始使用。
您需要部署一个 Azure OpenAI 实例。您可以按照 本指南 在 Azure 门户上部署一个版本。
一旦您的实例运行起来,请确保您拥有实例的名称和密钥。您可以在 Azure 门户的实例的“密钥和终结点”部分找到密钥。
如果您使用 Node.js,您可以定义以下环境变量来使用该服务
AZURE_OPENAI_API_INSTANCE_NAME=<YOUR_INSTANCE_NAME>
AZURE_OPENAI_API_DEPLOYMENT_NAME=<YOUR_DEPLOYMENT_NAME>
AZURE_OPENAI_API_EMBEDDINGS_DEPLOYMENT_NAME=<YOUR_EMBEDDINGS_DEPLOYMENT_NAME>
AZURE_OPENAI_API_KEY=<YOUR_KEY>
AZURE_OPENAI_API_VERSION="2024-02-01"
您可以在 Azure OpenAI 文档 中找到支持的 API 版本列表。
请参阅 此部分,了解有关安装集成软件包的通用说明。
- npm
- Yarn
- pnpm
npm install @langchain/openai @langchain/core
yarn add @langchain/openai @langchain/core
pnpm add @langchain/openai @langchain/core
查看 使用示例。
我们正在统一所有软件包的模型参数。现在我们建议使用 model
而不是 modelName
,以及 apiKey
用于 API 密钥。
import { AzureOpenAI } from "@langchain/openai";
const model = new AzureOpenAI({
azureOpenAIApiKey: "<your_key>", // In Node.js defaults to process.env.AZURE_OPENAI_API_KEY
azureOpenAIApiInstanceName: "<your_instance_name>", // In Node.js defaults to process.env.AZURE_OPENAI_API_INSTANCE_NAME
azureOpenAIApiDeploymentName: "<your_deployment_name>", // In Node.js defaults to process.env.AZURE_OPENAI_API_DEPLOYMENT_NAME
azureOpenAIApiVersion: "<api_version>", // In Node.js defaults to process.env.AZURE_OPENAI_API_VERSION
});
API 参考
- AzureOpenAI 来自
@langchain/openai
文本嵌入模型
Azure OpenAI
查看 使用示例
我们正在统一所有软件包的模型参数。现在我们建议使用 model
而不是 modelName
,以及 apiKey
用于 API 密钥。
import { AzureOpenAIEmbeddings } from "@langchain/openai";
const model = new AzureOpenAIEmbeddings({
azureOpenAIApiKey: "<your_key>", // In Node.js defaults to process.env.AZURE_OPENAI_API_KEY
azureOpenAIApiInstanceName: "<your_instance_name>", // In Node.js defaults to process.env.AZURE_OPENAI_API_INSTANCE_NAME
azureOpenAIApiEmbeddingsDeploymentName: "<your_embeddings_deployment_name>", // In Node.js defaults to process.env.AZURE_OPENAI_API_EMBEDDINGS_DEPLOYMENT_NAME
azureOpenAIApiVersion: "<api_version>", // In Node.js defaults to process.env.AZURE_OPENAI_API_VERSION
});
API 参考
- AzureOpenAIEmbeddings 来自
@langchain/openai
向量存储
Azure AI Search
Azure AI Search(以前称为 Azure Search 和 Azure Cognitive Search)是一个分布式 RESTful 搜索引擎,针对 Azure 上生产规模工作负载的速度和相关性进行了优化。它还支持使用 k-最近邻 (kNN) 算法的向量搜索以及 语义搜索。
请参阅 此部分,了解有关安装集成软件包的通用说明。
- npm
- Yarn
- pnpm
npm install -S @langchain/community @langchain/core @azure/search-documents
yarn add @langchain/community @langchain/core @azure/search-documents
pnpm add @langchain/community @langchain/core @azure/search-documents
查看 使用示例。
import { AzureAISearchVectorStore } from "@langchain/community/vectorstores/azure_aisearch";
Azure Cosmos DB for NoSQL
Azure Cosmos DB for NoSQL 提供对使用灵活模式和原生 JSON 支持查询项目的支持。它现在提供向量索引和搜索。此功能旨在处理高维向量,从而在任何规模下实现高效且准确的向量搜索。您现在可以将向量直接与数据一起存储在文档中。数据库中的每个文档不仅可以包含传统的无模式数据,还可以包含作为文档其他属性的高维向量。
请参阅 此部分,了解有关安装集成软件包的通用说明。
- npm
- Yarn
- pnpm
npm install @langchain/azure-cosmosdb @langchain/core
yarn add @langchain/azure-cosmosdb @langchain/core
pnpm add @langchain/azure-cosmosdb @langchain/core
查看 使用示例。
import { AzureCosmosDBNoSQLVectorStore } from "@langchain/azure-cosmosdb";
Azure Cosmos DB for MongoDB vCore
Azure Cosmos DB for MongoDB vCore 使创建具有完整原生 MongoDB 支持的数据库变得容易。您可以应用您的 MongoDB 经验,并通过将您的应用程序指向 API for MongoDB vCore 帐户的连接字符串,继续使用您最喜欢的 MongoDB 驱动程序、SDK 和工具。在 Azure Cosmos DB for MongoDB vCore 中使用向量搜索,将基于 AI 的应用程序与存储在 Azure Cosmos DB 中的数据无缝集成。
请参阅 此部分,了解有关安装集成软件包的通用说明。
- npm
- Yarn
- pnpm
npm install @langchain/azure-cosmosdb @langchain/core
yarn add @langchain/azure-cosmosdb @langchain/core
pnpm add @langchain/azure-cosmosdb @langchain/core
查看 使用示例。
import { AzureCosmosDBMongoDBVectorStore } from "@langchain/azure-cosmosdb";
语义缓存
Azure Cosmos DB NoSQL 语义缓存
Azure Cosmos DB for NoSQL 集成支持语义缓存功能,使用户能够根据用户输入与先前缓存结果之间的语义相似性来检索缓存的响应。它利用 AzureCosmosDBNoSQLVectorStore,后者存储缓存提示的向量嵌入。这些嵌入支持基于相似性的搜索,允许系统检索相关的缓存结果。
请参阅 此部分,了解有关安装集成软件包的通用说明。
- npm
- Yarn
- pnpm
npm install @langchain/azure-cosmosdb @langchain/core
yarn add @langchain/azure-cosmosdb @langchain/core
pnpm add @langchain/azure-cosmosdb @langchain/core
查看 使用示例。
import { AzureCosmosDBNoSQLSemanticCache } from "@langchain/azure-cosmosdb";
聊天消息历史记录
Azure Cosmos DB NoSQL 聊天消息历史记录
AzureCosmosDBNoSQLChatMessageHistory 使用 Cosmos DB 存储聊天消息历史记录。对于跨聊天会话的长期持久性,您可以替换默认的内存中
chatHistory
,它支持像BufferMemory
这样的聊天内存类。
- npm
- Yarn
- pnpm
npm install @langchain/azure-cosmosdb @langchain/core
yarn add @langchain/azure-cosmosdb @langchain/core
pnpm add @langchain/azure-cosmosdb @langchain/core
查看 使用示例。
import { AzureCosmosDBNoSQLChatMessageHistory } from "@langchain/azure-cosmosdb";
Azure Cosmos DB MongoDB vCore 聊天消息历史记录
AzureCosmosDBMongoChatMessageHistory 使用 Cosmos DB Mongo vCore 存储聊天消息历史记录。对于跨聊天会话的长期持久性,您可以替换默认的内存中
chatHistory
,它支持像BufferMemory
这样的聊天内存类。
- npm
- Yarn
- pnpm
npm install @langchain/azure-cosmosdb @langchain/core
yarn add @langchain/azure-cosmosdb @langchain/core
pnpm add @langchain/azure-cosmosdb @langchain/core
查看 使用示例。
import { AzureCosmosDBMongoChatMessageHistory } from "@langchain/azure-cosmosdb";
文档加载器
Azure Blob Storage
Azure Blob Storage 是 Microsoft 针对云的对象存储解决方案。Blob Storage 针对存储海量非结构化数据进行了优化。非结构化数据是不遵循特定数据模型或定义的数据,例如文本或二进制数据。
Azure Files 在云中提供完全托管的文件共享,可通过行业标准的服务器消息块 (
SMB
) 协议、网络文件系统 (NFS
) 协议和Azure Files REST API
访问。Azure Files
基于Azure Blob Storage
。
Azure Blob Storage
旨在用于
- 直接向浏览器提供图像或文档。
- 存储文件以进行分布式访问。
- 流式传输视频和音频。
- 写入日志文件。
- 存储数据以进行备份和还原、灾难恢复和存档。
- 存储数据以供本地或 Azure 托管的服务进行分析。
请参阅 此部分,了解有关安装集成软件包的通用说明。
- npm
- Yarn
- pnpm
npm install @langchain/community @langchain/core @azure/storage-blob
yarn add @langchain/community @langchain/core @azure/storage-blob
pnpm add @langchain/community @langchain/core @azure/storage-blob
import { AzureBlobStorageContainerLoader } from "@langchain/community/document_loaders/web/azure_blob_storage_container";
import { AzureBlobStorageFileLoader } from "@langchain/community/document_loaders/web/azure_blob_storage_file";
工具
Azure Container Apps Dynamic Sessions
Azure Container Apps 动态会话 提供对安全沙盒环境的快速访问,这些环境非常适合运行需要与其他工作负载强隔离的代码或应用程序。
请参阅 此部分,了解有关安装集成软件包的通用说明。
- npm
- Yarn
- pnpm
npm install @langchain/azure-dynamic-sessions @langchain/core
yarn add @langchain/azure-dynamic-sessions @langchain/core
pnpm add @langchain/azure-dynamic-sessions @langchain/core
查看 使用示例。
import { SessionsPythonREPLTool } from "@langchain/azure-dynamic-sessions";