2025/12/26 4:35:44
网站建设
项目流程
租服务器做网站,购物网站设计,wordpress 使用ip访问,外贸营销是做什么的本文详细介绍了LangChain工具与Agent的高级应用#xff0c;包括多模态图片识别技术(Base64和URL方式)、Output Parser实现结构化输出、自定义工具开发(注解式和结构化类)#xff0c;以及Agent的决策逻辑。这些技术是构建智能助手、视觉分析系统等复杂AI应用的基础#xff0c…本文详细介绍了LangChain工具与Agent的高级应用包括多模态图片识别技术(Base64和URL方式)、Output Parser实现结构化输出、自定义工具开发(注解式和结构化类)以及Agent的决策逻辑。这些技术是构建智能助手、视觉分析系统等复杂AI应用的基础能让大模型实现图片识别、联网查询和智能决策功能显著扩展AI应用能力边界。咱们做AI应用开发的同学肯定都遇到过这种情况想让大模型帮用户做个旅游攻略得查实时天气、看景区客流量但大模型本身是“静态”的——它的知识截止到训练日期没法联网 想让它识别图片里的天气比如用户发张景区照片问“明天适合去吗”光靠文字也不行。这时候**LangChain的Tools工具和Agent代理**就成了“救命稻草”——工具是大模型的“外挂”帮它连接外部资源Agent是大模型的“大脑”决定什么时候用、怎么用这些外挂。今天咱们要聊的就是LangChain工具与Agent的高阶实战——不是讲基础用法而是教大家怎么玩出花多模态图片识别、自定义工具、结构化输出还有Agent的入门逻辑。 这些内容可是后续做复杂AI应用的“地基”比如智能助手、视觉分析系统全得靠它们。一、多模态集成让大模型“看懂”图片先从大家最感兴趣的多模态说起——说白了就是让大模型处理文字以外的信息比如图片。这里重点讲两种传图方式Base64编码和URL链接这俩的区别可得拎清楚不然踩坑都不知道为什么。1. 为什么要用Base64比如用户发了张景区的照片想让模型分析天气。如果直接传图片文件大模型没法直接读得转成Base64字符串——就像把图片“压缩”成一串字符模型能解析。代码其实很简单import httpx import base64 def image_to_base64(url: str)- str: # 用httpx下载图片二进制内容 response httpx.get(url) # 编码成Base64字符串 return base64.b64encode(response.content).decode(utf-8)为什么推荐Base64因为所有大模型都支持——不管是GPT-4o还是国内的模型只要给 Base64它都能识别。而URL就不一定了比如你用国内模型传了个国外图片的URL模型可能因为网络问题下载不了图片直接报错。2. URL传图的注意事项那URL就没用吗也不是——如果图片存在公开的、能稳定访问的地址比如亚马逊S3、阿里云OSS直接传URL更省事。但得注意两点•模型支持不是所有模型都能解析URL比如有些小众模型只认Base64•网络可达国内模型用国内URL国外模型用国外URL不然“图片下不下来”模型没法识别。3. 多图对比让模型“找不同”多图识别——比如传两张图一张晴天的田野一张雪天的村庄问模型“这俩有啥不一样”。模型会返回“第一张是晴朗的田野第二张是被雪覆盖的村庄”。 这功能能用到哪儿比如电商的“商品对比”用户发两张产品图问区别、景区的“季节推荐”不同季节的照片对比。二、Output Parser让大模型的输出“听话”大模型默认返回的是自然语言比如“这张图是晴天”但程序要的是结构化数 据比如JSON/XML——比如后端要把天气结果存数据库得要{weather: sunny, temperature: 25}这样的格式。这时候Output Parser就派上用场了——它是“翻译官”把自然语言转成程序能读的结构化数据。咱们重点讲两种Parser1. JSON Parser最常用的结构化格式比如让模型分析图片里的天气然后返回JSON。代码示例from langchain.output_parsers importJsonOutputParser from langchain.prompts importPromptTemplate # 定义输出格式 parser JsonOutputParser(pydantic_objectWeather)# Weather是Pydantic模型定义了weather和temperature字段 # 写提示词告诉模型要返回JSON prompt PromptTemplate( template分析图片里的天气返回JSON格式{format_instructions}\n图片内容{image_content}, input_variables[image_content], partial_variables{format_instructions: parser.get_format_instructions()} ) # 调用模型后解析结果 response llm(prompt.format(image_contentbase64_image)) weather_data parser.parse(response)这里的关键是用Pydantic模型约束格式——比如Weather模型规定了必须有weather字符串和temperature整数字段模型就不会返回乱七八糟的内容。2. XML Parser适合复杂嵌套场景如果要处理更复杂的数据比如“景区攻略天气客流量”XML更适合——它支持嵌套结构。比如travel_guide weathersunny/weather temperature25/temperature scenic_spot name故宫/name visitor_flow中/visitor_flow /scenic_spot /travel_guideXML Parser把模型的输出转成这种格式适合需要层级结构的场景 比如电商商品详情、医疗报告。三、自定义工具给大模型装“专属外挂”LangChain官方提供了一些工具比如维基百科搜索、Tavily搜索但实际开发中咱们常需要自定义工具——比如调用公司内部的天气API、查询用户的订单数据。这里讲两种自定义方式1. 注解式工具最简单的“贴标签”就像Java里用Service标记服务类LangChain里用tool注解标记函数告诉框架“这是个工具”。比如写个返回天气枚举的工具from langchain.tools import tool tool def get_weather_enum(weather_description: str)- str: 根据天气描述返回枚举值 if晴in weather_description: returnSUNNY elif雪in weather_description: returnSNOWY elif雨in weather_description: returnRAINY else: returnUNKNOWN这个工具的作用是大模型分析图片得到“这是晴天”后调用它返回SUNNY——后续可以用这个枚举值去调用实时天气API比如“查北京明天的SUNNY天气对应的温度”。2. 结构化类工具更严谨的复杂场景如果工具需要多个参数比如“查某个城市某一天的天气”用结构化类更合适。比 如from langchain.tools importStructuredTool from pydantic importBaseModel,Field # 定义工具的输入参数模型 classWeatherInput(BaseModel): city: str Field(description城市名称) date: str Field(description日期格式YYYY-MM-DD) # 定义工具函数 def get_real_time_weather(city: str, date: str)- dict: 调用实时天气API获取数据 # 这里写调用API的逻辑比如请求聚合数据的天气接口 return{city: city,date: date,weather:sunny,temperature:28} # 创建结构化工具 weather_tool StructuredTool.from_function( funcget_real_time_weather, nameRealTimeWeatherTool, description获取实时天气数据, args_schemaWeatherInput )这种方式的好处是参数更明确——模型会自动按照WeatherInput的要求传参不会漏填城市或日期。四、Agent入门让大模型学会“做决策”工具是“外挂”Agent就是“用外挂的大脑”——它决定什么时候调用工具、调用哪个工具、怎么处理结果。比如做旅游攻略的流程1.用户发张景区照片→Agent调用多模态工具识别天气2.识别出“晴天”→Agent调用实时天气工具查明天的温度3.拿到温度→Agent调用客流量工具查景区人数4.把这些结果整理成攻略→返回给用户。咱们先讲Agent的基础创建和运行比如用AgentExecutor把模型和工具绑在一 起from langchain.agents importAgentExecutor, create_openai_functions_agent from langchain.chat_models importChatOpenAI # 初始化模型 llm ChatOpenAI(modelgpt-4o) # 定义工具列表 tools [get_weather_enum, weather_tool] # 创建Agent agent create_openai_functions_agent(llm, tools, prompt) # 运行Agent agent_executor AgentExecutor(agentagent, toolstools, verboseTrue) # 测试用户发张晴天的图片问“明天适合去吗” response agent_executor.run(分析这张图片的天气然后查北京明天的实时天气)运行后Agent会先调用多模态工具识别图片里的“晴天”再调用实时天气工具查北京明天的温度最后整理成回答。比如做一个智能旅游助手•用户发张景区照片→多模态工具识别天气•Output Parser把结果转成JSON→传给实时天气工具•Agent整合天气、客流量、景区信息→生成攻略。“LangChain的工具和Agent难吗”其实不难——关键是把抽象的概念落地到场景里。说到底LangChain的核心不是“调API”而是让大模型“更像人”——能看图片、能联网、 能做决策。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%免费】