--- language: - it license: apache-2.0 datasets: - DeepMount00/gquad_it pipeline_tag: question-answering --- ## How to Use How to use mamba q&a ```python from transformers import MambaConfig, MambaForCausalLM, AutoTokenizer import torch model_name = "DeepMount00/mamba_790_hf_qa" tokenizer = AutoTokenizer.from_pretrained(model_name) model = MambaForCausalLM.from_pretrained(model_name, device_map={"": 0}).eval() def predict(contesto, domanda): device = "cuda:0" prefix_text = 'Di seguito ti verrà fornito un contesto e poi una domanda. il tuo compito è quello di rispondere alla domanda basandoti esclusivamente sul contesto\n\n' prompt = f"""{prefix_text}##CONTESTO: {contesto}\n##DOMANDA: {domanda}\n""" input_ids = tokenizer([prompt], return_tensors="pt").to(device) generate_ids = model.generate(**input_ids, max_new_tokens=150, eos_token_id=0) answer = tokenizer.batch_decode(generate_ids) try: final_answer = answer[0].split("##RISPOSTA: ")[1].split('\n', 1)[0] except IndexError: final_answer = "" return final_answer contesto = """La torre degli Asinelli è una delle cosiddette due torri di Bologna, simbolo della città, situate in piazza di porta Ravegnana, all'incrocio tra le antiche strade San Donato (ora via Zamboni), San Vitale, Maggiore e Castiglione. Eretta, secondo la tradizione, fra il 1109 e il 1119 dal nobile Gherardo Asinelli, la torre è alta 97,20 metri, pende verso ovest per 2,23 metri e presenta all'interno una scalinata composta da 498 gradini. Ancora non si può dire con certezza quando e da chi fu costruita la torre degli Asinelli. Si presume che la torre debba il proprio nome a Gherardo Asinelli, il nobile cavaliere di fazione ghibellina al quale se ne attribuisce la costruzione, iniziata secondo una consolidata tradizione l'11 ottobre 1109 e terminata dieci anni dopo, nel 1119.""" domanda = "Dove si trova precisamente la torre degli Asinelli?" print(predict(contesto, domanda)) ```