Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import spacy | |
| # Load the trained spaCy model | |
| model_path = "./my_trained_model" | |
| nlp = spacy.load(model_path) | |
| # Function to classify text | |
| def classify_text(text): | |
| doc = nlp(text) | |
| predicted_labels = doc.cats | |
| return predicted_labels | |
| # Function to evaluate the predicted labels for the input text | |
| def evaluate_text(input_text): | |
| # Get the predicted labels and probabilities for the input text | |
| doc = nlp(input_text) | |
| predicted_labels = doc.cats | |
| # Construct output dictionary with likelihood for each label | |
| output_dict = { | |
| "PredictedLabels": {label: score for label, score in predicted_labels.items()} | |
| } | |
| return output_dict | |
| # Gradio Interface | |
| iface = gr.Interface(fn=evaluate_text, inputs="text", outputs="json", title="Text Evaluation-Manjinder", description="Enter your text") | |
| iface.launch(share=True) | |
| # import gradio as gr | |
| # import spacy | |
| # from sklearn.metrics import classification_report, accuracy_score, f1_score, precision_score, recall_score | |
| # # Load the trained spaCy model | |
| # model_path = "./my_trained_model" | |
| # nlp = spacy.load(model_path) | |
| # # Threshold for classification | |
| # threshold = 0.21 | |
| # # Function to classify text | |
| # def classify_text(text): | |
| # doc = nlp(text) | |
| # predicted_labels = doc.cats | |
| # return predicted_labels | |
| # # Function to evaluate the predicted labels for the input text | |
| # def evaluate_text(input_text): | |
| # # Get the predicted labels and probabilities for the input text | |
| # doc = nlp(input_text) | |
| # predicted_labels = doc.cats | |
| # # Assuming you have ground truth labels for the input text, you would compare the predicted labels with the ground truth labels here. | |
| # # For demonstration purposes, let's assume the ground truth labels are provided here. | |
| # ground_truth_labels = { | |
| # "CapitalRequirements": 0, | |
| # "ConsumerProtection": 1, | |
| # "RiskManagement": 0, | |
| # "ReportingAndCompliance": 1, | |
| # "CorporateGovernance": 0 | |
| # } | |
| # # Convert predicted and ground truth labels to lists | |
| # predicted_labels_list = [predicted_labels[label] for label in ground_truth_labels] | |
| # ground_truth_labels_list = [ground_truth_labels[label] for label in ground_truth_labels] | |
| # # Calculate evaluation metrics | |
| # accuracy = accuracy_score(ground_truth_labels_list, [1 if prob > threshold else 0 for prob in predicted_labels_list]) | |
| # precision = precision_score(ground_truth_labels_list, [1 if prob > threshold else 0 for prob in predicted_labels_list], average='weighted') | |
| # recall = recall_score(ground_truth_labels_list, [1 if prob > threshold else 0 for prob in predicted_labels_list], average='weighted') | |
| # f1 = f1_score(ground_truth_labels_list, [1 if prob > threshold else 0 for prob in predicted_labels_list], average='weighted') | |
| # # Additional classification report | |
| # report = classification_report(ground_truth_labels_list, [1 if prob > threshold else 0 for prob in predicted_labels_list]) | |
| # # # Construct output dictionary | |
| # # output_dict = { | |
| # # "PredictedLabels": predicted_labels, | |
| # # "EvaluationMetrics": { | |
| # # "Accuracy": accuracy, | |
| # # "Precision": precision, | |
| # # "Recall": recall, | |
| # # "F1-Score": f1, | |
| # # "ClassificationReport": report | |
| # # } | |
| # # } | |
| # return output_dict | |
| # # Gradio Interface | |
| # iface = gr.Interface(fn=evaluate_text, inputs="text", outputs="json", title="Text Evaluation-Manjinder", description="Enter your text") | |
| # iface.launch(share=True) | |