Skip to main content
所有与 Microsoft Azure 和其他 Microsoft 产品相关的功能。

聊天模型

Azure OpenAI

请参阅使用示例
import { AzureChatOpenAI } from "@langchain/openai";

const model = new AzureChatOpenAI({
  temperature: 0.9,
  azureOpenAIApiKey: "<your_key>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_KEY
  azureOpenAIApiInstanceName: "<your_instance_name>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_INSTANCE_NAME
  azureOpenAIApiDeploymentName: "<your_deployment_name>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_DEPLOYMENT_NAME
  azureOpenAIApiVersion: "<api_version>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_VERSION
});

LLM

Azure OpenAI

Microsoft Azure,通常称为 Azure,是一个由 Microsoft 运营的云计算平台,通过全球数据中心提供应用程序和服务的访问、管理和开发。它提供一系列功能,包括软件即服务 (SaaS)、平台即服务 (PaaS) 和基础设施即服务 (IaaS)。Microsoft Azure 支持多种编程语言、工具和框架,包括 Microsoft 特定和第三方软件及系统。
Azure OpenAI 是一项云服务,可帮助您使用来自 OpenAI、Meta 等的多样化预构建和精选模型快速开发生成式 AI 体验。
LangChain.js 支持使用 OpenAI SDK 中的新 Azure 集成与 Azure OpenAI 集成。 您可以在此页面上了解有关 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
npm install @langchain/openai @langchain/core
请参阅使用示例
import { AzureOpenAI } from "@langchain/openai";

const model = new AzureOpenAI({
  azureOpenAIApiKey: "<your_key>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_KEY
  azureOpenAIApiInstanceName: "<your_instance_name>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_INSTANCE_NAME
  azureOpenAIApiDeploymentName: "<your_deployment_name>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_DEPLOYMENT_NAME
  azureOpenAIApiVersion: "<api_version>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_VERSION
});

文本嵌入模型

Azure OpenAI

请参阅使用示例
import { AzureOpenAIEmbeddings } from "@langchain/openai";

const model = new AzureOpenAIEmbeddings({
  azureOpenAIApiKey: "<your_key>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_KEY
  azureOpenAIApiInstanceName: "<your_instance_name>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_INSTANCE_NAME
  azureOpenAIApiEmbeddingsDeploymentName: "<your_embeddings_deployment_name>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_EMBEDDINGS_DEPLOYMENT_NAME
  azureOpenAIApiVersion: "<api_version>", // 在 Node.js 中默认为 process.env.AZURE_OPENAI_API_VERSION
});

向量存储

Azure AI 搜索

Azure AI 搜索(以前称为 Azure Search 和 Azure Cognitive Search)是一个分布式、RESTful 搜索引擎,针对 Azure 上生产规模工作负载的速度和相关性进行了优化。它还支持使用最近邻 (kNN) 算法进行向量搜索,以及语义搜索
npm
npm install -S @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
npm install @langchain/azure-cosmosdb @langchain/core
请参阅使用示例
import { AzureCosmosDBNoSQLVectorStore } from "@langchain/azure-cosmosdb";

Azure DocumentDB

Azure DocumentDB(以前是 Azure Cosmos DB for MongoDB vCore)可以轻松创建具有完整原生 MongoDB 支持的数据库。您可以通过将应用程序指向连接字符串来应用您的 MongoDB 经验,并继续使用您喜欢的 MongoDB 驱动程序、SDK 和工具。在 Azure DocumentDB 中使用向量搜索,可以将基于 AI 的应用程序与存储在 Azure DocumentDB 中的数据无缝集成。
npm
npm install @langchain/azure-cosmosdb @langchain/core
请参阅使用示例
import { AzureDocumentDBVectorStore } from "@langchain/azure-cosmosdb";

语义缓存

Azure Cosmos DB NoSQL 语义缓存

语义缓存功能支持与 Azure Cosmos DB for NoSQL 集成,使用户能够根据用户输入与先前缓存结果之间的语义相似性检索缓存的响应。它利用 AzureCosmosDBNoSQLVectorStore,该存储存储缓存提示的向量嵌入。这些嵌入支持基于相似性的搜索,允许系统检索相关的缓存结果。
npm
npm install @langchain/azure-cosmosdb @langchain/core
请参阅使用示例
import { AzureCosmosDBNoSQLSemanticCache } from "@langchain/azure-cosmosdb";

文档加载器

Azure Blob 存储

Azure Blob 存储 是 Microsoft 的云对象存储解决方案。Blob 存储针对存储大量非结构化数据进行了优化。非结构化数据是不遵循特定数据模型或定义的数据,例如文本或二进制数据。
Azure 文件 提供完全托管的 云文件共享,可通过行业标准服务器消息块 (SMB) 协议、 网络文件系统 (NFS) 协议和 Azure Files REST API 访问。Azure 文件 基于 Azure Blob 存储
Azure Blob 存储 设计用于:
  • 直接向浏览器提供图像或文档。
  • 存储文件以供分布式访问。
  • 流式传输视频和音频。
  • 写入日志文件。
  • 存储用于备份和恢复、灾难恢复和归档的数据。
  • 存储用于本地或 Azure 托管服务分析的数据。
npm
npm install @langchain/community @langchain/core @azure/storage-blob
请参阅 Azure Blob 存储的使用示例
import { AzureBlobStorageContainerLoader } from "@langchain/community/document_loaders/web/azure_blob_storage_container";
请参阅 Azure 文件的使用示例
import { AzureBlobStorageFileLoader } from "@langchain/community/document_loaders/web/azure_blob_storage_file";

工具

Azure 容器应用动态会话

Azure 容器应用动态会话 提供对安全沙盒环境的快速访问,这些环境非常适合运行需要与其他工作负载强隔离的代码或应用程序。
npm
npm install @langchain/azure-dynamic-sessions @langchain/core
请参阅使用示例
import { SessionsPythonREPLTool } from "@langchain/azure-dynamic-sessions";