Guia de Usuário

Este guia exemplifica de forma básica as principais operações para realizar a transcrição em arquivos individuais ou em um lote de arquivos. Elas são:

Transcrever arquivos

Exemplifica de forma básica as principais operações para transcrever arquivos individuais. Para maiores detalhes consulte o guia da API REST.

Antes de realizar os passo abaixo, é necessário ter um token valido para acesso.

Para realizar a transcrição de arquivos individuais de áudio, deve-se realizar os seguintes passos:

1. Realizar o upload e a transcrição dos arquivos

Os arquivos podem ser transferidos pelo método create na API REST.

Exemplo:

curl -X 'POST' \
  'http://localhost:8000/trd/v3/job/create' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer <token>' \
  -H 'Content-Type: multipart/form-data' \
  -F 'upload_file=@single.wav;type=audio/x-wav'

Após utilizar o método create conforme descrito acima, serão devolvidas, como resultado, um json com informações relevantes ao estado do arquivo, como o seu identificador que é encontrado dentro do atributo <id> e informações relevantes ao estado atual do transcrição é pode ser encontrado dentro de <status>.

Exemplo:

{
	"job": {
	  "id": "62309b87e77a8b58bc0df282",
	  "filename": "single.wav",
	  "status": "QUEUED",
	  "created_at": "2022-03-15T10:58:31.408395-03:00",
	  "callback_urls": [],
	  "callback_failure_reason": "",
	  "failure_reason": "",
	  "media": {
		"md5": "a79984a2cf53d24abbd147f98a63cc67",
		"size": 36784
	  },
	  "config": {
		"priority": 50,
		"normalization": {},
		"diarization": {
		  "vad": {
			"chunk_max_silence": 1200,
			"chunk_max_length": 3600,
			"dual_tone": {
			  "enabled": false,
			  "row_freq": [
				350,
				697,
				770,
				852,
				941
			  ],
			  "col_freq": [
				440,
				1209,
				1336,
				1477,
				1633
			  ],
			  "start_time": 0,
			  "stop_time": 5,
			  "min_duration": 0.012
			}
		  },
		  "clustering": {
			"threshold": -0.4,
			"enabled": true
		  },
		  "descriptor": {
			"enabled": false
		  }
		},
		"recognition": {
		  "lm": "builtin:slm/callcenter-small",
		  "textify": {
			"enabled": false
		  },
		  "hints_words": [],
		  "decoder": {
			"max_sentences": 1,
			"word_details": 1
		  },
		  "tasks": []
		}
	  }
	}
  }

2. Acompanhar o andamento do processo

Cada arquivo possui um atributo de controle que indica o estado atual do processo de transcrição. O atributo de controle possui os valores:

  • QUEUED: o arquivo está na fila esperando o inicio do processo de normalização.

  • IN_PROGRESS: o arquivo já entrou na pipeline de reconhecido e transcrição.

  • FAILED: o arquivo não conseguiu ser transcrito, por falha do sistema ou problemas com o audio.

  • STOPPED: o arquivo parou de ser transcrito por intermédio do operador do sistema.

  • COMPLETED: o arquivo já foi transcrito.

Exemplo:

curl -X 'GET' \
  'http://localhost:8000/trd/v3/job/status/<id>' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer <token>'

3. Recuperar o resultado da transcrição

Quando o arquivo estiver no estado COMPLETED, a transcrição daquele arquivo é considerada finalizada. A partir desse momento, o resultado da transcrição daquele arquivo pode ser consultado com segurança, pois todos os dados estarão completos.

Exemplo:

curl -X 'GET' \
  'http://localhost:8000/trd/v3/job/result/<id>' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer <token>'

4. Recuperar o resultado da transcrição com tags

Similar de como ocorre com a transcrição de arquivos individuais, podemos também fazer um controle de um grupo de arquivos através de uma <tag>, o upload funciona de forma similar ao item 1, porem podemos adicionar um parâmetro adicional a URL

Exemplo:

curl -X 'POST' \
  'http://localhost:8000/trd/v3/job/create?tag=tag1-teste' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer <token>' \
  -H 'Content-Type: multipart/form-data' \
  -F 'upload_file=@single.wav;type=audio/x-wav'

Agora podemos recuperar um grupo de arquivos que possuem a mesma <tag> e o mesmo <status>.

Exemplo:

curl -X 'GET' \
  'http://localhost:8000/trd/v3/query/job?tag=tag1-teste&status=COMPLETED&page=1&limit=100' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer <token>'