mgokg's picture
Update app.py
b8db0a7 verified
raw
history blame
2.05 kB
import gradio as gr
from selenium import webdriver
from selenium.common.exceptions import WebDriverException
from selenium.webdriver.common.by import By
from gradio_client import Client
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.chrome.options import Options
import groq
import os
import time
options = webdriver.ChromeOptions()
options.add_argument('--headless')
wd = webdriver.Chrome(options=options)
#get your api-key @groq.com. its free!
api_key = os.getenv('groq')
client = groq.Client(api_key=api_key)
# Use Llama 3 70B powered by Groq for answering
def update(prompt, ort):
try:
completion = client.chat.completions.create(
model="llama3-70b-8192",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": f"gefragt sind die nächsten 3 zugverbindungen von bad kissingen nach {ort} du findest die antwort im kontext. liefere als antwort ein 2 spaltige tabelle. linke spalte: abfahrtszeit, fahrtdauer, ankunftszeit.rechte spalte: abfahrtsort,leer,zielort. formatiere die tabelle in markdown\n kontext: \n {prompt} \n antworte immer auf deutsch!"}
],
)
return completion.choices[0].message.content
except Exception as e:
return f"Error in response generation: {str(e)}"
def selenium(message):
texts=""
url = f"https://www.google.com/search?q=zugverbindung+bad+kissingen+{message}"
#url = 'https://www.spiegel.de'
#<ol class="AmbQnf">
wd.get(url)
wd.implicitly_wait(3)
element = wd.find_element(By.TAG_NAME, "body")
#wd.quit()
time.sleep(3)
#return element.text
results = update(element.text, message)
results=gr.Markdown()
return results
iface = gr.Interface(
fn=selenium,
inputs="text",
outputs="text",
#title="perplexity.ai",
#description="Websuche"
)
iface.launch()