|
|
@@ -151,7 +151,8 @@ class LiteLLMService(LLMService):
|
|
|
async def analyze(self, prompt: str) -> Union[dict, str]:
|
|
|
llm_kwargs = {}
|
|
|
if self.format_type == "json":
|
|
|
- llm_kwargs["additional_kwargs"] = {"response_format": {"type": "json_object"}}
|
|
|
+ if 'deepseek-r' not in self.model:
|
|
|
+ llm_kwargs["additional_kwargs"] = {"response_format": {"type": "json_object"}}
|
|
|
|
|
|
llm = LiteLLM(model=self.model, **llm_kwargs)
|
|
|
|
|
|
@@ -216,11 +217,19 @@ class AnalysisService:
|
|
|
竞品数据:
|
|
|
{competitor_data}
|
|
|
----
|
|
|
-我是日本站的亚马逊运营,我在给产品名称为 {product.basic_info.name} 选主要关键词,请根据以上 {len(competitor_data)} 个竞品数据,按以下规则分析:
|
|
|
+我是日本站的亚马逊运营,我在给产品名称为 {product.basic_info.name} 选主要关键词,我的产品信息如下:
|
|
|
+{product.basic_info.model_dump_json(indent=2)}
|
|
|
+
|
|
|
+请根据以上 {len(competitor_data)} 个竞品数据,按以下规则分析:
|
|
|
- 选出搜索量在1万以上的相同关键词作为主要关键词{main_key_num}个。
|
|
|
- 如果竞品的搜索量都不足1万,则从排名前十的关键词中筛选 {main_key_num} 个搜索量最大且相关性最强的词。
|
|
|
-- 根据我的产品基本信息,从竞品的主要信息和同类竞品的相似关键词中,筛选出最符合我产品的长尾关键词 tail_keys {tail_key_num} 个以上
|
|
|
- 结合日本市场特点分析
|
|
|
+- 根据我的产品基本信息,从竞品的主要信息和同类竞品的相似关键词中,筛选出最符合我产品的长尾关键词 tail_keys {tail_key_num} 个以上
|
|
|
+
|
|
|
+筛选长尾词的示例:
|
|
|
+- 假设我的产品是电线保护,那么竞品关键词中,“隐藏排线管” 就不符合长尾词
|
|
|
+- 假设我的产品是“防老化、防动物咬”用途,你就不能在竞品数据中选择不属于我这个使用场景的长尾关键词。
|
|
|
+
|
|
|
输出格式:
|
|
|
{output_format}'''
|
|
|
|