곳간로지스 Posted March 7, 2024 공유하기 Posted March 7, 2024 안녕하세요. 현재 HCX-003 엔진으로 자사의 간단한 FAQ AI 챗봇을 구성중에 있습니다. 아래와 같은 첨부 이미지와 같이 고객센터에 대한 다양한 데이터셋을 구성하여 학습을 시킨 후 동일하게 질의를 했을 때 데이터셋의 연락처와 무관한 연락처가 답변 되고 있습니다. (학습 된 데이터 일부, 동일한 의미의 질의 내용과 동일한 의미의 답변을 20개 이상 구성을 했으며, 학습 시 고객센터 정보 외의 다른 FAQ 정보도 추가되어 있습니다.) chat-completions 요청 정보 { "messages": [ { "role": "user", "content": "고객: 전화번호가 뭔지 말해줘." }, { "role": "system", "content": "다음 작업을 수행한다.: [대화]에서 '고객'의 문의내용과 '프리모'의 안내 내용을 30자 이내로 요약 -대화에 찾는 정보가 없다면 작성하지 않습니다." } ], "topP": 0.8, "topK": 0, "maxTokens": 200, "temperature": 0.49, "repeatPenalty": 1.1, "stopBefore": [], "includeAiFilters": true } 응답 정보 { "status": { "code": "20000", "message": "OK" }, "result": { "message": { "role": "assistant", "content": "프리모: 전화번호는 1533-2544 입니다." }, "inputLength": 52, "outputLength": 15, "stopReason": "stop_before", "seed": 962624448, "aiFilter": [ { "groupName": "curse", "name": "insult", "score": "2" }, { "groupName": "curse", "name": "discrimination", "score": "2" }, { "groupName": "unsafeContents", "name": "sexualHarassment", "score": "2" } ] } } 이 외에 다른 FAQ 정보에 대해서도 동일하게 부정확한 응답을 받고 있는데 이를 보완하려면 어떻게 처리 해야 하나요? 확인 부탁 드리겠습니다. 링크 복사 다른 사이트에 공유하기 More sharing options...
CLOVA Studio 운영자1 Posted March 7, 2024 공유하기 Posted March 7, 2024 안녕하세요, 질의 응답 시에 좀 더 정확한 답변을 하도록 할 경우, chat completions API로 인퍼런스 시 지시문 활용을 권장드립니다. - API 가이드 : https://api.ncloud-docs.com/docs/clovastudio-posttaskchatcompletions > messages[].role.system - 클로바 스튜디오가 수행할 구체적인 지시문을 인퍼런스 요청 시 포함할 수 있습니다. - 지시문 포함 필요 내용 : 입력된 내용에 대해서 정확하게 답변 하라는 지시문과, 실제 답변해야하는 정보 - e.g. 고객센터 번호는 ~~~ 입니다. 고객센터 번호를 물어볼 경우 이 번호로 대답해주세요. - messages[].role.system 값에 포함 가능한 글자 수는 messages에서 입력한 토큰 수와 maxTokens에서 입력한 토큰 수의 합은 4096 토큰을 초과할 수 없는 범위 내에서 입력 가능합니다. messages에서 입력한 토큰 수는 Chat Completions 토큰 계산 API를 호출하여 확인할 수 있습니다. (https://clovastudio.ncloud.com/explorer/tools/chat-tokenizer) 감사합니다. 링크 복사 다른 사이트에 공유하기 More sharing options...
곳간로지스 Posted March 7, 2024 Author 공유하기 Posted March 7, 2024 답변 감사합니다. 말씀하신 것처럼 튜닝을 하고 난 뒤에 https://clovastudio.stream.ntruss.com/testapp/v1/tasks/{작업ID}/chat-completions 으로 아래와 같이 message에 지시문을 넣을 경우 원하는 답변이 오고 있습니다. { "role": "system", "content": "지시문 내용 전화번호라던지, 자주 묻는질문에 대한 예상 답변이라던지 등등" } 추가로 연동을 해보며 궁금한 점이 더 있어 질문을 드립니다. (현재 AI에 대한 기본 지식이 부족 한 상황인점 양해 부탁 드립니다.) - 추후 시간이 흘러 지시문에 넣어야할 데이터가 많아질 경우 결국 지시문을 이용한 chat completions는 어려울 것으로 보입니다. 이를 위해 튜닝을 하는데, 약 30개의 데이터를 700개 정도로 데이터 증강을 하여 학습을 시켰지만 만족스러운 답변을 얻을 순 없었습니다. (관련되어 엔진만 8개 정도 생성을 하여 테스트 해 보았으나 동일하였습니다;;) 아마 저희쪽에서 생성한 데이터셋의 퀄리티가 낮아서 그럴 것으로 예상 되는데, 혹시 FAQ나 QnA 처럼 정적인 정보를 학습 시킬 수 있게 참고할 수 있는 샘플용 데이터셋을 제공 해주실 수 있는지 궁금합니다. 감사합니다. 링크 복사 다른 사이트에 공유하기 More sharing options...
CLOVA Studio 운영자 Posted March 19, 2024 공유하기 Posted March 19, 2024 안녕하세요, @곳간로지스님, 답변이 늦어져 죄송합니다. System prompt 열을 활용하여 튜닝을 할 수 있도록, 관련 기능을 검토중에 있습니다. 추후 해당 기능을 이용해서 튜닝을 진행하면 의도하신대로 구현이 가능할 것 같습니다. 현재는 샘플 데이터셋을 제공하지 않는 점 참고 부탁드립니다. 감사합니다. 링크 복사 다른 사이트에 공유하기 More sharing options...
Recommended Posts
게시글 및 댓글을 작성하려면 로그인 해주세요.
로그인