AI로 제품 리뷰 평가하기

Maud Nalpas
Maud Nalpas
Kenji Baheux
Kenji Baheux
Alexandra Klepper
Alexandra Klepper

온라인 쇼핑을 할 때는 많은 양의 제품을 보고 부담스러울 수 있습니다. 사용 가능한 제품 수에 따라 달라집니다. 어떻게 하면 이 모든 것을 이러한 노이즈를 사용하여 특정 요구를 실제로 충족시킬 수 있는 제품을 찾을 수 있습니까?

예를 들어 업무용 배낭을 쇼핑한다고 가정해 보겠습니다. 배낭은 기능, 미적, 실용성의 균형을 맞추는 것입니다. 리뷰 수로는 완벽한 가방을 찾았는지 알기란 거의 불가능합니다. 우리가 할 수 있다면 AI를 사용하여 소음을 걸러내고 완벽한 제품을 찾는다면 어떨까요?

모든 리뷰의 요약과 함께 가장 실적이 좋은 리뷰 목록 장단점이 있습니다

<ph type="x-smartling-placeholder">
</ph> 긍정적 및 부정적 강조표시가 있는 사용자 리뷰의 예
별표 평점과 장단점 목록이 포함된 사용자 리뷰의 예

이를 구축하기 위해 서버 측 생성형 AI를 사용합니다. 추론은 서버에서 발생합니다.

이 문서에서는 Node.js를 사용하는 Gemini API, Google AI JavaScript SDK를 사용하여 여러 리뷰의 데이터를 요약합니다. Google에서는 생성형 AI와 관련해 결과를 저장하는 방법과 작업 큐를 만들 수 있습니다

실제로는 모든 SDK에서 모든 LLM API를 사용할 수 있습니다. 그러나 선택한 모델에 맞게 추천 프롬프트를 조정해야 할 수 있습니다.

자격 요건

  1. Gemini API용 키를 만듭니다. 환경 파일에서 정의합니다

  2. 예를 들어 npm을 사용하여 Google AI JavaScript SDK를 설치합니다. npm install @google/generative-ai

리뷰 요약기 애플리케이션 빌드

  1. 생성형 AI 객체를 초기화합니다.
  2. 리뷰 요약을 생성하는 함수를 만듭니다.
    1. 생성형 AI 모델을 선택합니다. 이 사용 사례에서는 Gemini Pro를 사용하겠습니다. 사용 사용 사례에 맞는 모델 (예: gemini-pro-vision) 멀티모달 입력용).
    2. 프롬프트를 추가합니다.
    3. generateContent를 호출하여 프롬프트를 인수로 전달합니다.
    4. 응답을 생성하고 반환합니다.
const { GoogleGenerativeAI } = require("@google/generative-ai");

// Access the API key env
const genAI = new GoogleGenerativeAI(process.env.API_KEY_GEMINI);

async function generateReviewSummary(reviews) {
  // Use gemini-pro model for text-only input
  const model = genAI.getGenerativeModel({ model: "gemini-pro" });
  // Shortened for legibility. See "Write an effective prompt" for
  // writing an actual production-ready prompt.
  const prompt = `Summarize the following product reviews:\n\n${reviews}`;
  const result = await model.generateContent(prompt);
  const response = await result.response;
  const summary = response.text();
  return summary;
}

효과적인 프롬프트 작성하기

생성형 AI를 성공적으로 활용하는 가장 좋은 방법은 철저한 프롬프트를 만드는 것입니다. 이 예에서는 일관된 출력을 얻기 위해 원샷 프롬프팅 기법을 사용했습니다.

원샷 프롬프팅은 Gemini가 모델링할 수 있는 예시 출력으로 표현됩니다.

const prompt =
`I will give you user reviews for a product. Generate a short summary of the
reviews, with focus on the common positive and negative aspects across all of
the reviews. Use the exact same output format as in the example (list of
positive highlights, list of negative aspects, summary). In the summary,
address the potential buyer with second person ("you", "be aware").

Input (list of reviews):
// ... example

Output (summary of reviews):
// ... example

**Positive highlights**
// ... example
**Negative aspects**
// ... example
**Summary**
// ... example

Input (list of reviews):
${reviews}

Output (summary of all input reviews):`;

다음은 이 프롬프트의 출력 예입니다. 여기에는 모든 리뷰와 일반적인 장단점 목록을 제공합니다.

## Summary of Reviews:

**Positive highlights:**

* **Style:** Several reviewers appreciate the backpack's color and design.
* **Organization:** Some users love the compartments and find them useful for
  organization.
* **Travel & School:** The backpack seems suitable for both travel and school
  use, being lightweight and able to hold necessary items.

**Negative aspects:**

* **Durability:** Concerns regarding the zipper breaking and water bottle holder
  ripping raise questions about the backpack's overall durability.
* **Size:** A few reviewers found the backpack smaller than expected.
* **Material:** One user felt the material was cheap and expressed concern about
  its longevity.

**Summary:**

This backpack seems to be stylish and appreciated for its organization and
suitability for travel and school. However, you should be aware of potential
durability issues with the zippers and water bottle holder. Some users also
found the backpack smaller than anticipated and expressed concerns about the
material's quality.

토큰 한도

많은 리뷰가 모델의 토큰 한도에 도달할 수 있습니다. 토큰이 항상 한 단어 토큰은 단어의 일부이거나 여러 단어일 수 있습니다. 대상 예를 들어 Gemini Pro는 30,720개의 토큰으로 제한됩니다 즉, 프롬프트에 평균 600개 이하의 영어로 된 30단어 리뷰(프롬프트 지침의 나머지 부분 제외).

countTokens() 사용 프롬프트가 토큰 개수를 확인하고 프롬프트가 허용됩니다.

const MAX_INPUT_TOKENS = 30720
const { totalTokens } = await model.countTokens(prompt);
if (totalTokens > MAX_INPUT_TOKENS) {
    // Shorten the prompt.
}

엔터프라이즈를 위한 빌드

Google Cloud 사용자이거나 엔터프라이즈 지원이 필요한 경우 Gemini Pro뿐 아니라 Anthropic의 Claude 모델과 같은 더 많은 모델에 Vertex AI 예를 들어 모델 가든: 어떤 모델을 가장 적합한 옵션을 찾을 수 있습니다

다음 단계

우리가 빌드한 애플리케이션은 사용자에게 최상의 서비스를 제공하기 위해 효과적으로 요약할 수 있습니다 이러한 품질 리뷰를 수집하려면 다음 도움말에서 이 시리즈는 사용자가 온디바이스 웹 AI로 유용한 제품 리뷰를 작성하도록 지원.

이 접근 방식에 관한 의견을 알려주세요. 가장 많이 사용한 사용 사례를 알려주세요 있습니다. 다음과 같은 작업을 할 수 있습니다. 의견을 공유하고 사전 체험판 프로그램에 참여하세요 테스트할 수 있었습니다.

여러분의 참여는 Google이 AI를 강력하면서도 실용적인 도구로 만드는 데 도움이 됩니다. 있습니다.

다음: 사용자가 유용한 제품 리뷰를 작성하도록 지원하기