Este é um servidor baseado em FastAPI que atua como uma interface entre seu aplicativo e os serviços de IA baseados em nuvem. Ele se concentra em três tarefas principais:
Atualmente, ele usa a API da OpenAI para esses serviços, mas foi projetado para que possamos adicionar outros provedores no futuro.
Transcrição (fala para texto)
Texto para fala
Fala para fala
.
├── cloud_providers/
│ ├── base.py
│ └── openai_api_handler.py
├── server/
│ ├── main.py
│ ├── routers/
│ │ ├── transcribe.py
│ │ ├── tts.py
│ │ └── speech_to_speech.py
│ └── utils/
│ └── logger.py
|
└── requirements.txt
└── README.md
Clonar o repositório
Crie um ambiente virtual:
python -m venv venv
source venv/bin/activate
Instale dependências:
pip install -r requirements
Configure variáveis de ambiente:
export OPENAI_API_KEY=your_openai_api_key
Para iniciar o servidor, navegue até o diretório do projeto e execute:
python server/main.py
Isso iniciará o servidor FastAPI, normalmente em http://localhost:8000
.
API docs
O aplicativo usa manipuladores de arquivos rotativos para registro, com arquivos de registro separados para diferentes componentes:
logs/main.log
: principais logs do aplicativologs/transcription.log
: logs específicos da transcriçãologs/tts.log
: registros de conversão de texto em falalogs/speech_to_speech.log
: registros de fala para fala O aplicativo inclui tratamento de erros para vários cenários, incluindo erros de API e desconexões de WebSocket. Os erros são registrados e as exceções HTTP apropriadas são geradas.
O projeto foi projetado tendo em mente a extensibilidade. A classe base abstrata CloudProviderBase
em base.py
permite fácil integração de provedores de nuvem adicionais além do OpenAI.
Contribuições são bem-vindas! Sinta-se à vontade para enviar uma solicitação pull.
[Especifique sua licença aqui]