Spaces:
Sleeping
Sleeping
| import os | |
| from pydantic import BaseModel | |
| from datetime import datetime | |
| import pytz | |
| from src.clients.llm_client import LLMClient | |
| from src.utils.tracer import customtracer | |
| class Category(BaseModel): | |
| own_company_advantage_and_advice: str | |
| competitors_advantage: str | |
| 自社長所: str | |
| 自社改喁E��: str | |
| class Summaries(BaseModel): | |
| FV: Category | |
| CTA: Category | |
| CONTENTS: Category | |
| CREATIVE: Category | |
| ACCESSIBILITY: Category | |
| def score2summary( | |
| p, | |
| openai_key=os.environ.get('OPENAI_KEY'), | |
| gemini_key=None, | |
| model="meta-llama/Llama-3.3-70B-Instruct", | |
| ): | |
| """ | |
| input1 (text): 下記�E「�E社LPのコンチE��チE��を「構�E案」�E吁E��E��を書き換えください。書き換え�E「�E社LPのコンチE��チE���EみのチE�Eタを活用し、用語やニュアンス、特徴を活用すること。ただし、「構�E案」�E持つチE�Eマ�Eそ�Eままにすることを厳守。なお、商材名めE��ービス名がある場合�E、忁E��「�E社LPのコンチE��チE��情報に変更、E | |
| input2 (text): default | |
| input3 (text): default | |
| input4 (text): gpt-4o | |
| output1 (json): 頁E�� | |
| """ | |
| print(datetime.now(pytz.timezone('Asia/Tokyo')).strftime("%Y-%m-%d %H:%M:%S"), __name__) | |
| selected_model = model if model else "meta-llama/Llama-3.3-70B-Instruct" | |
| if selected_model and "gemini" in selected_model.lower(): | |
| if gemini_key and gemini_key != "default": | |
| api_key = gemini_key | |
| else: | |
| api_key = os.environ.get('GEMINI_KEY') | |
| client = LLMClient(google_api_key=api_key) | |
| else: | |
| if openai_key and openai_key != "default": | |
| api_key = openai_key | |
| else: | |
| api_key = os.environ.get('OPENAI_KEY') | |
| client = LLMClient(openai_key=api_key) | |
| system_prompt = "持E��通りに要紁E��整琁E��行ってください。own_company_advantage_and_advice(自社相対位置+自社長所+自社改喁E��)とtotal_analysisには自社の惁E��のみ、competitors_advantageには他社の惁E��のみを記載してください" | |
| result = client.call( | |
| prompt=p, | |
| schema=Summaries, | |
| model=selected_model, | |
| system_prompt=system_prompt, | |
| temperature=0, | |
| ) | |
| return result.model_dump() |