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

聊天模型

Azure OpenAI

查看使用示例
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
});

大型语言模型

Azure OpenAI

微软Azure,通常被称为 Azure,是由 Microsoft 运营的云计算平台,通过全球数据中心提供应用程序和服务的访问、管理和开发。它提供一系列功能,包括软件即服务(SaaS)、平台即服务(PaaS)和基础设施即服务(IaaS)。Microsoft Azure 支持许多编程语言、工具和框架,包括微软特定的和第三方软件和系统。
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版本列表。
查看此部分以获取安装LangChain包的一般说明 查看使用示例
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
});

文本嵌入模型

Azure OpenAI

查看使用示例
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
});

向量存储

Azure AI 搜索

Azure AI Search(之前称为Azure Search和Azure认知搜索)是一个针对Azure上生产规模工作负载的分布式、RESTful搜索引擎,针对速度和相关性进行了优化。它还支持使用k-最近邻算法(kNN)进行向量搜索,以及语义搜索
npm
npm install -S @langchain/community @langchain/core @azure/search-documents
查看使用示例
import { AzureAISearchVectorStore } from "@langchain/community/vectorstores/azure_aisearch";

Azure Cosmos DB(NoSQL数据库)

Azure Cosmos DB for NoSQL 提供了对具有灵活模式和原生 JSON 支持的项目进行查询的支持。现在它提供了向量索引和搜索功能。该功能旨在处理高维向量,实现任何规模的效率和精确的向量搜索。您现在可以直接在文档中存储向量,与您的数据一起。您数据库中的每个文档不仅可以包含传统的无模式数据,还可以包含作为文档其他属性的高维向量。
npm
npm install @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 vCore账户的连接字符串API,应用您的MongoDB经验并继续使用您喜欢的MongoDB驱动程序、SDK和工具。使用Azure Cosmos DB for MongoDB vCore中的向量搜索,无缝地将您的基于AI的应用程序与存储在Azure Cosmos DB中的数据进行集成。
npm
npm install @langchain/azure-cosmosdb @langchain/core
查看使用示例
import { AzureCosmosDBMongoDBVectorStore } from "@langchain/azure-cosmosdb";

语义缓存

Azure Cosmos DB NoSQL语义缓存

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

文档加载器

Azure Blob 存储

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

工具

Azure 容器应用动态会话

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