멋쟁이사자처럼 중앙 해커톤에서 시각장애인들을 위한 모의투자 서비스를 개발하는 과정에서,
시각장애인들은 타자로 검색할 수 없으니 음성으로 검색을 해야 하기에,
네이버 클라우드에서 제공하는 Clova를 이용하게 되었다(Speech To Text)
https://www.ncloud.com/product/aiService/clovaSpeech
위 링크에서 이용신청 후 등록하면,
이렇게 Client ID와 Client Secret Key들을 준다.
그리고, 등록할 때, 아래처럼 이 서비스를 이용할 도메인을 적어준다.
(나는 이 글을 쓴 후로 해지할 것이기 때문에 Key가 나온 캡쳐본을 올린다)
https://api.ncloud-docs.com/docs/ai-application-service-clovaspeech-clovaspeech
위 링크는 개발자들이 참고할 API 사용법이 쓰여있다
python에 해당하는 코드를 보면 된다.
def speech_to_text(request):
Lang = "Kor" # Kor / Jpn / Chn / Eng
URL = "https://naveropenapi.apigw.ntruss.com/recog/v1/stt?lang=" + Lang
ID = "qcxc89t0bs" # 인증 정보의 Client ID
Secret = "vgU8vBup9zR8gFURTxisFeOHDhgfKNuxe2V8GraT" # 인증 정보의 Client Secret
headers = {
"Content-Type": "application/octet-stream",
"X-NCP-APIGW-API-KEY-ID": ID,
"X-NCP-APIGW-API-KEY": Secret,
}
audio_file = request.FILES.get('audio')
response = requests.post(URL, data=audio_file.read(), headers=headers)
rescode = response.status_code
if rescode == 200:
return Response(response.text)
API 문서대로, header에 ID 및 Secret을 넣어주고,
클라이언트에게 받은 audio 파일을 audio_file변수에 담는다.
그리고 그냥 API문서의 URL에 post 요청을 보내주면 변환돼서 text로 뽑을 수 있다.
정말 간단하다!
'API' 카테고리의 다른 글
[API] 한국투자증권 api 가져오기(2) (0) | 2023.08.21 |
---|---|
[API] 한국투자증권 api 가져오기(1) (0) | 2023.08.21 |