Corin1998 commited on
Commit
2399f4e
·
verified ·
1 Parent(s): 971ee39

Create proposal_generator.py

Browse files
Files changed (1) hide show
  1. modules/proposal_generator.py +26 -0
modules/proposal_generator.py ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from typing import List
2
+ from modules.llm import generate
3
+
4
+ SYSTEM_PROMPT = """あなたは営業企画のエキスパートです。以下の制約で日本語の提案文を作成します。
5
+ - トーン:簡潔・価値訴求・次アクション明確
6
+ - 構成: ①現状理解 ②提案価値 ③導入プラン ④期待効果 ⑤CTA
7
+ - 出力: Markdown
8
+ """
9
+
10
+ def make_proposal(company_name: str, objective: str, top_contexts: List[str], temperature: float=0.4) -> str:
11
+ contexts_md ="\n\n".join([f"-{c}" for c in top_contexts])
12
+ user_prompt = f"""
13
+ 会社名: {company_name}
14
+ 目的:{objective or "初回接触(無料相談/PoCの打診)"}
15
+
16
+ 参考コンテキスト(RAG上位):
17
+ {contexts_md}
18
+
19
+ 上記を踏まえ、1枚提案のMarkdownを出力してください。見出し・箇条書きを効果的に。
20
+ """
21
+ return generate(SYSTEM_PROMPT, user_prompt, temperature=temperature, max_new_tokens=600)
22
+
23
+ def suggest_next_actions(proposal_md: str, score_overall: float, temperature: float=0.3) -> str:
24
+ system = "あなたは営業マネージャーです。短い箇条書きで次アクションを提案してください。"
25
+ user = f"提案ドラフト:\n{proposal_md}\n\n見込み度(0-100):{score_overall}\n反応: 未送信または未反応想定。"
26
+ return generate(system, user, temperature=temperature, max_new_tokens=256)