String url = "https://clovastudio.stream.ntruss.com/v1/tasks/" + modelId + "/chat-completions";
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", "Bearer "+ API_KEY);
headers.set("X-NCP-CLOVASTUDIO-REQUEST-ID", UUID.randomUUID().toString());
headers.setContentType(MediaType.APPLICATION_JSON);
String body = """
{
"messages": [
{
"role": "user",
"content": "테스트 해보자."
}
]
}
""";
HttpEntity<String> requestEntity = new HttpEntity<>(body, headers);
try {
ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.POST, requestEntity, String.class);
다음과 같이 작성하여 요청을 전송하였습니다.
튜닝 생성이나 조회를 통해 확인해보았을 때 정상적으로 진행되는 것을 보아 API_KEY의 문제는 아닌 것으로 판단됩니다.
1. 요청 헤더의 필수값 두가지 인증과 content-Type을 설정해주었고,
2. 요청 바디의 필수값을 설정하여 전송하였습니다.
또한, 입력할 taskId또한 학습 조회를 진행하였을 때 상태가 SUCCEEDED인 것으로 보아 학습이 잘 완료된 것으로 생각됩니다.
그런데 요청을 보낼 경우
url : https://clovastudio.stream.ntruss.com/v1/tasks/lmh8mmt8/chat-completions
403 Forbidden on POST request for "https://clovastudio.stream.ntruss.com/v1/tasks/lmh8mmt8/chat-completions": "{"status":{"code":"40300","message":"Forbidden"}}"
API 요청 실패: 403 Forbidden on POST request for "https://clovastudio.stream.ntruss.com/v1/tasks/lmh8mmt8/chat-completions": "{"status":{"code":"40300","message":"Forbidden"}}"
이러한 에러가 발생하고 있습니다.
어떤 부분이 잘못되었는지 도움을 주실 수 있을까요??
다른 api들을 테스트하였을 때, 잘못 될 경우 에러 코드를 잘 전달받고 있는 상황이며,
학습 생성, 조회, 리스트 조회 등 다른 기능들은 모두 잘 동작하는 상황입니다.
학습을 생성한 후 해당 taskId에 대한 권한을 부여해야 하거나, chat-completions를 사용하기 위해선 현재 계정에 대해 다른 권한이 추가로 필요할까요?
해당 계정으로 학습 생성, 조회는 가능한 상황입니다.