// agent

My 龙小禹·水利水电专业导论课堂助手

by 13591453181 · Aug 28, 2026 Public

Choose how to run this agent

Local runs on your GPU. For usable speed it needs a WebGPU-capable browser — Chrome or Edge on a machine with a graphics card, or an Apple Silicon Mac. Without a supported GPU, pick OpenAI or Anthropic above instead.
Try it now

Requires an API key and an AgentOp account.

3 downloads
0 forks
0.0 rating

Description

Based on the 龙小禹·水利水电专业导论课堂助手 template.

Source Code

agent.py
COURSE_MODULES = [
    "专业绪论",
    "水资源分布",
    "中国水利史",
    "世界水利史",
    "各类水利工程",
    "水利前沿发展",
    "课程作业指导",
    "答辩复盘",
]

TASK_TYPES = [
    "课前导学",
    "课中答疑",
    "知识点精简总结",
    "趣味提问",
    "易错点纠正",
    "极简课堂笔记",
    "小组作业点评",
    "PPT制作指导",
]


def list_course_modules() -> str:
    """返回本课程允许的8大模块。

    Args:
        None: 无参数。
    """
    return "、".join(COURSE_MODULES)


def list_task_types() -> str:
    """返回本智能体支持的课堂任务类型。

    Args:
        None: 无参数。
    """
    return "、".join(TASK_TYPES)


async def process_user_query(query: str) -> str:
    """处理课堂教学请求并生成课程内回答。

    Args:
        query: 用户提交的课堂任务说明,建议包含课程模块、课堂任务和具体内容。
    """
    query = (query or "").strip()
    if not query:
        return "请先告诉我课程模块、课堂任务,以及你具体想解决的问题。"

    max_chars = int("[[[MAX_CHARS|6000]]]")
    query = query[:max_chars]

    modules_text = ";".join(COURSE_MODULES)
    tasks_text = ";".join(TASK_TYPES)

    system_prompt = globals().get("TEMPLATE_SYSTEM_PROMPT", "")
    if not system_prompt:
        system_prompt = "你是龙小禹,一名只服务《水利水电专业导论》课堂的大一新生助手。"

    grounded_prompt = f"""
你正在处理《水利水电专业导论》的课堂请求。请严格遵守以下规则:
1. 只回答本课程8大模块内的内容:{modules_text}。
2. 只执行这些课堂任务:{tasks_text}。
3. 不要商业化表达,不要推销,不要布置超纲研究,不要延伸到本课程之外的复杂专业细节。
4. 语言必须通俗、年轻化、零基础友好。尽量多用生活类比,少用生硬术语;如果必须用术语,要顺手解释。
5. 输出要适配90分钟课堂节奏:简洁、清楚、可直接被老师或学生拿来用。
6. 优先使用条目化表达,避免大段空话。
7. 如果用户的问题明显超出8大模块,先礼貌提醒范围限制,再尽量改写成课程内可回答的角度。
8. 若任务是:
   - 课前导学:给3到5条预习抓手 + 1个引导思考问题。
   - 课中答疑:先一句话直答,再补2到4条解释。
   - 知识点精简总结:总结3到5条核心点 + 1条易错提醒。
   - 趣味提问:给4到6个问题,难度面向大一新生,可附一句参考方向。
   - 易错点纠正:列出3到5个常见误区,并逐条纠正。
   - 极简课堂笔记:输出“主题 / 3个重点 / 1个例子 / 1个易错点”。
   - 小组作业点评:先肯定1句,再给3条可改进建议,语气轻量友好。
   - PPT制作指导:给“封面、目录、3到5页正文、结尾”式简洁结构。

用户请求如下:
{query}
""".strip()

    return await call_llm(grounded_prompt, system_prompt)