인프런 커뮤니티 질문&답변

yhk775206님의 프로필 이미지
yhk775206

작성한 질문수

모두를 위한 대규모 언어 모델 LLM(Large Language Model) Part 2 - 랭체인(LangChain)으로 나만의 ChatGPT 만들기

임베딩(Embedding) & 벡터 스토어(Vector stores) - 임베딩을 수행하고 임베딩 결과를 DB하고 DB에서 질문과 연관된 문서 찾아오기

상품추천GPT에서 데이터를 바꿔 사용하는데 오류나는 이슈

작성

·

167

1

안녕하세요. 강의를 듣고 컴퓨터견적데이터를 뽑아와서 컴퓨터견적을 추천해주는 gpt를 만들고싶어서 가져왔지만 메타데이터를 뽑을때 별점이나 날짜같은 유효성있는데이터를 넣어야지 제대로 필터가 되는것같은데 컴퓨터견적데이터 자체가 게이밍,코딩용이런식으로 구분지을수없는 데이터이고 또한 메타데이터에 뭐를 넣을까 생각이 안듭니다. 또한 page_content에 json데이터를 넣으면 필터를 잘해줄까?에 대한 의문점도 생깁니다. 어떤방식으로 하면 컴퓨터 견적에 대한 추천을 잘해줄까요?

 

 

이런식의 데이터 5000개정도 있습니다. 그리고 강의와 같이 여러 json으로 나누어 사용했습니다.

{
  "quote_number": "1200",
  "quote_title": "로스트아크 풀옵션, 작업 병행용 컴퓨터(5700X, RX 6700XT)",
  "date_create": "2023.10.10",
  "cpu_gpu_combinations": "라이젠7 5700X + RX 6700 XT 조합",
  "quotation_summary": " 1. 라데온 그래픽카드에 거부감이 없는 분2. 가성비를 극대화 하시려는 분3. 게임과 작업을 병행하시는 분# 영상편집# 게임# 롤# 배그# 가성비# 로아",
  "quote_person_introduction": "안녕하세요. 견적왕에서 견적맨으로 활동하고 있는 coke-bear 입니다.퀘이사존에서 주로 활동하며 그 외 커뮤니티에서도 간간히 활동하고 있습니다.하드웨어에 관심이 많아 제품을 직접 사용해보기도 하고 주변 지인들 PC 견적부터 조립도 해주다보니PC 구매를 어려워하거나 용도에 맞지 않게 구매하여 불필요한 지출을 하는 경우를 보게 되었습니다.그런 분들께 조금이라도 도움이 되고자 PC 구매자분들께 합리적인 구매를 할 수 있게 견적맨으로 활동하게 되었습니다.",
  "quote_feedback": "게임을 하면서 영상 편집 또한 취미 수준으로 한다거나 다른 다중 작업을 하는 경우라면 8코어 cpu 이상을 사용해주어야 하는데 이 때 가장 가성비로 구성할 수 있는 cpu라 5700x 입니다.좀 더 전문적이라면 더 좋은 cpu를 구성하여 멀티작업 성능을 늘릴 수 있지만 한정된 예산으로 구성해야하고 이제 배우는 단계라면 8코어 제품 중 가성비가 가장 뛰어난 5700x 구성을 추천드립니다.RX 6700 XT의 가격이 내려온 관계로 매우 가성비가 좋아져서 현재로서는 성능 대비해서 가격이 가성비가 좋아 구성하였습니다.",
  "computer_estimate_data": "[CPU]AMD 라이젠7-4세대 5700X (버미어) (멀티팩(정품))상세보기[메인보드]ASUS PRIME B550M-A 대원CTS상세보기[메모리]마이크론 Crucial DDR4-3200 CL22 (16GB) x 2 개상세보기[그래픽카드]PowerColor 라데온 RX 6700 XT Fighter D6 12GB상세보기[SSD]마이크론 Crucial P5 Plus M.2 NVMe 대원CTS (1TB)상세보기[케이스]DARKFLASH DK260 Air MESH RGB 강화유리 블랙 (미들타워)상세보기[파워서플라이]맥스엘리트 MAXELITE MAXWELL BARON 800W 80PLUS BRONZE 플랫상세보기[CPU쿨러]DARKFLASH Ellsworth S21 ARGB (블랙)상세보기[조립PC관련][견적왕] 조립 서비스 + 1년 출장 A/S상세보기",
  "quote_description": "CPU는 라이젠 5000번대 8코어 제품으로 8코어 cpu 이상을 요구하는 작업용 pc에서 저렴하게 구성 가능한 cpu입니다.메인보드는 am4 소켓을 지원하는 b550 칩셋 중 5600x나 5700x를 사용하기에 준수한 성능을 가진 메인보드 입니다.메모리는 삼성 메모리와 동일한 3200 클럭에 라이프워런티를 가지고 있어 AS 부분에서는 더 상위 호환의 제품입니다.그래픽카드는 6700 XT 중 가장 저렴한 가격대의 파워컬러 제품입니다.SSD는 pcie4.0 제품이며 가격대는 pcie3.0 의 p31 보다 저렴한 제품입니다.케이스는 다크 플래쉬의 DK 260 AIR 미들타워 제품입니다. 가격 대비 강판 두께나 기본팬 성능이 출중한 편입니다.파워서플라이는 국내 파워 회사 중 as 부분에서 상위 퀄리티를 가진 맥스엘리트의 800w 파워 입니다.CPU쿨러는 다크플래쉬의 s21 쿨러입니다.\n기본 무뽑방지가 적용되어 있고 더 높은 가격대의 팔라딘이나 rc400 이랑 쿨링 성능이 동일하고 소음 부분에서는 더 정숙하여 가성비가 좋습니다.",
  "CPU": {
    "제품명": "AMD 라이젠7-4세대 5700X)",
    "가격": "238,010원",
    "수량": "1"
  },
  "메인보드": {
    "제품명": "ASUS PRIME B550M-A 대원CTS",
    "가격": "121,960원",
    "수량": "1"
  },
  "메모리": {
    "제품명": "마이크론 Crucial DDR4-3200 CL22  16GB",
    "가격": "41,840원",
    "수량": "2"
  },
  "그래픽카드": {
    "제품명": "PowerColor 라데온 RX 6700 XT Fighter D6 12GB",
    "가격": "402,400원",
    "수량": "1"
  },
  "SSD": {
    "제품명": "마이크론 Crucial P5 Plus M.2 NVMe 대원CTS 1TB",
    "가격": "127,000원",
    "수량": "1"
  },
  "케이스": {
    "제품명": "DARKFLASH DK260 Air MESH RGB 강화유리 블랙",
    "가격": "50,500원",
    "수량": "1"
  },
  "파워서플라이": {
    "제품명": "맥스엘리트 MAXELITE MAXWELL BARON 800W 80PLUS BRONZE 플랫",
    "가격": "84,160원",
    "수량": "1"
  },
  "CPU쿨러": {
    "제품명": "DARKFLASH Ellsworth S21 ARGB",
    "가격": "27,380원",
    "수량": "1"
  },
  "total_price": "1700000원"
}

답변 2

0

AISchool님의 프로필 이미지
AISchool
지식공유자

안녕하세요~. 반갑습니다.

 

우선 추천을 어떻게 해주는게 좋은 추천이냐에 대해서는 단 하나의 정답이 있는것은 아니지만 제가 생각했을때 컴퓨터 견적 데이터의 경우 다음과 같은 형태로 작업을 하는게 어떨까 싶습니다. (제 생각이 무조건 정답은 아니고 사람들이 컴퓨터견적을 요청할때 어떤부분을 고려해서 요청할까를 생각해서 만든 여러 접근 방식중의 하나입니다.)

 

  1. 우선 데이터 구성에서 사람들이 자주 추천을 요청하는 카테고리를 생각해서 (예를 들어, 게이밍용, 문서작업용, 그래픽작업용) 해당 카테고리를 몇개의 enum으로 정의하고 견적데이터별로 해당 enum값을 metadata로 추가합니다.

  2. 또한 사람들이 자주 추천을 요청하는 가격 구간을 일정 threshold로 잡아서 (예를 들어 100만원이내, 150만원 이내, 200만원 이내등) 해당 가격대 구간을 몇개의 enum으로 정의하고 견적데이터별로 해당 enum값을 metadata로 추가합니다.


이제 사용자 질문이 들어오면 위에 추가한

  1. 카테고리

  2. 가격대

     

     

     

     

    위 2개의 metadata 조건을 필터링 조건으로 사용해서 용도와 가격대가 맞는 견적쌍을 추천해줍니다.

     


이외에도 추가적인 필터링 조건에 대한 enum값이 필요하다면 metadata에 추가해서 필터링 조건으로 사용하면 될 것 같습니다.

 

좋은 하루되세요.

감사합니다.

 

0

안녕하세요, 인프런 AI 인턴입니다.

yhk775206님, 컴퓨터 견적 추천 GPT 구현과 관련하여 질문 주셨군요. 데이터를 바탕으로 유익한 추천을 제공하기 위해서는 메타데이터 구성과 page_content에 JSON 데이터를 효과적으로 활용하는 것이 중요합니다. 여기에 몇 가지 제안을 드리겠습니다.

  1. 메타데이터 구성: 컴퓨터 견적 데이터가 ‘게이밍’, ‘코딩용’과 같이 명확한 카테고리 분류가 어려운 경우, 견적의 특성을 나타낼 수 있는 다른 요소들을 고려해볼 수 있습니다. 예를 들어, ‘용도’(게임, 영상 편집, 일반 사무용 등), ‘가성비’(높음, 보통, 낮음), 또는 ‘성능 수준’(고성능, 중간, 입문용)과 같은 태그를 메타데이터로 추가할 수 있습니다. 이를 통해 사용자의 요구 사항과 매칭되는 추천을 할 수 있습니다.

  2. page_content의 JSON 데이터 활용: JSON 데이터 안에 견적 내용을 자세히 기술하면, GPT가 이 정보를 기반으로 상황에 맞는 추천을 제공할 가능성이 높아집니다. 별점이나 날짜뿐 아니라, ‘CPU 종류’, ‘GPU 종류’, ‘RAM 용량’ 등의 기술적 사양이나, ‘예산 범위’, ‘사용 목적’과 같은 사용자 관점의 데이터를 추가로 고려할 수 있습니다. JSON 구조를 충분히 활용해, 데이터를 풍부하고 구조화된 방식으로 제공한다면, 필터링이나 추천 시스템의 정확도를 향상시킬 수 있습니다.

  3. 사용자 입력을 고려한 동적 추천: 사용자로부터 추가 정보를 입력받는 기능을 통합하여, 예를 들어 특정 게임이나 작업의 종류를 사용자에게 직접 선택하게 하고, 해당 정보를 기반으로 GPT가 더 맞춤화된 추천을 할 수 있도록 하는 방법도 고려해볼 수 있습니다.

성공적인 프로젝트 구현을 기원합니다. 추가적인 질문이 있으시다면 언제든지 문의해 주세요.

yhk775206님의 프로필 이미지
yhk775206

작성한 질문수

질문하기