축잘알 인 척 하려고 GPT로 만든! 국내외 축구 경기 분석봇⚽️ (+API 스키마 만드는 법)

지난 포스팅 보러가기 🔗


안녕하세요 👋🏻

요즘 아시안컵이 한창이라 저도 새벽마다 저녁마다 챙겨보고 있는데요! ⚽️ (이강인, 손흥민 짱🫶🏻)
사실 축구를 잘 아는 편은 아니고, 축구를 엄청 좋아하는 남자친구 따라서 보는거라 볼 때마다 물어보기도 민망하더라구요. 그래도 어느정도 알고 봐야 같이 즐길 수 있잖아요? 그래서 국내, 해외 축구 정보를 알려주는 챗봇을 만들어봤습니다!!

주변에 축구덕후를 둔 저같은 분들 여기 모이세요! 이제 이 챗봇이면 축구 아는척 가능 ㅋㅋ

이번에 ‘국내외 축구정보 챗봇’은 이전에 제가 IMZA 로 만들어본 다른 챗봇이랑은 다르게 API 기능을 활용해서 만들어봤어요.

(저번에 회의록 챗봇 만들때는 IMZA 에 API 연동기능이 없었던 것 같은데.. 무언가 새로운게 생겼길래 사용해보고 싶어서 이렇게 저렇게 해봤습니다! 개발자가 아니라서 혹시 더 쉬운 방법이나 꿀팁 있으신 분들 알려주세요 🥹)

호옥시 저처럼 Open API 활용하는 방법 몰라서 헤매시는 분들은,
좀 많이 헤매다가 터득한 제 팁을 공유드릴게요!

그럼 축구 경기 분석봇 만드는 과정 시이작 ⚽️ 🏁


01. API 스키마 만드는 과정

  1. 먼저 축구 정보를 알려주는 오픈 API를 찾아줍니다. 저는 Github에서 오픈 API 를 모아둔 링크를 통해 찾았어요!

  2. 제가 찾은 API에는 축구 정보가 Area, Competition, Match, Team, Person 으로 나누어져 있었습니다.

  3. 그래서 각각을 IMZA 챗봇을 만들 때 활용가능한 API 스키마로 변환시켜주려고 했는데, 어떻게 해야할지 고민하다가 저는 GPT의 도움을 받아보기로 했어요.

  4. GPT에서 [Explore GPTs] → [Create] 버튼을 눌러주세요.

  5. GPT 앱을 만드는 화면이 나오면 [Configure] 버튼을 누르고 나오는 화면의 하단에 [Create New Action] 버튼을 눌러줍니다.

  6. Schema를 입력하는 창에 있는 [Get help from ActionsGPT] 버튼을 눌러주세요.

  7. 그럼 ActionsGPT 앱으로 이동할텐데요, 해당 GPT는 API 스키마를 만드는데 도움을 주는 챗봇이라고 해요.

  8. 다시 축구 API 링크로 돌아가서, Area 창의 모든 정보를 드래그해서 복사해주세요.

  9. 그다음 ActionsGPT 앱으로 돌아가서 복사한 내용을 그대로 붙여줍니다. 그리고 저는 붙여준 내용 뒤에 “나는 지금 api스키마를 만들고싶어. 스키마 하나당 endpoint 1개가 되도록 만들어줘”라는 명령어를 추가해줬어요.

  10. 그러면 GPT가 사용가능한 API 스키마를 짠 하고 다 만들어줘요! 🥳 이런 방식으로 저는 총 5가지 ‘Area, Competition, Match, Team, Person’ API 스키마를 만들었어요.



02. 챗봇 만드는 과정

  1. 내 어시스턴트 만들기

    • 서비스 홈 화면의 [새로 만들기] 버튼을 눌러 새로운 챗봇을 만드는 대시보드로 이동해줍니다.

  2. 프롬프트 만들기

    • 왼쪽 [Prompts] 버튼을 누르면 프롬프트를 생성하고 관리할 수 있는 패널이 나옵니다. [Create New Prompt] 버튼을 눌러 프롬프트를 생성해줍니다.

    • 저는 이미지처럼 프롬프트를 작성해서 챗봇의 정체성을 정의해줬어요. 그리고, 제가 사용한 API는 2023년 10월까지의 정보만을 제공하기 때문에 이후 정보를 요청하면 “저는 2023년 10월 기준으로 이후 데이터는 아직 업데이트가 되지 않았다"라는 것을 안내하라고 작성했습니다.

    • LLM 블록에 생성한 프롬프트를 드래그 앤 드랍해서 넣어줍니다.

  3. LLM 블록에 AI 모델 넣기

    • 왼쪽 패널의 [Models] 를 누르면 나오는 여러 LLM 모델 중 저는 GPT-4o를 넣어줬어요.

  4. API 만들기

    • 왼쪽 패널의 [Tools] 를 누르면 API 스키마를 생성하고 관리할 수 있는 패널이 나옵니다.

    • [Create New API Schema] 버튼을 눌러서 API 스키마를 생성해줍니다.

    • 저는 앞의 과정에서 GPT를 통해 만들어둔 ‘Area, Competition, Match, Team, Person’ API 스키마를 하나씩 그대로 붙여넣어줬어요.

  5. LLM 블록에 API 스키마 넣기

    • 생성된 API 를 LLM 블록의 Tools 영역에 드래그 앤 드롭해서 넣어줍니다.

    • API는 총 4개까지 넣을 수가 있어서 저는 제가 만든 스키마 중 ‘Competition, Match, Team, Person’를 넣어줬어요.

  6. 테스트 해보기

    • 오른쪽 상단의 [Test] 버튼을 눌러서 생성된 챗봇을 테스트해봅니다.

  7. 챗봇 배포하기

    • 오른쪽 상단의 [Deploy] 버튼을 눌러서 만든 챗봇을 배포합니다.

    • 저는 최초 인삿말에 사용자가 질문할 수 있는 예시를 함께 제공해주었습니다.

    • IMZA는 싱글턴과 멀티턴을 설정할 수 있네요. 멀티턴 버튼을 눌러서 이전 답변의 히스토리를 바탕으로 답변을 하는 것을 16개로 설정해주었습니다. [Update Deployment] 버튼을 누르면 챗봇 배포까지 완료! 👍🏻



03. 챗봇 사용 결과

  1. 제가 만든 챗봇과 perplexity에 동일한 질문을 주고 비교해봤습니다. perplexity는 박지성, 이영표, 안정환 등 예전 선수들에 대한 정보를 주는 반면, IMZA 챗봇은 최근 정보를 반영한 조금 더 정확한 정보를 알려주었어요.😎

  2. 네이버 지식인에 올라온 질문을 제가 만든 챗봇에 동일하게 질문해봤어요. 인간지능(지식인)에 비해 조금 더 디테일하고 정확한 정보를 제공해줍니다.🤩

  3. 경기에 대한 전반 리뷰를 요청해보았습니다. 해당 경기에 대한 전반적인 리뷰를 보기 쉽게 요약해서 전달해줍니다.

  4. 마지막으로 축알못이 축잘알인척 하기 위해서 꼭 알아야 하는 정보를 챗봇한테 물어봤어요.



저처럼 축잘알 되고 싶으시거나 인척 하고 싶으신 분들!
제가 만든 축구 경기 분석봇으로 더 재밌게 즐겨보세용 🙌🏻⚽️

축구 경기 정보 챗봇 써보러가

6
1개의 답글

👉 이 게시글도 읽어보세요