custom preamble
This commit is contained in:
parent
7359bf7054
commit
af29716571
@ -230,8 +230,9 @@ async def enhanced_generate_stream_response(
|
|||||||
chat_history = format_messages_to_chat_history(messages)
|
chat_history = format_messages_to_chat_history(messages)
|
||||||
|
|
||||||
# 创建preamble_text生成任务
|
# 创建preamble_text生成任务
|
||||||
|
preamble_text, system_prompt = get_preamble_text(language, system_prompt)
|
||||||
preamble_task = asyncio.create_task(
|
preamble_task = asyncio.create_task(
|
||||||
call_preamble_llm(chat_history, query_text, get_preamble_text(language), language, model_name, api_key, model_server)
|
call_preamble_llm(chat_history, query_text, preamble_text, language, model_name, api_key, model_server)
|
||||||
)
|
)
|
||||||
|
|
||||||
# 创建guideline分析和agent创建任务
|
# 创建guideline分析和agent创建任务
|
||||||
|
|||||||
@ -421,7 +421,19 @@ def get_language_text(language: str):
|
|||||||
}
|
}
|
||||||
return language_map.get(language.lower(), '')
|
return language_map.get(language.lower(), '')
|
||||||
|
|
||||||
def get_preamble_text(language: str):
|
def get_preamble_text(language: str, system_prompt: str):
|
||||||
|
# 首先检查system_prompt中是否有preamble代码块
|
||||||
|
if system_prompt:
|
||||||
|
preamble_pattern = r'```preamble\s*\n(.*?)\n```'
|
||||||
|
preamble_matches = re.findall(preamble_pattern, system_prompt, re.DOTALL)
|
||||||
|
if preamble_matches:
|
||||||
|
# 提取preamble内容
|
||||||
|
preamble_content = preamble_matches[0].strip()
|
||||||
|
# 从system_prompt中删除preamble代码块
|
||||||
|
cleaned_system_prompt = re.sub(preamble_pattern, '', system_prompt, flags=re.DOTALL)
|
||||||
|
return preamble_content, cleaned_system_prompt
|
||||||
|
|
||||||
|
# 如果没有找到preamble代码块,使用默认的preamble选择
|
||||||
if language == "jp":
|
if language == "jp":
|
||||||
language = "ja"
|
language = "ja"
|
||||||
preamble_choices_map = {
|
preamble_choices_map = {
|
||||||
@ -465,14 +477,15 @@ def get_preamble_text(language: str):
|
|||||||
"お待たせしました。",
|
"お待たせしました。",
|
||||||
"対応いたします。",
|
"対応いたします。",
|
||||||
"わかりましたね。",
|
"わかりましたね。",
|
||||||
"承知しました。",
|
"承知いたしました。",
|
||||||
"確認させてください。",
|
"確認させてください。",
|
||||||
"少々お待ちいただけますか。",
|
"少々お待ちいただけますか。",
|
||||||
"お調べいたします。",
|
"お調べいたします。",
|
||||||
"対応いたしますね。"
|
"対応いたしますね。"
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return "\n".join(preamble_choices_map.get(language.lower(), []))
|
default_preamble = "\n".join(preamble_choices_map.get(language.lower(), []))
|
||||||
|
return default_preamble, system_prompt # 返回默认preamble和原始system_prompt
|
||||||
|
|
||||||
|
|
||||||
async def call_preamble_llm(chat_history: str, last_message: str, preamble_choices_text: str, language: str, model_name: str, api_key: str, model_server: str) -> str:
|
async def call_preamble_llm(chat_history: str, last_message: str, preamble_choices_text: str, language: str, model_name: str, api_key: str, model_server: str) -> str:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user