AzureOpenAIWhisperParser#
- class langchain_community.document_loaders.parsers.audio.AzureOpenAIWhisperParser(*, api_key: str | None = None, azure_endpoint: str | None = None, api_version: str | None = None, azure_ad_token_provider: Callable[[], str] | None = None, language: str | None = None, prompt: str | None = None, response_format: Literal['json', 'text', 'srt', 'verbose_json', 'vtt'] | None = None, temperature: float | None = None, deployment_name: str, max_retries: int = 3)[source]#
使用Azure OpenAI Whisper转录和解析音频文件。
此解析器与Azure OpenAI Whisper模型集成,用于转录音频文件。它与标准的OpenAI Whisper解析器不同,需要Azure端点和凭据。该解析器仅限于25 MB以下的文件。
注意: 此解析器使用Azure OpenAI API,提供与Azure的集成
生态系统,并使其适用于涉及其他Azure服务的工作流程。
对于大于25 MB的文件,考虑使用Azure AI Speech批量转录: https://learn.microsoft.com/azure/ai-services/speech-service/batch-transcription-create?pivots=rest-api#use-a-whisper-model
- Setup:
按照这里的说明部署Azure Whisper: https://learn.microsoft.com/azure/ai-services/openai/whisper-quickstart?tabs=command-line%2Cpython-new&pivots=programming-language-python
安装
langchain
并设置以下环境变量:
pip install -U langchain langchain-community export AZURE_OPENAI_API_KEY="your-api-key" export AZURE_OPENAI_ENDPOINT="https://your-endpoint.openai.azure.com/" export OPENAI_API_VERSION="your-api-version"
- Example Usage:
from langchain.community import AzureOpenAIWhisperParser whisper_parser = AzureOpenAIWhisperParser( deployment_name="your-whisper-deployment", api_version="2024-06-01", api_key="your-api-key", # other params... ) audio_blob = Blob(path="your-audio-file-path") response = whisper_parser.lazy_parse(audio_blob) for document in response: print(document.page_content)
- Integration with Other Loaders:
AzureOpenAIWhisperParser 可以与视频/音频加载器和 GenericLoader 一起使用,以自动执行检索和解析。
- YoutubeAudioLoader Example:
from langchain_community.document_loaders.blob_loaders import ( YoutubeAudioLoader ) from langchain_community.document_loaders.generic import GenericLoader # Must be a list youtube_url = ["https://your-youtube-url"] save_dir = "directory-to-download-videos" loader = GenericLoader( YoutubeAudioLoader(youtube_url, save_dir), AzureOpenAIWhisperParser(deployment_name="your-deployment-name") ) docs = loader.load()
初始化 AzureOpenAIWhisperParser。
- Parameters:
api_key (Optional[str]) – Azure OpenAI API 密钥。如果未提供,则默认为 AZURE_OPENAI_API_KEY 环境变量。
azure_endpoint (可选[str]) – Azure OpenAI 服务端点。如果未设置,则默认为 AZURE_OPENAI_ENDPOINT 环境变量。
api_version (可选[str]) – 使用的API版本, 默认为OPENAI_API_VERSION环境变量。
azure_ad_token_provider (Union[Callable[[], str], None]) – 用于身份验证的Azure Active Directory令牌(如果适用)。
language (可选[str]) – 请求应处理的语言。
prompt (可选[str]) – 为Whisper模型提供的自定义指令或提示。
response_format (Union[str, None]) – 所需的输出格式。选项:“json”,“text”,“srt”,“verbose_json”,“vtt”。
temperature (可选[float]) – 控制模型输出的随机性。
deployment_name (str) – Whisper 模型的部署名称。
max_retries (int) – 失败API请求的最大重试次数。
- Raises:
ImportError – 如果所需的包 openai 未安装。
方法
__init__
(*[, api_key, azure_endpoint, ...])初始化 AzureOpenAIWhisperParser。
lazy_parse
(blob)懒解析提供的音频 blob 进行转录。
parse
(blob)急切地将blob解析为一个或多个文档。
- __init__(*, api_key: str | None = None, azure_endpoint: str | None = None, api_version: str | None = None, azure_ad_token_provider: Callable[[], str] | None = None, language: str | None = None, prompt: str | None = None, response_format: Literal['json', 'text', 'srt', 'verbose_json', 'vtt'] | None = None, temperature: float | None = None, deployment_name: str, max_retries: int = 3)[source]#
初始化 AzureOpenAIWhisperParser。
- Parameters:
api_key (Optional[str]) – Azure OpenAI API 密钥。如果未提供,则默认为 AZURE_OPENAI_API_KEY 环境变量。
azure_endpoint (可选[str]) – Azure OpenAI 服务端点。如果未设置,则默认为 AZURE_OPENAI_ENDPOINT 环境变量。
api_version (可选[str]) – 使用的API版本, 默认为OPENAI_API_VERSION环境变量。
azure_ad_token_provider (Union[Callable[[], str], None]) – 用于身份验证的Azure Active Directory令牌(如果适用)。
language (可选[str]) – 请求应处理的语言。
prompt (可选[str]) – 为Whisper模型提供的自定义指令或提示。
response_format (Union[str, None]) – 所需的输出格式。选项:“json”,“text”,“srt”,“verbose_json”,“vtt”。
temperature (可选[float]) – 控制模型输出的随机性。
deployment_name (str) – Whisper 模型的部署名称。
max_retries (int) – 失败API请求的最大重试次数。
- Raises:
ImportError – 如果所需的包 openai 未安装。