No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

34 líneas
889B

  1. """
  2. google voice service
  3. """
  4. import json
  5. import openai
  6. from config import conf
  7. from common.log import logger
  8. from voice.voice import Voice
  9. class OpenaiVoice(Voice):
  10. def __init__(self):
  11. openai.api_key = conf().get('open_ai_api_key')
  12. def voiceToText(self, voice_file):
  13. logger.debug(
  14. '[Openai] voice file name={}'.format(voice_file))
  15. reply={}
  16. try:
  17. file = open(voice_file, "rb")
  18. result = openai.Audio.transcribe("whisper-1", file)
  19. text = result["text"]
  20. reply = {"type": "TEXT", "content": text}
  21. logger.info(
  22. '[Openai] voiceToText text={} voice file name={}'.format(text, voice_file))
  23. except Exception as e:
  24. reply = {"type": "ERROR", "content": str(e)}
  25. finally:
  26. return reply
  27. def textToVoice(self, text):
  28. pass