[서비스] AI 요리 블로거 챗종원 개발기 -3

2023. 10. 26. 21:55WEB

 앞선 1부와 2부에서 서비스의 전체 청사진 및 티스토리 Token의 영속성을 위한 인증 후 Access Token의 처리 과정에 대해 소개했습니다.

 이번 포스팅에서는 Open AI의 GPT API를 통해 메뉴를 추천받고, 자연어로 이루어진 데이터를 Json으로 정제하는 과정에 대해 설명하겠습니다.

 

Workflow

해당 파트는 크게 메뉴를 추천하는 모듈과, 자연어를 Json 형식으로 변형하는 모듈로 구분했습니다.

 

두 파트를 구분 지어 개발한 이유는 자연어를 Json 형식으로 변형하는 부분의 범용성이 크다고 생각해서, 추후 요리 도메인이 아닌 다른 서비스를 개발할 때 유용하게 재사용이 가능하기 때문 입니다.

 

해당 파트의 흐름은 다음과 같습니다.

메뉴 추천
Request 시, 메뉴 추천 -> Json 형태로 변환

OPENAI API

우선 외부 API를 사용하기 위해 API Key와 조직을 등록해야 합니다.

OPENAI의 API 키를 발급받고, 이를 사용하는 방법은 이전 글에 포스팅했으니 참고하시기 바랍니다.

 

2023.10.24 - [WEB] - [WEB] Jira Automation과 GPT를 활용한 챗봇 프로토타입 개발기

 

[WEB] Jira Automation과 GPT를 활용한 챗봇 프로토타입 개발기

최근 다양한 산업에서 효율성 제고를 위해 인공지능을 활용한 단순 반복 업무의 자동화에 많은 관심을 기울이고 있습니다. 본 포스팅에서는 문의에 대해 자동으로 답변을 생성하고 응답하는,

blog.ymon.io

 

메뉴 추천

프롬프트
메뉴 추천을 위한 명령 프롬프트 예시

위와 같은 요청에서 GPT는 메뉴 명, 메뉴에 대한 설명, 필요한 재료와 요리 순서를 포함한 자연어를 응답하게 됩니다.

이후 해당 서비스는 다음 서비스에게 해당 자연어를 담은 요청을 전달합니다.

 

Json 변환

json 프롬프트
자연어를 Json 포맷으로 변환

다른 언어로 구현하거나, 다른 프로토콜로 구현할 수 있기 때문에 코드에 대한 설명은 최대한 덜어냈습니다.

예외의 처리나, 아키텍처 설계는 편의에 맞게 구현하시면 될 것 같습니다.

✅ 참고

  • 메뉴 추천은 GPT-4 모델을 사용
  • 자연어를 Json 포맷으로 변환하는 용도로는 GPT-3.5-turbo 모델을 사용

위와 같이 간단한 과정을 통해 메뉴를 추천받고 다루기 쉽게 Json 포맷으로 변환했습니다.

 

이제 해당 필드의 값으로 포스팅할 내용을 작성하면 되지만, 제목과 설명, 레시피만 있는 글을 보고 군침이 도는 사람은 없을 거라고 생각합니다.

이걸 먹겠어유?

음식 사진이 있어야겠죠?

하지만 음식 사진을 인터넷에서 찾아서 올리기에는 저작물을 마음대로 가져오는 행위가 될 수 있어 주의가 필요한 부분입니다.

 

이를 해결하는 방법을 다음 글에서 설명하겠습니다.

반응형