From 34a2755a542d2640c5a4824576fad28bb6be41b5 Mon Sep 17 00:00:00 2001 From: Kenny Date: Fri, 7 Jul 2023 15:07:45 -0400 Subject: [PATCH] Allow passing api key into OpenAIWhisperParser (#7281) This just allows the user to pass in an api_key directly into OpenAIWhisperParser. Very simple addition. --- langchain/document_loaders/parsers/audio.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/langchain/document_loaders/parsers/audio.py b/langchain/document_loaders/parsers/audio.py index 86ad8f8df4..de7e354ab1 100644 --- a/langchain/document_loaders/parsers/audio.py +++ b/langchain/document_loaders/parsers/audio.py @@ -1,4 +1,4 @@ -from typing import Iterator +from typing import Iterator, Optional from langchain.document_loaders.base import BaseBlobParser from langchain.document_loaders.blob_loaders import Blob @@ -9,6 +9,9 @@ class OpenAIWhisperParser(BaseBlobParser): """Transcribe and parse audio files. Audio transcription is with OpenAI Whisper model.""" + def __init__(self, api_key: Optional[str] = None): + self.api_key = api_key + def lazy_parse(self, blob: Blob) -> Iterator[Document]: """Lazily parse the blob.""" @@ -28,6 +31,10 @@ class OpenAIWhisperParser(BaseBlobParser): "pydub package not found, please install it with " "`pip install pydub`" ) + # Set the API key if provided + if self.api_key: + openai.api_key = self.api_key + # Audio file from disk audio = AudioSegment.from_file(blob.path)