Spaces:
Runtime error
Runtime error
from transformers import MBartForConditionalGeneration, MBart50Tokenizer | |
import dat | |
import os | |
import platform | |
def setvar(): | |
if platform.system() == "Windows": | |
print("Windows detected. Assigning cache directory to Transformers in AppData \ Local.") | |
transformers_cache_directory = os.path.join(os.getenv('LOCALAPPDATA'), 'transformers_cache') | |
if not os.path.exists(transformers_cache_directory): | |
try: | |
os.mkdir(transformers_cache_directory) | |
print(f"First launch. Directory '{transformers_cache_directory}' created successfully.") | |
except OSError as e: | |
print(f"Error creating directory '{transformers_cache_directory}': {e}") | |
else: | |
print(f"Directory '{transformers_cache_directory}' already exists.") | |
os.environ['TRANSFORMERS_CACHE'] = transformers_cache_directory | |
print("Environment variable assigned.") | |
del transformers_cache_directory | |
else: | |
print("Windows not detected. Assignment of Transformers cache directory not necessary.") | |
# Load the model and tokenizer | |
model_name = "LocalDoc/mbart_large_qa_azerbaijan" | |
tokenizer = MBart50Tokenizer.from_pretrained(model_name, src_lang="en_XX", tgt_lang="az_AZ") | |
model = MBartForConditionalGeneration.from_pretrained(model_name) | |
def answer_question(context, question): | |
# Prepare input text | |
input_text = f"context: {context} question: {question}" | |
inputs = tokenizer(input_text, return_tensors="pt", max_length=5120000, truncation=False, padding="max_length") | |
# Generate answer | |
outputs = model.generate( | |
input_ids=inputs["input_ids"], | |
attention_mask=inputs["attention_mask"], | |
max_length=5120000, | |
num_beams=5, | |
early_stopping=True | |
) | |
# Decode the answer | |
answer = tokenizer.decode(outputs[0], skip_special_tokens=True) | |
return answer | |
# Example usage | |
context = dat.data | |
question = "Vətəndaşın icazəsi olmadan videosunu çəkmək qadağandır?" | |
answer = answer_question(context, question) | |
print(answer) | |