빠른 시작: Bing Spell Check REST API 및 Python으로 맞춤법 검사
경고
2020년 10월 30일에 Bing Search API가 Azure AI 서비스에서 Bing Search Services로 이동되었습니다. 이 문서는 참조용으로만 제공됩니다. 업데이트된 문서는 Bing search API 문서를 참조하세요. Bing 검색을 위한 새 Azure 리소스 만들기에 대한 지침은 Azure Marketplace를 통해 Bing Search 리소스 만들기를 참조하세요.
이 빠른 시작을 사용하여 Bing Spell Check REST API에 대한 첫 번째 호출을 수행할 수 있습니다. 이 간단한 Python 애플리케이션은 API에 요청을 보내고 제안된 수정 사항을 반환합니다.
이 애플리케이션은 Python으로 작성되었지만, API는 대부분의 프로그래밍 언어와 호환되는 RESTful 웹 서비스입니다. 이 애플리케이션의 소스 코드는 GitHub에 제공됩니다.
사전 요구 사항
- Python 3.x
Azure 리소스 만들기
다음 Azure 리소스 중 하나를 만들어 Bing Spell Check API 사용을 시작합니다.
- 리소스를 삭제할 때까지 Azure Portal을 통해 사용할 수 있습니다.
- 평가판 가격 책정 계층을 사용하여 서비스를 사용해보고, 나중에 프로덕션용 유료 계층으로 업그레이드합니다.
- Bing Spell Check API는 Bing Search v7 리소스의 일부 계층에서도 제공됩니다.
- 리소스를 삭제할 때까지 Azure Portal을 통해 사용할 수 있습니다.
- 여러 Azure AI 서비스에서 애플리케이션에 동일한 키와 엔드포인트를 사용합니다.
애플리케이션 초기화
선호하는 IDE 또는 편집기에서 새 Python 파일을 만들고 다음 import 문을 추가합니다.
import requests import json
맞춤법 검사를 원하는 텍스트, 구독 키 및 Bing Spell Check 엔드포인트에 대한 변수를 만듭니다. 다음 코드에서 글로벌 엔드포인트를 사용하거나 리소스의 Azure Portal에 표시되는 사용자 지정 하위 도메인 엔드포인트를 사용할 수 있습니다.
api_key = "<ENTER-KEY-HERE>" example_text = "Hollo, wrld" # the text to be spell-checked endpoint = "https://api.cognitive.microsoft.com/bing/v7.0/SpellCheck"
요청에 대한 매개 변수 만들기
text
를 키로 사용하고 사용자의 텍스트를 값으로 사용하여 새 사전을 만듭니다.data = {'text': example_text}
요청에 대한 매개 변수를 추가합니다.
=
연산자를 사용하여mkt
매개 변수에 시장 코드를 할당합니다. 시장 코드는 요청을 수행한 국가/지역의 코드입니다.&
연산자를 사용하여mode
매개 변수를 추가한 다음, 맞춤법 검사 모드를 할당합니다. 모드는proof
(대부분의 맞춤법/문법 오류 catch) 또는spell
(대부분의 맞춤법은 catch하지만 문법 오류는 많지 않음) 중 하나일 수 있습니다.
params = { 'mkt':'en-us', 'mode':'proof' }
Content-Type
헤더를 추가하고Ocp-Apim-Subscription-Key
헤더에 구독 키를 추가합니다.headers = { 'Content-Type': 'application/x-www-form-urlencoded', 'Ocp-Apim-Subscription-Key': api_key, }
요청 보내기 및 응답 읽기
요청 라이브러리를 사용하여 POST 요청을 보냅니다.
response = requests.post(endpoint, headers=headers, params=params, data=data)
JSON 응답을 가져와서 출력합니다.
json_response = response.json() print(json.dumps(json_response, indent=4))
애플리케이션 실행
명령줄을 사용하는 경우 다음 명령을 사용하여 애플리케이션을 실행합니다.
python <FILE_NAME>.py
예제 JSON 응답
성공한 응답은 다음 예제와 같이 JSON으로 반환됩니다.
{
"_type": "SpellCheck",
"flaggedTokens": [
{
"offset": 0,
"token": "Hollo",
"type": "UnknownToken",
"suggestions": [
{
"suggestion": "Hello",
"score": 0.9115257530801
},
{
"suggestion": "Hollow",
"score": 0.858039839213461
},
{
"suggestion": "Hallo",
"score": 0.597385084464481
}
]
},
{
"offset": 7,
"token": "wrld",
"type": "UnknownToken",
"suggestions": [
{
"suggestion": "world",
"score": 0.9115257530801
}
]
}
]
}