# Teste comparativo: Todas as vozes OpenAI + truques PT-PT # pip install openai import os from openai import OpenAI from pathlib import Path def test_all_openai_voices(): """ Testa todas as vozes do OpenAI para encontrar a mais PT-PT """ client = OpenAI( api_key=os.environ.get("OPENAI_API_KEY") ) # Texto teste com palavras que revelam sotaque texto_teste = """Olá, bem-vindos à Descomplicar. Somos uma agência portuguesa especializada em marketing digital. Ajudamos empresas a crescer através de estratégias digitais eficazes. O nosso website está disponível em www.descomplicar.pt e oferecemos serviços de consultoria, criação de sites e gestão de redes sociais.""" vozes = ["alloy", "echo", "fable", "onyx", "nova", "shimmer"] print("🧪 Testando todas as vozes OpenAI para PT-PT...") print("=" * 60) for voz in vozes: print(f"🎤 Testando voz: {voz}") try: response = client.audio.speech.create( model="tts-1-hd", voice=voz, input=texto_teste, response_format="mp3" ) speech_file_path = Path(f"teste_voz_{voz}.mp3") with open(speech_file_path, "wb") as f: f.write(response.content) print(f"✅ Gerado: {speech_file_path}") except Exception as e: print(f"❌ Erro com voz {voz}: {e}") print("\n🎧 Ouve todos os ficheiros para comparar qual soa mais PT-PT") def test_ptpt_tricks(): """ Testa vários truques para forçar PT-PT """ client = OpenAI( api_key=os.environ.get("OPENAI_API_KEY") ) textos = { "normal": "Olá, bem-vindos à Descomplicar, a vossa agência de marketing digital.", "com_indicacao": "[Português Europeu] Olá, bem-vindos à Descomplicar, a vossa agência de marketing digital.", "ortografia_ptpt": "Olá, bem-vindos à Descomplicar. Actualizamos constantemente os nossos métodos de optimização.", "vocabulario_ptpt": "Olá, bem-vindos à Descomplicar. Criamos sítios web e ecrãs optimizados para telemóveis.", "formal_ptpt": "Vossa Excelência, bem-vindos à Descomplicar. Prestamos serviços de consultoria em marketing digital." } print("🇵🇹 Testando truques para PT-PT...") print("=" * 40) for nome, texto in textos.items(): print(f"📝 Teste: {nome}") try: response = client.audio.speech.create( model="tts-1-hd", voice="nova", # Voz mais neutra input=texto, response_format="mp3" ) speech_file_path = Path(f"ptpt_trick_{nome}.mp3") with open(speech_file_path, "wb") as f: f.write(response.content) print(f"✅ Gerado: {speech_file_path}") except Exception as e: print(f"❌ Erro: {e}") if __name__ == "__main__": if not os.environ.get("OPENAI_API_KEY"): print("❌ OPENAI_API_KEY não configurada!") exit(1) print("🔬 Teste Comparativo OpenAI TTS - PT-PT vs PT-BR") print("=" * 55) escolha = input("Testar: (v)ozes diferentes ou (t)ruques PT-PT? [v/t]: ").lower() if escolha == 't': test_ptpt_tricks() else: test_all_openai_voices() print("\n🎯 Conclusão: Compara os ficheiros MP3 gerados!") print("💡 Se nenhum soar PT-PT, confirma que precisamos de outra solução")