Spaces:
Runtime error
Runtime error
| from transformers import AutoTokenizer, AutoModel | |
| import torch | |
| import os | |
| import gradio as gr | |
| # Load Hugging Face Token | |
| HF_TOKEN = os.getenv("HF_TOKEN") | |
| if not HF_TOKEN: | |
| raise ValueError("β Hugging Face API token not found! Set HF_TOKEN as an environment variable.") | |
| # Load tokenizer and model | |
| tokenizer = AutoTokenizer.from_pretrained("mental/mental-bert-base-uncased", use_auth_token=HF_TOKEN) | |
| model = AutoModel.from_pretrained("mental/mental-bert-base-uncased", use_auth_token=HF_TOKEN,output_hidden_states=True) | |
| model.eval() # Set model to evaluation mode | |
| def infer(text): | |
| inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True, max_length=512) | |
| with torch.no_grad(): | |
| outputs = model(**inputs) | |
| last_hidden_state = outputs.last_hidden_state # (1, seq_len, hidden_size) | |
| mask = inputs['attention_mask'].unsqueeze(-1).expand(last_hidden_state.size()).float() | |
| masked_embeddings = last_hidden_state * mask | |
| summed = torch.sum(masked_embeddings, dim=1) | |
| counts = torch.clamp(mask.sum(dim=1), min=1e-9) | |
| mean_pooled = summed / counts | |
| return mean_pooled.squeeze().tolist() | |
| # Gradio interface | |
| iface = gr.Interface( | |
| fn=infer, | |
| inputs=[ | |
| gr.Textbox(label="text"), | |
| ], | |
| outputs="text" | |
| ) | |
| iface.launch() | |