File size: 5,488 Bytes
879bc0c |
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 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 |
---
license: apache-2.0
datasets:
- fka/awesome-chatgpt-prompts
- HuggingFaceFW/fineweb-2
language:
- ae
metrics:
- bleu
base_model:
- meta-llama/Llama-3.3-70B-Instruct
new_version: meta-llama/Llama-3.3-70B-Instruct
library_name: asteroid
---
from transformers import AutoModelForCausalLM, AutoTokenizer
import gradio as gr
# Načteme model GPT-J 6B a tokenizer
model_name = "EleutherAI/gpt-j-6B"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
# Funkce pro generování odpovědí
def travel_assistant(input_text):
# Přizpůsobený prompt pro cestování
prompt = f"Jsi cestovatelský asistent. Pomáháš lidem s informacemi o cestování, včetně doporučení destinací, vízových informací, tipů na plány cest a místních tradic. Odpověz na následující dotaz: {input_text}"
# Tokenizace vstupu
inputs = tokenizer(prompt, return_tensors="pt")
# Generování odpovědi
outputs = model.generate(**inputs, max_length=200)
# Dekódování odpovědi
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
return generated_text
# Vytvoření uživatelského rozhraní s Gradio
iface = gr.Interface(fn=travel_assistant,
inputs="text",
outputs="text",
title="Cestovatelský asistent",
description="Ptejte se na tipy, doporučení destinací, víza a další cestovatelské informace. Například: 'Jaké jsou vízové požadavky pro Thajsko?'")
# Spuštění aplikace
iface.launch()
import requests
import pandas as pd
from transformers import AutoModelForCausalLM, AutoTokenizer
import gradio as gr
# Načteme model GPT-J 6B a tokenizer
model_name = "EleutherAI/gpt-j-6B"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
# API klíče pro OpenWeather a CurrencyLayer
weather_api_key = "tvůj_openweather_api_klíč" # Získáš na https://openweathermap.org/api
currency_api_key = "tvůj_currencylayer_api_klíč" # Získáš na https://currencylayer.com/
# Funkce pro získání počasí
def get_weather(city):
url = f"http://api.openweathermap.org/data/2.5/weather?q={city}&appid={weather_api_key}&units=metric&lang=cs"
response = requests.get(url)
data = response.json()
if data["cod"] != "404":
main_data = data["main"]
weather_data = data["weather"][0]
temperature = main_data["temp"]
description = weather_data["description"]
return f"Aktuální teplota v {city} je {temperature}°C, počasí: {description}."
else:
return "Město nenalezeno."
# Funkce pro získání směnných kurzů
def get_exchange_rate(from_currency, to_currency):
url = f"http://api.currencylayer.com/live?access_key={currency_api_key}¤cies={from_currency},{to_currency}&source={from_currency}&format=1"
response = requests.get(url)
data = response.json()
if data["success"]:
exchange_rate = data["quotes"][f"{from_currency}{to_currency}"]
return f"1 {from_currency} = {exchange_rate} {to_currency}"
else:
return "Nelze získat směnný kurz."
# Funkce pro generování tabulky s doporučenými destinacemi
def generate_travel_table():
data = {
"Destinace": ["Paříž", "Barcelona", "Řím", "New York", "Tokyo"],
"Typ dovolené": ["Romantická", "Plážová", "Historická", "Městská", "Kultura"],
"Průměrná cena (EUR)": [300, 250, 270, 400, 350],
"Vízové požadavky": ["Schengen", "Schengen", "Schengen", "ESTA", "Visa"]
}
df = pd.DataFrame(data)
return df
# Funkce pro generování odpovědí z modelu GPT-J
def travel_assistant(input_text):
if "počasí" in input_text.lower():
city = input_text.split("počasí v")[-1].strip()
return get_weather(city)
elif "směnný kurz" in input_text.lower():
currencies = input_text.split("směnný kurz mezi")[-1].strip().split(" a ")
if len(currencies) == 2:
return get_exchange_rate(currencies[0], currencies[1])
else:
return "Zadejte měny ve formátu: 'směnný kurz mezi CZK a USD'."
elif "tabulka" in input_text.lower():
return generate_travel_table()
else:
# Generování odpovědí na otázky o cestování
prompt = f"Jsi cestovatelský asistent. Pomáháš lidem s informacemi o cestování, včetně doporučení destinací, vízových informací, tipů na plány cest a místních tradic. Odpověz na následující dotaz: {input_text}"
# Tokenizace vstupu
inputs = tokenizer(prompt, return_tensors="pt")
# Generování odpovědi
outputs = model.generate(**inputs, max_length=200)
# Dekódování odpovědi
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
return generated_text
# Vytvoření uživatelského rozhraní s Gradio
iface = gr.Interface(fn=travel_assistant,
inputs="text",
outputs="text", # Text pro odpovědi nebo tabulky
title="Cestovatelský asistent",
description="Zadejte dotaz ohledně cestování, počasí, směnných kurzů nebo napište 'tabulka' pro seznam doporučených destinací.")
# Spuštění aplikace
iface.launch() |