Spaces:
Running
Running
File size: 3,124 Bytes
a936419 40ce5ac 085ef0b 40ce5ac 1605c68 792162e 6c974e5 085ef0b 40ce5ac 0963c3d 085ef0b cb7bc65 6ad3993 cb7bc65 ee8bb54 cb7bc65 40ce5ac cb7bc65 ee3485c 51f5b3e ee3485c 6578e3e 6f91b8f 2708ed1 c230eb4 2708ed1 c230eb4 ee3485c 0b36bad 618e915 ee3485c 618e915 9c2407c eb7082a 9a43e1d ee3485c eb7082a ae2ec3d 085ef0b 79b0e5e 85deaff 9a43e1d 5399f24 40ce5ac 085ef0b 51f5b3e e5d9b98 085ef0b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
import gradio as gr
import requests
import os
import json
import google.generativeai as genai
#from bs4 import BeautifulSoup
# Load environment variables
genai.configure(api_key=os.environ["geminiapikey"])
read_key = os.environ.get('HF_TOKEN', None)
custom_css = """
#md {
height: 400px;
font-size: 30px;
background: #202020;
padding: 20px;
color: white;
border: 1 px solid white;
}
"""
def predict(prompt):
generation_config = {
"temperature": 0.4,
"top_p": 0.95,
"top_k": 40,
"max_output_tokens": 8192,
"response_mime_type": "text/plain",
}
model = genai.GenerativeModel(
model_name="gemini-2.0-flash-exp",
generation_config=generation_config,
)
chat_session = model.start_chat(
history=[]
)
response = chat_session.send_message(f"{prompt}\n antworte immer auf deutsch")
#response_data = json.loads(response)
# Extrahiere den Textwert
response_value = response['candidates'][0]['content']['parts'][0]
# Entferne die Markdown-Formatierung (optional)
#text_value = text_value.strip('```json\n').strip('```')
return response_value
return response
def get_impressum_text(search_term):
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
}
vereine = []
#search_results = google_search(search_term)
url = f"https://www.google.com/search?q=mpressum {search_term}"
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.content, 'html.parser')
impressum_div = soup.find('body')
json_data = predict(impressum_div.text)
vereine.append(json_data)
return vereine
def websearch(prompt):
url = f"https://www.google.com/search?q={prompt}"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
}
try:
response = requests.get(url, headers=headers)
response.raise_for_status() # Wirft eine Exception für Fehlercodes
except requests.exceptions.RequestException as e:
print(f"Fehler beim Abrufen der Google-Seite: {e}")
return None
soup = BeautifulSoup(response.content, 'html.parser')
first_div = soup.find('div', class_='MjjYud')
if first_div:
return first_div.text.strip()
else:
print("Kein div mit der Klasse 'MjjYud' gefunden.")
return None
# Create the Gradio interface
with gr.Blocks(css=custom_css) as demo:
with gr.Row():
#details_output = gr.Markdown(label="answer", elem_id="md")
details_output = gr.Textbox(label="Ausgabe", value = f"\n\n\n\n")
with gr.Row():
ort_input = gr.Textbox(label="prompt", placeholder="ask anything...")
with gr.Row():
button = gr.Button("Senden")
# Connect the button to the function
button.click(fn=predict, inputs=ort_input, outputs=details_output)
# Launch the Gradio application
demo.launch() |