Este projeto é uma API REST em Spring Boot que recebe um arquivo de áudio (.wav, .mp3, .m4a) e retorna a transcrição do conteúdo utilizando o Spring AI + OpenAI Audio Transcription (Whisper).
- Upload de arquivos de áudio via HTTP POST
- Transcrição automática usando OpenAI
- Configuração via
application.properties - Suporte a WAV, MP3, M4A (e outros formatos suportados pela OpenAI)
Você pode gerar um áudio facilmente usando o site abaixo:
- Digite um texto em inglês ou português
- Escolha uma voz
- Clique em Convert to MP3
- Baixe o arquivo
.mp3 - Envie o arquivo para a API
Crie o arquivo src/main/resources/application.properties:
spring.ai.openai.api-key=SUA_API_KEY_AQUI
spring.ai.openai.base-url=https://api.openai.comNo pom.xml:
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-openai-spring-boot-starter</artifactId>
</dependency>POST
http://localhost:8081/api/speechify
| Key | Type | Value |
|---|---|---|
| file | File | seu_audio.mp3 |
- Método: POST
- Body → form-data
- Key:
file - Type: File
- Envie o arquivo de áudio
Se você enviar um áudio e receber um erro HTTP 400, 401, 429 ou 500, pode ser porque sua cota de tokens acabou.
A OpenAI cobra por:
- Tamanho do áudio
- Tempo de áudio (segundos)
- Número de requisições
Quando o limite gratuito acaba, a API retorna erro.
- Verifique sua conta OpenAI
- Adicione um cartão de crédito
- Gere uma nova API Key
- Atualize no
application.properties
- Java 17+
- Spring Boot
- Spring AI
- OpenAI Whisper API
- Maven
Se a transcrição demorar ou der erro, tente:
- Reduzir o tamanho do áudio
- Converter para WAV
- Usar inglês (Whisper funciona melhor)