|
from io import BytesIO |
|
from langchain_openai import ChatOpenAI |
|
from openai import OpenAI |
|
|
|
|
|
def n_of_questions(): |
|
n_of_questions = 25 |
|
return n_of_questions |
|
|
|
openai_api_key = os.environ.get("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") |
|
openai_api_key = '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' |
|
|
|
model = "gpt-4o-mini" |
|
|
|
def load_model(openai_api_key): |
|
return ChatOpenAI( |
|
model_name=model, |
|
openai_api_key=openai_api_key, |
|
temperature=0.5 |
|
) |
|
|
|
|
|
client = OpenAI(api_key=openai_api_key) |
|
|
|
|
|
def convert_text_to_speech(text, output, voice): |
|
try: |
|
|
|
response = client.audio.speech.create(model="tts-1-hd", voice=voice, input=text) |
|
|
|
if isinstance(output, BytesIO): |
|
|
|
for chunk in response.iter_bytes(): |
|
output.write(chunk) |
|
else: |
|
|
|
with open(output, 'wb') as f: |
|
for chunk in response.iter_bytes(): |
|
f.write(chunk) |
|
|
|
except Exception as e: |
|
print(f"An error occurred: {e}") |
|
|
|
response = client.audio.speech.create(model="tts-1-hd", voice=voice, input='Here is my Report.') |
|
|
|
if isinstance(output, BytesIO): |
|
for chunk in response.iter_bytes(): |
|
output.write(chunk) |
|
else: |
|
with open(output, 'wb') as f: |
|
for chunk in response.iter_bytes(): |
|
f.write(chunk) |
|
|
|
|
|
def transcribe_audio(audio): |
|
audio_file = open(audio, "rb") |
|
transcription = client.audio.transcriptions.create( |
|
model="whisper-1", |
|
file=audio_file |
|
) |
|
return transcription.text |
|
|