Spaces:
Sleeping
Sleeping
| from obsei.payload import TextPayload | |
| from transformers import pipeline | |
| from obsei.analyzer.classification_analyzer import ZeroShotClassificationAnalyzer, ClassificationAnalyzerConfig | |
| # Step 1: Define your configuration (labels, etc.) | |
| analyzer_config = ClassificationAnalyzerConfig( | |
| labels=["Sports", "Politics", "Technology", "Entertainment"], # Example labels | |
| multi_class_classification=False, | |
| add_positive_negative_labels=False | |
| ) | |
| # Step 2: Initialize the ZeroShotClassificationAnalyzer | |
| analyzer = ZeroShotClassificationAnalyzer( | |
| model_name_or_path="facebook/bart-large-mnli", # Using a pre-trained zero-shot classification model | |
| device="cpu" # Use GPU, set to "cpu" if using CPU | |
| ) | |
| # Step 3: Prepare the input text (as TextPayload objects) | |
| texts = [ | |
| "The new iPhone has been released and it's taking the tech world by storm.", | |
| "The latest political debate had strong views on the economy.", | |
| "The football match between Barcelona and Madrid ended in a draw." | |
| ] | |
| # Create TextPayloads from the texts | |
| source_responses = [TextPayload(processed_text=text) for text in texts] | |
| # Step 4: Run the analysis | |
| results = analyzer.analyze_input(source_response_list=source_responses, analyzer_config=analyzer_config) | |
| # Step 5: Output the results | |
| for result in results: | |
| print(f"Text: {result.processed_text}") | |
| print(f"Classification Scores: {result.segmented_data['classifier_data']}") | |