AutoPercenty3/test_local_qwen.py

51 lines
2.0 KiB
Python

import sys
from openai import OpenAI
import json
client = OpenAI(
base_url="http://localhost:11434/v1",
api_key="ollama",
timeout=120.0
)
product_name = "테스트용 상품 (접이식 스마트폰 거치대)"
category = "생활/건조용품"
count = 5
prompt = (
f"당신은 네이버 쇼핑 SEO 전문가입니다.\n"
f"상품명과 카테고리를 보고, 고객이 이 상품을 찾기 위해 검색창에 실제로 타이핑할 '대표 명사(카테고리성 키워드)' {count}개를 선별하세요.\n\n"
f"### 상품 정보\n"
f"- 상품명: {product_name}\n"
f"- 카테고리: {category}\n\n"
f"### [절대 금지 - 이 단어들이 포함되면 감점]\n"
f"1. 기능/스펙 설명 (방수, 진동, 투명, 이동식, 초정밀 등)\n"
f"2. 형태/재질 단독 설명 (아크릴, 접이식 등 단독 사용 금지. 단 '아크릴파티션'처럼 명사와 결합된 복합어는 매우 좋음)\n"
f"3. 브랜드/고유명사 (가렛트, 얀마 등)\n"
f"4. 광고성/수식어 단어 (특가, 베스트, 세트, 추천 등)\n\n"
f"### [강력 권장 - 이런 단어를 뽑으세요]\n"
f"1. 단일 단어보다 1~2단어 조합의 복합 명사 (예: '금속탐지기', '취미용탐지기', '사무실파티션', '농기계타이어')\n"
f"2. 상품의 본질을 나타내는 대표 카테고리 명사\n"
f"3. 정확히 {count}개만 반환\n\n"
f"### 출력 형식 (JSON)\n"
f'{{"seeds": ["단어1", "단어2", "단어3", "단어4", "단어5"]}}'
)
model_name = "qwen3.5:2b"
print(f"[{model_name}] JSON 응답 모드 테스트 시작.")
try:
response = client.chat.completions.create(
model=model_name,
messages=[{"role": "user", "content": prompt}],
temperature=0.0,
stream=False # 스트리밍 끄고 한 번에 받아보기
)
print("\n--- 파싱된 응답 (OpenAI 객체) ---")
print(response.choices[0].message.content)
except Exception as e:
print(f"\n❌ 에러 발생: {e}")