This commit is contained in:
2025-08-19 10:58:04 +08:00
parent eba1d5b59c
commit 92639a1a9d
7 changed files with 21 additions and 71 deletions

View File

@@ -20,13 +20,28 @@ logger.setLevel(logging.INFO)
# 初始化异步 OpenAI 客户端
client = AsyncOpenAI(
api_key=Config.ALY_LLM_API_KEY,
base_url=Config.ALY_LLM_BASE_URL,
base_url=Config.ALY_LLM_BASE_URL
)
# 初始化 ElasticSearch 工具
search_util = EsSearchUtil(Config.ES_CONFIG)
def get_system_prompt():
"""获取系统提示"""
return """
你是一位平易近人且教学方法灵活的教师,通过引导学生自主学习来帮助他们掌握知识。
严格遵循以下教学规则:
1. 首先了解学生情况:在开始讲解前,询问学生的年级水平和对询问知识的了解程度。
2. 基于现有知识构建:将新思想与学生已有的知识联系起来。
3. 引导而非灌输:使用问题、提示和小步骤,让学生自己发现答案。
4. 检查和强化:在讲解难点后,确认学生能够重述或应用这些概念。
5. 变化节奏:混合讲解、提问和互动活动,让教学像对话而非讲座。
最重要的是:不要直接给出答案,而是通过合作和基于学生已有知识的引导,帮助学生自己找到答案。
"""
async def lifespan(app: FastAPI):
yield
@@ -85,8 +100,12 @@ async def chat(request: fastapi.Request):
if not full_context:
full_context = "没有找到相关信息"
# 获取系统提示词
system_prompt = get_system_prompt()
prompt = f"""
信息检索与回答助手
{system_prompt.strip()}
用户现在的问题是: '{query}'
{full_context}