Chat Completion
1. 소개
Chat Completion API는 사용자가 제공한 텍스트 입력에 대해 자연스럽고 유창한 대화 응답을 생성하는 서비스입니다. 이 API는 다양한 사용 사례에서 사용될 수 있으며, 이를 통해 채팅봇, 고객 지원 시스템, 개인 비서 등 다양한 응용 프로그램을 개발할 수 있습니다.
주요 기능
- 대화 응답 생성: 제공된 메시지 이력에 기반하여 일관성 있고 유창한 대화 응답을 생성합니다.
- 토큰 제어: 생성할 응답의 최대 토큰 수를 설정하여 응답 길이를 제어할 수 있습니다.
- 온도 설정: 응답의 다양성과 창의성을 조절할 수 있는 온도(temperature) 파라미터를 지원합니다.
- 역할 기반 메시지: 시스템, 사용자, 어시스턴트 등 다양한 역할을 지정하여 보다 자연스러운 대화 흐름을 유지할 수 있습니다.
- 다중 응답 선택: 단일 요청에 대해 여러 응답을 생성하여 다양한 옵션을 제공할 수 있습니다.
왜 사용해야 하나요?
Chat Completion API를 사용하면 사용자의 텍스트 입력에 대해 즉각적이고 자연스러운 응답을 생성할 수 있습니다. 이를 통해 다음과 같은 다양한 대화 기반 응용 프로그램을 개발하거나, 사용자 경험을 향상시킬 수 있습니다.
- 챗봇 개발: 사용자가 입력한 텍스트에 대해 자연스럽고 유창한 응답을 생성하여 대화형 챗봇을 구현할 수 있습니다.
- 고객 지원 시스템: 고객의 문의에 대해 자동으로 응답을 생성하여 고객 지원 서비스를 자동화할 수 있습니다.
- 개인 비서: 사용자의 명령이나 질문에 대해 실시간으로 응답을 생성하여 개인 비서 역할을 수행할 수 있습니다.
2. 예제
아래는 간단한 사용 예제입니다. 이 예제에서는 사용자가 입력한 텍스트에 대해 API를 통해 대화 응답을 생성하는 방법을 보여줍니다.
요청 예시
shell
curl -X POST 'https://apis.daglo.ai/nlp/v1/sync/chat/completions' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <API_TOKEN>' \
--data '{
"model": "elli",
"messages": [
{
"role": "system",
"content": "당신은 초등학교 교사입니다."
},
{
"role": "user",
"content": "금리에 대해서 초등학생이 이해 가능한 수준으로 설명해 주세요."
}
],
"topP": 0.9
}'
응답 예시
json
{
"rid": "<RID>",
"model": "elli",
"chatResults": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "\"금리는 돈을 빌릴 때 내는 돈의 양입니다. 돈의 가치가 높아짐에 따라 한 달 후에 돌려주는 돈의 양이 많아집니다. 예를 들어 10,000원이 2달 동안 10,500원이 될 경우, 이전에 받은 10,000원에 대한 이자가 500원입니다."
},
"finishReason": "stop"
}
],
"usage": {
"promptTokens": 23,
"completionTokens": 78,
"totalTokens": 101
}
}
3. 사용법
1) API Key 발급하기
- API 콘솔에 접속하여 회원가입 후 로그인합니다.
- 토큰 메뉴에 들어가 새로운 토큰을 발급합니다.
- 발급한 토큰 정보를 복사해 요청 시 인증 토큰 정보로 사용합니다.
2) 요청하기
- 아래의 예제는 사용자가 입력한 텍스트에 대해 대화 응답을 생성하는 요청입니다.
- 지정된 엔드포인트로 필요한 파라미터 정보를 포함해 요청합니다.
- 보다 자세한 API 정보는 API Reference를 참고해주세요.
a. POST
Send chat message for completion
- Endpoint
shell
POST https://apis.daglo.ai/nlp/v1/sync/chat/completions
3) 응답받기
Success
응답 코드 보기
200
Error
응답 코드 보기
401
: Unauthorized. 인증 실패.403
: Forbidden. 접근 금지.429
: Too Many Requests. 요청 과다.500
: Internal Server Error. 서버 오류.
업데이트 이력
- 20240902 ver1.0 API 문서가 작성되었습니다.