manaviel85370
add pages and all
da88570
import os
from dotenv import load_dotenv
import json
from openai import OpenAI
import streamlit as st
load_dotenv()
client = OpenAI(api_key=os.environ['OPENAI_API_KEY'])
def classify_text(content: str):
response = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "system", "content": 'Sei ein Textklassifizierungsmodell'},
{"role": "user",
"content": 'Klassifiziere den folgenden Text in einer der 3 Klassen: "EventDetail", "EventOverview", "None". "EventDetail" enthält detallierte Informationen zu einer Veranstaltung, wobei Werbung / Vorschau für weitere Veranstaltungen auf der Seite enthalten sein können. "EventOverview" enthält eine Liste mehrerer Events (mindestens Titel und Datum einzelner Veranstaltungen müssen enthalten sein) so wie einen Link pro Event für weitere Informationen. "None" enthält keine Informationen über spezifische Veranstaltungen. Gebe die Klasse in JSON Format (Kein Markdown) zurück: z.B.: {"class": "EventDetail"} \n' + content}],
)
return json.loads(response.choices[0].message.content)
def remove_boilerplate(content: str):
response = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "system", "content": 'Sei ein Textextraktionstool'},
{"role": "user",
"content": 'Gebe nur den Abschnitt des Textes zurück, der ALLE Veranstaltungsinformationen enthält auch Beschreibungen zur Veranstaltung. Das Markdown muss dabei erhalten bleiben. Gib die Antwort in Markdown Format zurück.' + content}],
)
return str(response.choices[0].message.content).replace("```markdown", "").replace("```","")