本文详细介绍了使用LangGraph构建AI笑话生成与评估系统的完整流程,包括状态定义、节点创建、条件路由和工作流构建。系统通过笑话生成器和评估器的交互,实现了对用户主题笑话的自动生成、评估和优化,形成了一个能持续改进的AI工作流,适合开发者收藏学习。
/案例描述/
笑话小助手:用户输入主题,笑话生成器生成一个和主题相关的笑话,然后交由评估器进行打分。评分为 funny 的表示好笑,直接输出;评分为 not funny 的表示不好笑,评估器 给出改进建议,返回给 笑话生成器 重新生成。
/实现步骤/
👀
1. 画出流程图
👀
2. 定义状态
# 定义状态 class State(TypedDict): joke: str # 生成的冷笑话内容 topic: str # 用户指定的主题 feedback: str # 改进建议 funny_or_not: str # 幽默评级 # 结构化输出模型(用于LLM评估反馈) class Feedback(BaseModel): """使用此工具来结构化你的响应""" grade: Literal["funny", "not funny"] = Field( description="判断笑话是否幽默", examples=["funny", "not funny"] ) feedback: str = Field( description="若不幽默,提供改进建议", example="可以加入双关语或意外结局" )状态 可以是 TypedDict, dataclass, 或 Pydantic BaseModel。
👀
3.定义节点
llm = ChatOpenAI( temperature=0.6, model="glm-4.5-air", api_key=ZAI_API_KEY, base_url=ZAI_BASE_URL, max_retries=0, max_tokens=2048, streaming=True, reasoning_effort="high", extra_body={ "chat_template_kwargs ": {"thinking": {"type": "enabled"}} }, ) def joke_generator(state: State) -> dict: """LLM生成笑话节点(带反馈优化机制)""" prompt = ( f"根据反馈改进笑话:{state['feedback']}\n主题:{state['topic']}" if state.get("feedback") else f"创作一个关于{state['topic']}的笑话" ) response = llm.invoke(prompt) return {"joke": response.content} def joke_evaluator(state: State) -> dict: """LLM笑话评估节点(结构化输出)""" evaluator = llm.bind_tools([Feedback]) evaluation = evaluator.invoke( f"评估此笑话的幽默程度:\n{state['joke']}\n" "注意:幽默应包含意外性或巧妙措辞" ) evaluation = evaluation.tool_calls[-1]['args'] return { "funny_or_not": evaluation['grade'], "feedback": evaluation['feedback'] }节点通常是 Python 函数(同步或异步),其中第一个位置参数是状态。
👀
4.定义条件路由
def route_joke(state: State) -> str: """动态路由决策(基于评估结果)""" return ( "Accepted" if state["funny_or_not"] == "funny" else "Rejected" )👀
5.构建工作流
workflow = StateGraph(state_schema=State) # 添加节点 workflow.add_node("generator", joke_generator) workflow.add_node("evaluator", joke_evaluator) # 构建连接关系 workflow.add_edge(START, "generator") workflow.add_edge("generator", "evaluator") workflow.add_conditional_edges( "evaluator", route_joke, { "Accepted": END, # 合格则结束 "Rejected": "generator" # 不合格则循环优化 } ) graph = workflow.compile() # graph.get_graph().draw_mermaid_png(output_file_path="joke_graph.png")StateGraph 创建工作流
add_node 添加节点
add_edge 添加固定边
add_conditional_edges 添加条件边,根据 路由 函数的返回值,来指定下一个节点。
👀
6. 运行测试
langgraph devAI时代,未来的就业机会在哪里?
答案就藏在大模型的浪潮里。从ChatGPT、DeepSeek等日常工具,到自然语言处理、计算机视觉、多模态等核心领域,技术普惠化、应用垂直化与生态开源化正催生Prompt工程师、自然语言处理、计算机视觉工程师、大模型算法工程师、AI应用产品经理等AI岗位。
掌握大模型技能,就是把握高薪未来。
那么,普通人如何抓住大模型风口?
AI技术的普及对个人能力提出了新的要求,在AI时代,持续学习和适应新技术变得尤为重要。无论是企业还是个人,都需要不断更新知识体系,提升与AI协作的能力,以适应不断变化的工作环境。
因此,这里给大家整理了一份《2026最新大模型全套学习资源》,包括2026最新大模型学习路线、大模型书籍、视频教程、项目实战、最新行业报告、面试题、AI产品经理入门到精通等,带你从零基础入门到精通,快速掌握大模型技术!
由于篇幅有限,有需要的小伙伴可以扫码获取!
1. 成长路线图&学习规划
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。这里,我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。
2. 大模型经典PDF书籍
书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。(书籍含电子版PDF)
3. 大模型视频教程
对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识。
4. 大模型项目实战
学以致用,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。
5. 大模型行业报告
行业分析主要包括对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。
6. 大模型面试题
面试不仅是技术的较量,更需要充分的准备。
在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。
为什么大家都在学AI大模型?
随着AI技术的发展,企业对人才的需求从“单一技术”转向 “AI+行业”双背景。企业对人才的需求从“单一技术”转向 “AI+行业”双背景。金融+AI、制造+AI、医疗+AI等跨界岗位薪资涨幅达30%-50%。
同时很多人面临优化裁员,近期科技巨头英特尔裁员2万人,传统岗位不断缩减,因此转行AI势在必行!
这些资料有用吗?
这份资料由我们和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
大模型全套学习资料已整理打包,有需要的小伙伴可以
微信扫描下方CSDN官方认证二维码,免费领取【保证100%免费】