from transformers import pipeline from gtts import gTTS from deep_translator import GoogleTranslator # Loading models summarizer = pipeline("summarization", model="facebook/bart-large-cnn") # Load summarizer sentiment_analyzer = pipeline("sentiment-analysis") # Load sentiment analyzer def analyze_sentiment(text): result = sentiment_analyzer(text[:500])[0] return result['label'] def summarize_text(text): cleaned_text = text.strip().replace("\n", " ") cleaned_text = cleaned_text[:3000] # Limit to avoid token overflow result = summarizer( cleaned_text, max_length=130, min_length=30, do_sample=False ) summary_text = result[0]['summary_text'] return summary_text def translate_to_hindi(text): try: translated_text = GoogleTranslator(source='auto', target='hi').translate(text) return translated_text except Exception as e: print(f"Translation Error: {e}") return text # Fallback to original text if translation fails def generate_hindi_tts(text, filename="output.mp3"): try: hindi_text = translate_to_hindi(text) tts = gTTS(text=hindi_text, lang='hi') tts.save(filename) print(f"Hindi audio saved to {filename}") return filename except Exception as e: print(f"Error in generating the TTS: {e}") return None