karthikeyan-r's picture
Create llm.py
d0fec0d verified
raw
history blame
1.23 kB
from openai import AzureOpenAI
import docx2txt
import PyPDF2
import os
import pdfplumber
from pdfminer.high_level import extract_text
class OpenaiAPI:
def __init__(self) -> None:
self.client = AzureOpenAI(
api_key=os.getenv("API"),
api_version="2023-07-01-preview",
azure_endpoint=os.getenv("URL"),
)
def get_response(self, prompt) -> str:
try:
completion = self.client.chat.completions.create(
model="GPT-4o", # e.g., gpt-35-instant
messages=prompt,
temperature=0,
)
return completion.choices[0].message.content
except Exception as e:
print(f"An error occurred while generating prompt from OpenAI API: {e}")
def docx_to_text(self, docx_path):
text = docx2txt.process(docx_path)
return text
def pdf_to_text_pypdf2(self, pdf_file):
text = extract_text(pdf_file)
return text
def save_uploadedfile(self, uploadedfile):
with open(os.path.join("tempDir", uploadedfile), "wb") as f:
f.write(uploadedfile.getbuffer())
return st.success(f"Saved File: {uploadedfile.name} to tempDir")