Skip to main content
Open on GitHub

Microsoft

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

Chat Models​

Microsoft 通过 Azure 提供了三种主要的聊天模型访问选项:

  1. Azure OpenAI - 通过 Microsoft Azure 的安全企业平台,提供对 o3、4.1 等 OpenAI 强大模型的访问。
  2. Azure AI - 通过统一的 API,提供对 Anthropic、DeepSeek、Cohere、Phi 和 Mistral 等不同提供商的各种模型的访问。
  3. Azure ML - 允许使用 Azure Machine Learning 部署和管理您自己的自定义模型或微调的开源模型。

Azure OpenAI​

Microsoft Azure,通常称为 Azure,是微软运营的云计算平台,通过全球数据中心提供应用程序和服务的访问、管理和开发。它提供一系列功能,包括软件即服务 (SaaS)、平台即服务 (PaaS) 和基础设施即服务 (IaaS)。Microsoft Azure 支持许多编程语言、工具和框架,包括微软专有和第三方软件及系统。

Azure OpenAI 是一项 Azure 服务,提供来自 OpenAI 的强大语言模型,包括用于内容生成、摘要、语义搜索以及自然语言到代码转换的 GPT-3、Codex 和 Embeddings model 系列。

pip install langchain-openai

设置环境变量以访问 Azure OpenAI 服务。

import os

os.environ["AZURE_OPENAI_ENDPOINT"] = "https://<your-endpoint.openai.azure.com/"
os.environ["AZURE_OPENAI_API_KEY"] = "your AzureOpenAI key"

请参阅 使用示例

from langchain_openai import AzureChatOpenAI
API Reference:AzureChatOpenAI

Azure AI​

Azure AI Foundry 通过 AzureAIChatCompletionsModel 类,提供对 Azure OpenAI、DeepSeek R1、Cohere、Phi 和 Mistral 等各种提供商的广泛模型的访问。

pip install -U langchain-azure-ai

配置您的 API 密钥和终结点。

export AZURE_INFERENCE_CREDENTIAL=your-api-key
export AZURE_INFERENCE_ENDPOINT=your-endpoint
from langchain_azure_ai.chat_models import AzureAIChatCompletionsModel

llm = AzureAIChatCompletionsModel(
model_name="gpt-4o",
api_version="2024-05-01-preview",
)

请参阅 使用示例

Azure ML Chat Online Endpoint​

请参阅 此处 的文档,了解如何访问托管在 Azure Machine Learning 上的聊天模型。

LLMs​

Azure ML​

请参阅 使用示例。

from langchain_community.llms.azureml_endpoint import AzureMLOnlineEndpoint
API Reference:AzureMLOnlineEndpoint

Azure OpenAI​

请参阅 使用示例。

from langchain_openai import AzureOpenAI
API Reference:AzureOpenAI

Embedding Models​

Microsoft 通过 Azure 提供了两种主要的嵌入模型访问选项:

Azure OpenAI​

请参阅 使用示例

from langchain_openai import AzureOpenAIEmbeddings
API Reference:AzureOpenAIEmbeddings

Azure AI​

pip install -U langchain-azure-ai

配置您的 API 密钥和终结点。

export AZURE_INFERENCE_CREDENTIAL=your-api-key
export AZURE_INFERENCE_ENDPOINT=your-endpoint
from langchain_azure_ai.embeddings import AzureAIEmbeddingsModel

embed_model = AzureAIEmbeddingsModel(
model_name="text-embedding-ada-002"
)

Document loaders​

Azure AI Data​

Azure AI Studio 提供了将数据资产上传到云存储以及注册以下来源现有数据资产的功能:

  • Microsoft OneLake
  • Azure Blob Storage
  • Azure Data Lake gen 2

首先,您需要安装几个 Python 包。

pip install azureml-fsspec, azure-ai-generative

请参阅 使用示例。

from langchain.document_loaders import AzureAIDataLoader
API Reference:AzureAIDataLoader

Azure AI Document Intelligence​

Azure AI Document Intelligence(以前称为 Azure Form Recognizer)是一项基于机器学习的服务,可从数字或扫描的 PDF、图像、Office 和 HTML 文件中提取文本(包括手写)、表格、文档结构和键值对。

Document Intelligence 支持 PDF、JPEG/JPG、PNG、BMP、TIFF、HEIF、DOCX、XLSX、PPTX 和 HTML。

首先,您需要安装一个 Python 包。

pip install azure-ai-documentintelligence

请参阅 使用示例。

from langchain.document_loaders import AzureAIDocumentIntelligenceLoader

Azure Blob Storage​

Azure Blob Storage 是微软的云对象存储解决方案。Blob Storage 针对存储海量非结构化数据进行了优化。非结构化数据是指不遵循特定数据模型或定义的数据,例如文本或二进制数据。

Azure Files 提供完全托管的云文件共享,可通过行业标准服务器消息块 (SMB) 协议、网络文件系统 (NFS) 协议和 Azure Files REST API 进行访问。Azure Files 基于 Azure Blob Storage。

Azure Blob Storage 专为以下用途而设计:

  • 直接向浏览器提供图像或文档。
  • 存储用于分布式访问的文件。
  • 流式传输视频和音频。
  • 写入日志文件。
  • 存储用于备份和还原、灾难恢复和归档的数据。
  • 存储供本地或 Azure 托管服务分析的数据。
pip install azure-storage-blob

请参阅 Azure Blob Storage 的使用示例。

from langchain_community.document_loaders import AzureBlobStorageContainerLoader

请参阅 Azure Files 的使用示例。

from langchain_community.document_loaders import AzureBlobStorageFileLoader

Microsoft OneDrive​

Microsoft OneDrive(以前称为 SkyDrive)是微软运营的文件托管服务。

首先,您需要安装一个 Python 包。

pip install o365

请参阅 使用示例。

from langchain_community.document_loaders import OneDriveLoader
API Reference:OneDriveLoader

Microsoft OneDrive File​

Microsoft OneDrive(以前称为 SkyDrive)是微软运营的文件托管服务。

首先,您需要安装一个 Python 包。

pip install o365
from langchain_community.document_loaders import OneDriveFileLoader
API Reference:OneDriveFileLoader

Microsoft Word​

Microsoft Word 是微软开发的文字处理器。

请参阅 使用示例。

from langchain_community.document_loaders import UnstructuredWordDocumentLoader

Microsoft Excel​

Microsoft Excel 是微软为 Windows、macOS、Android、iOS 和 iPadOS 开发的电子表格编辑器。它具有计算功能、图形工具、数据透视表和名为 Visual Basic for Applications (VBA) 的宏编程语言。Excel 是 Microsoft 365 软件套件的一部分。

UnstructuredExcelLoader 用于加载 Microsoft Excel 文件。该加载器同时支持 .xlsx 和 .xls 文件。页面内容将是 Excel 文件的原始文本。如果使用 "elements" 模式加载器,文档元数据中将通过 text_as_html 键提供 Excel 文件的 HTML 表示。

请参阅 使用示例。

from langchain_community.document_loaders import UnstructuredExcelLoader

Microsoft SharePoint​

Microsoft SharePoint 是一个基于网站的协作系统,它使用工作流应用程序、“列表”数据库以及其他 Web 部件和安全功能来使业务团队能够共同协作,该系统由微软开发。

请参阅 使用示例。

from langchain_community.document_loaders.sharepoint import SharePointLoader
API Reference:SharePointLoader

Microsoft PowerPoint​

Microsoft PowerPoint 是微软的演示文稿程序。

请参阅 使用示例。

from langchain_community.document_loaders import UnstructuredPowerPointLoader

Microsoft OneNote​

首先,我们安装依赖项:

pip install bs4 msal

请参阅 使用示例。

from langchain_community.document_loaders.onenote import OneNoteLoader
API Reference:OneNoteLoader

Playwright URL Loader​

Playwright 是 Microsoft 开发的开源自动化工具,允许您以编程方式控制和自动化 Web 浏览器。它专为端到端测试、抓取和自动化各种 Web 浏览器(如 Chromium、Firefox 和 WebKit)的任务而设计。

首先,我们安装依赖项:

pip install playwright unstructured

请参阅 使用示例。

from langchain_community.document_loaders.onenote import OneNoteLoader
API Reference:OneNoteLoader

Vector Stores​

Azure Cosmos DB​

AI 代理可以依赖 Azure Cosmos DB 作为统一的 内存系统 解决方案,享受速度、规模和简便性的优势。该服务成功地 支持了 OpenAI 的 ChatGPT 服务,使其能够高可靠性和低维护地动态扩展。它由原子-记录-序列引擎提供支持,是全球首个提供无服务器模式的分布式 NoSQL、关系型 和 向量数据库 服务。

以下是两种可提供向量存储功能的可用 Azure Cosmos DB API。

Azure Cosmos DB for MongoDB (vCore)​

Azure Cosmos DB for MongoDB vCore 可轻松创建具有完全原生 MongoDB 支持的数据库。 您可以通过将应用程序指向 API for MongoDB vCore 帐户的连接字符串来应用您的 MongoDB 经验,并继续使用您喜欢的 MongoDB 驱动程序、SDK 和工具。 在 Azure Cosmos DB for MongoDB vCore 中使用向量搜索,可将您的 AI 驱动的应用程序与存储在 Azure Cosmos DB 中的数据无缝集成。

安装和设置​

请参阅 详细配置说明。

我们需要安装 pymongo Python 包。

pip install pymongo
在 Microsoft Azure 上部署 Azure Cosmos DB​

Azure Cosmos DB for MongoDB vCore 为开发人员提供了一个完全托管的、与 MongoDB 兼容的数据库服务,用于构建具有熟悉的体系结构的现代应用程序。

借助 Cosmos DB for MongoDB vCore,开发人员在迁移现有应用程序或构建新应用程序时,可以享受原生 Azure 集成、低总体拥有成本 (TCO) 以及熟悉的 vCore 体系结构带来的优势。

立即注册免费试用。

请参阅 使用示例。

from langchain_community.vectorstores import AzureCosmosDBVectorSearch

Azure Cosmos DB NoSQL​

Azure Cosmos DB for NoSQL 现在提供预览版的向量索引和搜索功能。 此功能旨在处理高维向量,从而实现大规模高效准确的向量搜索。您现在可以将向量直接与数据一起存储在文档中。这意味着您的数据库中的每个文档不仅可以包含传统的无架构数据,还可以包含作为文档其他属性的高维向量。数据和向量的共置实现了高效的索引和搜索,因为向量与它们所表示的数据存储在同一逻辑单元中。这简化了数据管理、AI 应用程序架构以及基于向量的操作的效率。

安装和设置​

请参阅 详细配置说明。

我们需要安装 azure-cosmos Python 包。

pip install azure-cosmos
在 Microsoft Azure 上部署 Azure Cosmos DB​

Azure Cosmos DB 通过高度响应的动态和弹性自动伸缩功能,为现代应用程序和智能工作负载提供解决方案。它在每个 Azure 区域都可用,并且可以自动将数据复制到离用户更近的位置。它拥有 SLA 保障的低延迟和高可用性。

立即注册免费试用。

请参阅 使用示例。

from langchain_community.vectorstores import AzureCosmosDBNoSQLVectorSearch

Azure Database for PostgreSQL​

Azure Database for PostgreSQL - Flexible Server 是一个基于开源 Postgres 数据库引擎的关系数据库服务。它是一个完全托管的数据库即服务,能够处理具有可预测性能、安全性、高可用性和动态可伸缩性的关键任务工作负载。

请参阅 Azure Database for PostgreSQL 的设置说明。

请参阅 使用示例。只需使用 Azure 门户中的连接字符串。

由于 Azure Database for PostgreSQL 是开源 Postgres,您可以使用 LangChain 对 Postgres 的支持 连接到 Azure Database for PostgreSQL。

Azure SQL Database​

Azure SQL Database 是一项强大的服务,集可伸缩性、安全性和高可用性于一体,提供了现代数据库解决方案的所有优势。它还提供专用的 Vector 数据类型和内置函数,可简化关系数据库内向量嵌入的存储和查询。这消除了对单独的向量数据库和相关集成的需求,提高了解决方案的安全性,同时降低了整体复杂性。

通过利用您现有的 SQL Server 数据库进行向量搜索,您可以增强数据功能,同时最大限度地降低成本并避免迁移到新系统的挑战。

安装和设置​

请参阅 详细配置说明。

我们需要安装 langchain-sqlserver Python 包。

!pip install langchain-sqlserver==0.1.1
在 Microsoft Azure 上部署 Azure SQL DB​

立即注册免费试用。

请参阅 使用示例。

from langchain_sqlserver import SQLServer_VectorStore
API Reference:SQLServer_VectorStore

Azure AI Search 是一个云搜索服务, 为开发人员提供在海量私有、异构内容上进行向量、关键字和混合查询检索所需的基础设施、API 和工具。 请参阅 此处 了解使用示例。

from langchain_community.vectorstores.azuresearch import AzureSearch
API Reference:AzureSearch

Retrievers​

Azure AI Search​

Azure AI Search(以前称为 Azure Search 或 Azure Cognitive Search)是一个云搜索服务, 为开发人员提供了一个丰富搜索体验所需的查找基础设施、API 和工具,以在 Web、移动和企业应用程序中查找私有、异构内容。

搜索是任何向用户显示文本的应用程序的基础,常见场景包括目录或文档搜索、在线零售应用程序或专有内容的数据探索。在创建搜索服务时,您将使用以下功能:

  • 适用于在包含用户自有内容的搜索索引上进行全文搜索的搜索引擎
  • 富索引功能,具有词法分析和可选的 AI 增强功能,用于内容提取和转换
  • 用于文本搜索、模糊搜索、自动完成、地理搜索等的丰富查询语法
  • 通过 REST API 和 Azure SDK 中的客户端库进行的可编程访问
  • 数据层、机器学习层和 AI(AI 服务)的 Azure 集成

请参阅 设置说明。

请参阅 使用示例。

from langchain_community.retrievers import AzureAISearchRetriever

Vector Store​

Azure Database for PostgreSQL​

Azure Database for PostgreSQL - Flexible Server 是一个基于开源 Postgres 数据库引擎的关系数据库服务。它是一个完全托管的数据库即服务,能够处理具有可预测性能、安全性、高可用性和动态可伸缩性的关键任务工作负载。

请参阅 Azure Database for PostgreSQL 的设置说明。

您需要在数据库中启用 pgvector 扩展,才能将 Postgres 用作向量存储。启用扩展后,您可以使用 LangChain 的 PGVector 连接到 Azure Database for PostgreSQL。

请参阅 使用示例。只需使用 Azure 门户中的连接字符串。

Tools​

Azure Container Apps dynamic sessions​

我们需要从 Azure Container Apps 服务获取 POOL_MANAGEMENT_ENDPOINT 环境变量。 请参阅此处 的说明。

我们需要安装一个 Python 包。

pip install langchain-azure-dynamic-sessions

请参阅 使用示例。

from langchain_azure_dynamic_sessions import SessionsPythonREPLTool

请按照此处 的文档获取有关此工具的详细说明和指南。

需要从 Bing Search 资源中获取环境变量 BING_SUBSCRIPTION_KEY 和 BING_SEARCH_URL。

from langchain_community.tools.bing_search import BingSearchResults
from langchain_community.utilities import BingSearchAPIWrapper

api_wrapper = BingSearchAPIWrapper()
tool = BingSearchResults(api_wrapper=api_wrapper)

Toolkits​

Azure AI Services​

我们需要安装几个 Python 包。

pip install azure-ai-formrecognizer azure-cognitiveservices-speech azure-ai-vision-imageanalysis

请参阅 使用示例。

from langchain_community.agent_toolkits import azure_ai_services
API Reference:azure_ai_services

Azure AI Services individual tools​

azure_ai_services 工具包包含以下工具:

Azure Cognitive Services​

我们需要安装几个 Python 包。

pip install azure-ai-formrecognizer azure-cognitiveservices-speech azure-ai-vision-imageanalysis

请参阅 使用示例。

from langchain_community.agent_toolkits import AzureCognitiveServicesToolkit

Azure AI Services individual tools​

azure_ai_services 工具包包含查询 Azure Cognitive Services 的工具:

  • AzureCogsFormRecognizerTool: Form Recognizer API
  • AzureCogsImageAnalysisTool: Image Analysis API
  • AzureCogsSpeech2TextTool: Speech2Text API
  • AzureCogsText2SpeechTool: Text2Speech API
  • AzureCogsTextAnalyticsHealthTool: Text Analytics for Health API
from langchain_community.tools.azure_cognitive_services import (
AzureCogsFormRecognizerTool,
AzureCogsImageAnalysisTool,
AzureCogsSpeech2TextTool,
AzureCogsText2SpeechTool,
AzureCogsTextAnalyticsHealthTool,
)

Microsoft Office 365 email and calendar​

我们需要安装 O365 Python 包。

pip install O365

请参阅 使用示例。

from langchain_community.agent_toolkits import O365Toolkit
API Reference:O365Toolkit

Office 365 individual tools​

您可以从 Office 365 工具包中使用单独的工具:

  • O365CreateDraftMessage: 在 Office 365 中创建草稿电子邮件
  • O365SearchEmails: 在 Office 365 中搜索电子邮件消息
  • O365SearchEvents: 在 Office 365 中搜索日历事件
  • O365SendEvent: 发送日历事件
  • O365SendMessage: 发送 Office 365 电子邮件
from langchain_community.tools.office365 import O365CreateDraftMessage
from langchain_community.tools.office365 import O365SearchEmails
from langchain_community.tools.office365 import O365SearchEvents
from langchain_community.tools.office365 import O365SendEvent
from langchain_community.tools.office365 import O365SendMessage

Microsoft Azure PowerBI​

我们需要安装 azure-identity Python 包。

pip install azure-identity

请参阅 使用示例。

from langchain_community.agent_toolkits import PowerBIToolkit
from langchain_community.utilities.powerbi import PowerBIDataset

PowerBI individual tools​

您可以从 Azure PowerBI 工具包中使用单独的工具:

  • InfoPowerBITool: 获取 PowerBI 数据集的元数据
  • ListPowerBITool: 获取表名
  • QueryPowerBITool: 查询 PowerBI 数据集
from langchain_community.tools.powerbi.tool import InfoPowerBITool
from langchain_community.tools.powerbi.tool import ListPowerBITool
from langchain_community.tools.powerbi.tool import QueryPowerBITool

PlayWright Browser Toolkit​

Playwright 是 Microsoft 开发的开源自动化工具,允许您以编程方式控制和自动化 Web 浏览器。它专为端到端测试、抓取和自动化各种 Web 浏览器(如 Chromium、Firefox 和 WebKit)的任务而设计。

我们需要安装几个 Python 包。

pip install playwright lxml

请参阅 使用示例。

from langchain_community.agent_toolkits import PlayWrightBrowserToolkit

PlayWright Browser individual tools​

您可以从 PlayWright Browser 工具包中使用单独的工具。

from langchain_community.tools.playwright import ClickTool
from langchain_community.tools.playwright import CurrentWebPageTool
from langchain_community.tools.playwright import ExtractHyperlinksTool
from langchain_community.tools.playwright import ExtractTextTool
from langchain_community.tools.playwright import GetElementsTool
from langchain_community.tools.playwright import NavigateTool
from langchain_community.tools.playwright import NavigateBackTool

Graphs​

Azure Cosmos DB for Apache Gremlin​

我们需要安装一个 Python 包。

pip install gremlinpython

请参阅 使用示例。

from langchain_community.graphs import GremlinGraph
from langchain_community.graphs.graph_document import GraphDocument, Node, Relationship

Utilities​

Bing Search API​

Microsoft Bing,通常称为 Bing 或 Bing Search,是微软拥有和运营的搜索引擎。

请参阅 使用示例。

from langchain_community.utilities import BingSearchAPIWrapper
API Reference:BingSearchAPIWrapper

More​

Microsoft Presidio​

Presidio(源自拉丁语 praesidium“保护,驻军”)有助于确保敏感数据得到妥善管理和治理。它为文本和图像中的私有实体(如信用卡号、姓名、地点、社会安全号码、比特币钱包、美国电话号码、金融数据等)提供快速识别和匿名化模块。

首先,您需要安装几个 Python 包并下载一个 SpaCy 模型。

pip install langchain-experimental openai presidio-analyzer presidio-anonymizer spacy Faker
python -m spacy download en_core_web_lg

请参阅 使用示例。

from langchain_experimental.data_anonymizer import PresidioAnonymizer, PresidioReversibleAnonymizer