东莞建设银行官方网站,如何建立网站建设规划,做进化树的在线网站,一个企业网站多少钱本文详细介绍了如何使用LangChain生态系统中的LangGraph构建AI智能体#xff0c;并通过LangSmith平台进行跟踪、监控和评估。通过数学问题求解的实战案例#xff0c;展示了API密钥设置、智能体创建、实验运行及结果分析的全过程。这种组合能有效追踪AI系统成本、性能和准确性…本文详细介绍了如何使用LangChain生态系统中的LangGraph构建AI智能体并通过LangSmith平台进行跟踪、监控和评估。通过数学问题求解的实战案例展示了API密钥设置、智能体创建、实验运行及结果分析的全过程。这种组合能有效追踪AI系统成本、性能和准确性是开发者构建可靠AI系统的必备工具。LangChain创造了一个包含LangChain、LangGraph、LangSmith和LangServe的良好生态系统。利用这些工具我们可以构建、部署、评估和监控智能体 AI 系统 (Agentic AI systems)。在构建AI智能体时我不禁想“为什么不展示一个简单的Demo来演示LangGraph和LangSmith是如何协作的呢” 这将会非常地有用因为AI智能体通常需要多次调用LLM并且费用较高。这种组合将有助于跟踪开支并使用自定义数据集评估系统。LangGraph简而言之AI智能体是具备思考/推理能力的LLM它们可以访问工具来弥补自身的不足或获取实时信息。LangGraph是一个基于LangChain的智能体 AI 框架用于构建这些AI智能体。LangGraph有助于构建基于图的智能体 (graph-based Agents)此外LangGraph/LangChain库中已经存在的许多内置功能简化了智能体工作流 (Agentic workflows)的创建。什么是 LangSmithLangSmith是LangChain推出的一个监控和评估平台。它不依赖于特定框架旨在与任何智能体框架例如LangGraph甚至完全从头构建的智能体配合使用。可以轻松配置LangSmith来跟踪 (trace)运行过程并追踪智能体系统的开支。它还支持对系统进行实验 (experiments)例如更改系统中的提示词 (prompt) 和模型并比较结果。它具有预定义的评估器如有用性 (helpfulness)、正确性 (correctness)和幻觉 (hallucinations)。你也可以选择定义自己的评估器。让我们看一下LangSmith平台以获得更好的理解。LangSmith 平台功能让我们先注册/登录平台https://www.langchain.com/langsmith平台包含多个选项卡Tracing Projects (跟踪项目)跟踪多个项目及其轨迹 (traces)或运行集 (sets of runs)。在这里可以跟踪成本、错误、延迟 (latency)以及许多其他信息。Monitoring (监控)在这里你可以设置警报例如在系统失败或延迟超过设定的阈值时发出警告。Dataset Experiments (数据集与实验)在这里你可以使用人工制作的数据集运行实验或者使用平台创建AI生成的数据集来测试你的系统。你还可以更改模型以查看性能如何变化。Prompts (提示词)在这里你可以存储一些提示词稍后更改措辞或指令顺序以查看结果的变化。LangSmith 实践我们将构建一个使用简单工具来解决数学表达式的智能体然后启用可追溯性 (traceability)。随后我们将检查LangSmith仪表板看看可以使用该平台跟踪哪些信息。获取API密钥访问LangSmith仪表板并点击‘Setup Observability’按钮。然后你会看到这个界面https://www.langchain.com/langsmith点击‘Generate API Key’选项并将LangSmith密钥放在手边。现在访问Google AI Studio以获取Gemini API keyhttps://aistudio.google.com/api-keys点击右上角的‘Create API key’如果项目不存在则创建一个并将密钥放在手边。代码实现安装!pip install -q langgraph langsmith langchain !pip install -q langchain-google-genai★注意 请确保在此处继续之前重启会话 (restart the session)。设置环境在提示时输入API密钥。from getpass import getpassLANGCHAIN_API_KEYgetpass(Enter LangSmith API Key: )GOOGLE_API_KEYgetpass(Enter Gemini API Key: )import osos.environ[LANGCHAIN_TRACING_V2] trueos.environ[LANGCHAIN_API_KEY] LANGCHAIN_API_KEYos.environ[LANGCHAIN_PROJECT] Testing★ 注 建议使用不同的项目名称来跟踪不同的项目将其命名Testing设置和运行智能体这里我们使用一个智能体可以用来解决数学表达式的简单工具。我们使用LangGraph内置的create_react_agent我们只需要定义模型赋予工具访问权限即可开始使用。from langgraph.prebuilt import create_react_agentfrom langchain_google_genai import ChatGoogleGenerativeAIdef solve_math_problem(expression: str) - str: Solve a math problem. try: # Evaluate the mathematical expression result eval(expression, {__builtins__: {}}) returnfThe answer is {result}. except Exception: returnI couldnt solve that expression.# Initialize the Gemini model with API keymodel ChatGoogleGenerativeAI( modelgemini-2.5-flash, google_api_keyGOOGLE_API_KEY)# Create the agentagent create_react_agent( modelmodel, tools[solve_math_problem], prompt( You are a Math Tutor AI. When a user asks a math question, reason through the steps clearly and use the tool solve_math_problem for numeric calculations. Always explain your reasoning before giving the final answer. ),)# Run the agentresponse agent.invoke( {messages: [{role: user, content: What is (12 8) * 3?}]})print(response)输出我们可以看到智能体使用了工具的响应‘The answer is 60’并且在回答问题时没有产生幻觉。现在让我们查看LangSmith仪表板。LangSmith 仪表板Tracing Projects选项卡我们可以看到项目已以‘testing’名称创建你可以点击它查看详细日志。这里显示了按运行划分的详细信息Total Tokens (总 Tokens 数)Total Cost (总成本)Latency (延迟)Input (输入)Output (输出)Time when the code was executed (代码执行时间)Monitoring选项卡在这里你可以看到一个包含项目、运行和总成本的仪表板。LLM 作为评判者LangSmith允许使用带有输入 (input)和输出 (output)键的简单字典来创建数据集 (dataset)。这个带有预期输出的数据集可以用于评估AI系统生成的输出在有用性、正确性和幻觉等指标上的表现。我们将使用类似的数学智能体创建数据集并评估我们的智能体系统。安装!pip install -q openevals langchain-openai环境设置import osfrom google.colab import userdataos.environ[OPENAI_API_KEY]userdata.get(OPENAI_API_KEY)定义智能体from langsmith import Client, wrappersfrom openevals.llm import create_llm_as_judgefrom openevals.prompts import CORRECTNESS_PROMPTfrom langchain_openai import ChatOpenAIfrom langgraph.prebuilt import create_react_agentfrom langchain_core.tools import toolfrom typing import Dict, Listimport requests# STEP 1: Define Tools for the Agent tooldef solve_math_problem(expression: str) - str: Solve a math problem. try: # Evaluate the mathematical expression result eval(expression, {__builtins__: {}}) returnfThe answer is {result}. except Exception: returnI couldnt solve that expression.# STEP 2: Create the LangGraph ReAct Agent def create_math_agent(): Create a ReAct agent with tools. # Initialize the LLM model ChatOpenAI(modelgpt-4o-mini, temperature0) # Define the tools tools [solve_math_problem] # Create the ReAct agent using LangGraphs prebuilt function agent create_react_agent( modelmodel, tools[solve_math_problem], prompt( You are a Math Tutor AI. When a user asks a math question, reason through the steps clearly and use the tool solve_math_problem for numeric calculations. Always explain your reasoning before giving the final answer. ), ) return agent创建数据集让我们创建一个包含简单和困难数学表达式的数据集我们稍后可以使用它来运行实验。client Client()dataset client.create_dataset( dataset_nameMath Dataset, descriptionHard numeric mixed arithmetic expressions to evaluate the solver agent.)examples [ # Simple check { inputs: {question: 12 7}, outputs: {answer: The answer is 19.}, }, { inputs: {question: 100 - 37}, outputs: {answer: The answer is 63.}, }, # Mixed operators and parentheses { inputs: {question: (3 5) * 2 - 4 / 2}, outputs: {answer: The answer is 14.0.}, }, { inputs: {question: 2 * (3 (4 - 1)*5) / 3}, outputs: {answer: The answer is 14.0.}, }, # Large numbers multiplication { inputs: {question: 98765 * 4321}, outputs: {answer: The answer is 426,373,565.}, }, { inputs: {question: 123456789 * 987654321}, outputs: {answer: The answer is 121,932,631,112,635,269.}, }, # Division, decimals, rounding { inputs: {question: 22 / 7}, outputs: {answer: The answer is approximately 3.142857142857143.}, }, { inputs: {question: 5 / 3}, outputs: {answer: The answer is 1.6666666666666667.}, }, # Exponents, roots { inputs: {question: 2 ** 10 3 ** 5}, outputs: {answer: The answer is 1128.}, }, { inputs: {question: sqrt(2) * sqrt(8)}, outputs: {answer: The answer is 4.0.}, }, # Edge / error / “unanswerable” cases { inputs: {question: 5 / 0}, outputs: {answer: I couldn’t solve that expression.}, }, { inputs: {question: abc 5}, outputs: {answer: I couldn’t solve that expression.}, }, { inputs: {question: }, outputs: {answer: I couldn’t solve that expression.}, },]client.create_examples( dataset_iddataset.id, examplesexamples)太棒了我们创建了一个包含13条记录的数据集。定义目标函数此函数调用智能体并返回响应。def target(inputs: Dict) - Dict: agent create_math_agent() agent_input { messages: [{role: user, content: inputs[question]}] } result agent.invoke(agent_input) final_message result[messages][-1] answer final_message.content if hasattr(final_message, content) else str(final_message) return {answer: answer}定义评估器我们使用预构建的llm_as_judge函数并从openevals库中导入提示词。我们目前使用4o-mini来保持低成本但推理模型可能更适合此任务。def correctness_evaluator(inputs: Dict, outputs: Dict, reference_outputs: Dict) - Dict: evaluator create_llm_as_judge( promptCORRECTNESS_PROMPT, modelopenai:gpt-4o-mini, feedback_keycorrectness, ) eval_result evaluator( inputsinputs, outputsoutputs, reference_outputsreference_outputs ) return eval_result运行评估experiment_results client.evaluate( target, dataMath Dataset, evaluators[correctness_evaluator], experiment_prefixlanggraph-math-agent, max_concurrency2,)输出运行后将生成一个链接。点击该链接你将被重定向到LangSmith的‘Datasets Experiments’选项卡在那里你可以看到实验结果。我们成功地进行了使用LLM作为评判者的实验。这在发现边缘案例 (edge cases)、成本和token使用方面具有洞察力。这里的错误大多是由于使用逗号或存在长小数导致的不匹配。这可以通过更改评估提示词或尝试推理模型来解决。或者简单地在工具级别添加逗号并确保小数格式。总结就是这样我们成功展示了LangGraph用于构建智能体和LangSmith用于跟踪和评估它的交织工作。这种组合对于跟踪开支和确保你的智能体通过自定义数据集按预期运行非常强大。虽然我们专注于跟踪和实验但LangSmith的能力不止于此。你还可以探索更强大的功能例如在生产环境中对不同提示词进行A/B 测试、将人工干预反馈 (human-in-the-loop feedback)直接添加到轨迹中以及创建自动化来简化你的调试工作流。AI时代未来的就业机会在哪里答案就藏在大模型的浪潮里。从ChatGPT、DeepSeek等日常工具到自然语言处理、计算机视觉、多模态等核心领域技术普惠化、应用垂直化与生态开源化正催生Prompt工程师、自然语言处理、计算机视觉工程师、大模型算法工程师、AI应用产品经理等AI岗位。掌握大模型技能就是把握高薪未来。那么普通人如何抓住大模型风口AI技术的普及对个人能力提出了新的要求在AI时代持续学习和适应新技术变得尤为重要。无论是企业还是个人都需要不断更新知识体系提升与AI协作的能力以适应不断变化的工作环境。因此这里给大家整理了一份《2025最新大模型全套学习资源》包括2025最新大模型学习路线、大模型书籍、视频教程、项目实战、最新行业报告、面试题等带你从零基础入门到精通快速掌握大模型技术由于篇幅有限有需要的小伙伴可以扫码获取1. 成长路线图学习规划要学习一门新的技术作为新手一定要先学习成长路线图方向不对努力白费。这里我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。2. 大模型经典PDF书籍书籍和学习文档资料是学习大模型过程中必不可少的我们精选了一系列深入探讨大模型技术的书籍和学习文档它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。书籍含电子版PDF3. 大模型视频教程对于很多自学或者没有基础的同学来说书籍这些纯文字类的学习教材会觉得比较晦涩难以理解因此我们提供了丰富的大模型视频教程以动态、形象的方式展示技术概念帮助你更快、更轻松地掌握核心知识。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%免费】