
大模型
文章平均质量分 88
青衫客36
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
用 Python 实现一个“小型 ReAct 智能体”:思维链 + 工具调用 + 环境交互
摘要(149字): 本文介绍如何通过Python实现一个基于ReAct模式的智能体(Agent),使大语言模型(LLM)具备动态调用外部工具的能力。核心方案包括:1)设计严格交互格式的Prompt,强制模型按“思考-动作-暂停-观察”循环运作;2)通过正则匹配工具调用指令,集成Wikipedia查询、计算器和博客搜索API;3)利用消息上下文管理实现多轮交互。代码演示了模型如何自主选择工具(如搜索“法国首都”时调用Wikipedia)并整合结果生成最终答案,展现了LLM从被动生成转向主动交互的扩展性。原创 2025-08-18 22:40:14 · 741 阅读 · 0 评论 -
Portkey-AI gateway 的一次“假压缩头”翻车的完整排障记:由 httpx 解压异常引发的根因分析
摘要:本文记录了作者在本地搭建Portkey AI Gateway时遇到的gzip解码错误问题。测试发现网关能接收请求但Python程序报"incorrect header check"错误,经排查发现网关返回了"Content-Encoding: gzip"头部但实际响应是明文JSON。作者通过使用httpx.stream().iter_raw()方法绕过自动解压直接获取原始字节,成功定位到问题根源在于网关返回了不匹配的压缩头部。文章详细记录了问题复现过程,包括使用原创 2025-08-17 22:54:30 · 604 阅读 · 0 评论 -
模型路由相关论文速览——《Universal Model Routing for Efficient LLM inference》
传统“模型路由”多数假设一个的候选 LLM 池(static pool),路由器只需要在这组已知模型里挑选最便宜且“够用”的模型;但现实中模型池经常变化:新模型不断上线,旧模型下线。每当模型池变化,重新标注训练数据、重训路由都很费时费钱。这篇论文()关注:测试时出现的新 LLM,如何在路由器的前提下把请求路到合适的新模型上。作者提出了这种新的解决方式:把“每个 LLM”表示成一个,路由器学会基于这些“LLM 特征”做决策,从而泛化至未见过的 LLM。论文在公共基准上验证了能在中有效路由。原创 2025-08-13 23:02:34 · 697 阅读 · 0 评论 -
AI Agent——基于 LangGraph 的多智能体任务路由与执行系统实战
摘要 本文介绍了一个基于LangGraph的多智能体任务路由系统,通过模块化设计实现对话助手功能。系统核心包括五个节点:任务分类器(supervisor_node)负责识别用户意图;旅游规划(travel_node)调用MCP工具接口;笑话生成(joke_node)使用LLM直接响应;对联生成(couplet_node)结合Redis向量检索;兜底节点(other_node)处理其他请求。系统采用TypedDict定义状态对象,通过LangGraph实现可视化流程编排,具有低耦合、易扩展的特点。关键技术包括原创 2025-08-12 23:00:06 · 825 阅读 · 0 评论 -
浅谈 LangGraph 子图流式执行(subgraphs=True/False)模式
摘要: 本文演示了如何在LangGraph中使用subgraphs=True参数实现嵌套工作流。通过构建包含子图(research)的父图流程,展示了子图封装与命名空间追踪功能。关键点包括:1) 子图作为独立模块处理特定任务;2) 不同stream_mode下输出带命名空间标识,便于调试;3) 提供了完整代码示例,对比了subgraphs启用前后的流式输出差异。该模式适用于复杂AI工作流(如多智能体协作),能清晰追踪子流程执行路径。原创 2025-08-11 22:12:54 · 948 阅读 · 0 评论 -
LangGraph 之 stream_mode 解析——values(完整状态)、updates(增量更新)与 [“updates“, “values“] 混合模式
文章摘要: 本文介绍了LangGraph工作流中三种stream_mode的用法差异。"values"模式输出完整状态流,展示每一步执行后的全局状态;"updates"模式仅输出节点增量更新,适合实时推送;混合模式可同时获取两种数据。通过一个包含"润色主题"和"生成笑话"两个节点的简单工作流示例,对比演示了不同模式下的输出效果,并总结了各自适用场景。最后补充了直接获取最终结果的invoke方法,帮助开发者根据需要选择合适的执行方原创 2025-08-11 21:44:28 · 387 阅读 · 0 评论 -
LangGraph 历史追溯 & 人机协同(Human-in-the-loop,HITL)
本文介绍了如何利用get_state_history、update_state和interrupt实现可回退、可修补且支持人工干预的工作流系统。通过一个完整示例,展示了关键功能:历史追溯(get_state_history)、时间旅行恢复(从特定检查点继续)、分叉管理(检查点/命名空间)、历史修改(update_state)、人机交互(interrupt+恢复命令)以及调试机制。系统核心包含三个概念:全局状态(State)、检查点(Checkpoint)和历史分叉管理。其中检查点机制支持历史追溯和恢复,而所原创 2025-08-11 21:28:00 · 368 阅读 · 0 评论 -
浅谈 A2A SDK 核心组件
A2A协议的SDK为智能体服务端开发提供了一套稳定可扩展的框架,其核心组件包括:1) AgentExecutor作为业务执行引擎,负责任务执行与取消;2) EventQueue作为事件缓冲与分发中心,实现流式响应;3) DefaultRequestHandler处理协议到业务的适配;4) A2AStarletteApplication构建协议服务端容器;5) AgentCard和AgentSkill定义智能体的元信息与能力。这些组件协同工作,通过事件驱动机制解耦业务逻辑与传输层,支持流式响应和任务管理,为开原创 2025-08-10 16:39:23 · 626 阅读 · 0 评论 -
浅谈 A2A 协议——面向多智能体的开放通信标准
A2A协议旨在解决异构智能体之间的互操作与协作问题,支持不同厂商、语言和框架构建的智能体安全通信。其核心目标包括互操作性、动态发现、多模式交互和安全通信。协议围绕A2A Client、Server、Agent Card等关键概念,通过任务(Task)作为基本工作单元,管理有状态交互的生命周期。支持JSON-RPC、gRPC和REST三种传输协议,并依托HTTPS实现安全认证。该协议适用于需要多个智能体协作完成复杂任务的场景,通过标准化交互模型实现"黑箱"式集成。原创 2025-08-10 15:21:30 · 1184 阅读 · 0 评论 -
LLM——浅谈 LangGraph 中断式工作流:构建一个可交互的问答流程
本文介绍了如何利用LangGraph实现智能体的中断-恢复工作流,通过一个对话机器人示例详细解析了其实现原理与代码逻辑。文章首先阐述了中断式工作流的需求场景,随后从State定义、节点函数编写、StateGraph构建、Checkpointer配置到核心执行流程进行了系统讲解。重点分析了中断机制的工作原理,包括如何通过interrupt()暂停执行、等待用户输入,再使用Command对象恢复流程继续执行。这种模式使得智能体能够在保持上下文状态的同时,灵活应对需要人工干预的场景,为开发交互式AI应用提供了强大原创 2025-08-06 23:03:43 · 893 阅读 · 0 评论 -
LLM——基于LangChain与LangGraph实现的长篇文章自动写作工作流
本文介绍了一个基于LangChain和LangGraph的长篇文章自动写作系统。该系统能将简单的写作指令智能拆解为结构化写作计划,并逐段生成符合人类写作风格的内容,最终输出为Markdown文档。系统主要包含三大功能模块:写作计划拆解模块(plan_chain.py)负责将用户指令转化为段落级子任务;段落写作模块(write_chain.py)结合上下文逐段生成内容;保存模块将最终文章保存为Markdown文件。通过LangGraph的工作流编排,实现了"规划→写作→保存"的完整自动化写原创 2025-08-03 00:28:13 · 1065 阅读 · 0 评论 -
LLM——使用 LangGraph 构建 ReAct 智能体:多轮对话 + 工具调用 + 可视化流程图
本文介绍了如何构建一个具备ReAct能力的多轮智能体系统。该系统整合了LangChain工具调用、OpenAI/通义千问大模型和LangGraph状态管理,适用于旅行规划、业务辅助等场景。核心架构包含:1)通过@tool装饰器定义可调用工具;2)创建具备工具绑定能力的智能体;3)使用LangGraph构建状态图实现ReAct循环(推理→行动→观察);4)自动生成流程图可视化交互流程。系统能够处理多轮工具调用,直到输出最终答案,并通过条件路由实现动态流程控制。原创 2025-07-31 21:23:25 · 1509 阅读 · 0 评论 -
LLM综合实战——基于 MCP 和 OpenAI Function Calling 构建本地知识库智能问答助手
企业级智能问答系统实践方案 本文介绍了一个结合大语言模型与企业知识库的智能问答系统解决方案,主要特点包括: 技术架构: 使用MCP协议作为工具服务通信标准 集成OpenAI Function Calling实现自动工具调用 本地知识库kb.json存储结构化问答数据 核心功能: 模型自动判断是否需要调用知识库查询工具 通过MCP服务端获取结构化知识数据 生成格式良好的自然语言回答 系统优势: 相比传统API,MCP提供自动schema生成和流式通信支持 实现"理解问题→调用工具→生成回答"原创 2025-07-31 00:19:31 · 718 阅读 · 0 评论 -
LLM—— 基于 MCP 协议(Streamable HTTP 模式)的工具调用实践
本文介绍了MCP协议的Streamable HTTP模式工具调用实践。该模式是对HTTP+SSE的标准化升级,支持单一接口处理所有消息、流式响应和会话管理。文章通过Python示例展示了服务端工具注册和客户端调用的完整流程,对比了有状态(stateless_http=False)和无状态(stateless_http=True)两种模式的区别。Streamable HTTP模式结合了HTTP标准化、SSE流能力和JSON-RPC结构表达,为开发者提供了高效的工具调用方式、可扩展架构和可靠通信保障,是构建智能原创 2025-07-30 23:30:33 · 731 阅读 · 0 评论 -
LLM—— 基于 MCP 协议(SSE 模式)的工具调用实践
本文介绍了基于MCP协议SSE模式的工具调用实践。MCP提供统一工具注册和调用机制,结合SSE实现服务器向客户端的单向事件推送。文章通过Python示例展示服务端工具注册和客户端远程调用流程,说明如何使用HTTP+SSE长连接实现跨网络工具调用。该方案支持分布式架构,适用于构建远程智能体、插件化平台等场景,为跨网络工具执行系统提供安全解耦的底层能力。原创 2025-07-30 22:08:44 · 1146 阅读 · 0 评论 -
LLM—— 基于 MCP 协议(Stdio 模式)的工具调用实践
本文介绍了MCP(Message Control Protocol)这一轻量级通信协议,它为解决大语言模型调用外部工具的问题提供了底层架构支持。MCP支持跨语言交互、工具解耦和动态注册调用,并通过Stdio、SSE等多种传输机制实现灵活通信。文章重点演示了基于Stdio模式的本地实现方案,包含服务端工具注册和客户端调用示例,展示了其进程隔离、低延迟等优势。与OpenAI Function Calling相比,MCP更加底层通用,适合构建模块化的智能体系统。最后指出MCP可扩展应用于本地LLM代理、多语言插件原创 2025-07-30 21:28:13 · 1409 阅读 · 0 评论 -
基于 OpenAI Function Calling 的工具调用实践解析交互流程
本文介绍了OpenAI Function Calling功能,它使大语言模型(LLM)能够与外部函数和API协同工作。文章通过天气查询的完整示例,详细讲解了Function Calling的实现流程:首先定义工具函数和JSON Schema参数结构,然后让模型判断是否调用函数并生成结构化参数,最后执行真实函数并返回结果给模型生成自然回复。Function Calling拓展了LLM的实用性,使其从仅能"说话"升级为能"动手做事",是构建智能体(AI Agent)的核心原创 2025-07-30 19:37:26 · 1082 阅读 · 0 评论 -
使用JSON Schema 的 dependencies 实现 LLM 工具调用的参数约束
本文探讨了如何利用JSON Schema的dependencies机制规范大语言模型(LLM)工具调用的参数组合。通过一个浏览器控制工具示例,展示了当不同动作(如go_to_url、click_element等)需要不同参数时,如何用dependencies强制约束参数依赖关系,避免模型生成无效请求。该方案兼容OpenAI、Qwen等主流框架,能显著提升工具调用的准确性和健壮性。建议为多功能工具定义清晰的参数依赖,并搭配描述字段以优化模型理解。原创 2025-07-29 19:32:00 · 283 阅读 · 0 评论 -
LangChain实战——实现多轮对话 + Function Calling
本文介绍了如何利用LangChain框架实现大语言模型的函数调用(Function Calling)功能。通过一个完整示例,演示了定义工具函数、绑定工具到模型、构建多轮对话流以及自动调用工具完成任务的完整流程。文章详细解析了使用@tool装饰器注册工具函数、初始化Qwen模型、处理工具调用响应等关键步骤,并展示了天气查询和加法运算的实际运行效果。该方案支持多轮对话上下文记忆,模型可自动识别工具调用需求,并将工具结果融入后续推理,为开发者提供了扩展模型功能的有效途径。原创 2025-07-27 11:54:55 · 918 阅读 · 0 评论 -
Python 中的上下文管理器:@asynccontextmanager 解析与实战案例
是 Python 标准库contextlib提供的装饰器,用于将一个带有yield的async def协程函数转化为支持async with的异步上下文管理器。它的作用:简化异步资源/状态管理。# yield 之前:准备资源 / 设置状态# yield:将控制权交给上下文体# yield 之后:清理资源 / 恢复状态 / 捕获异常是异步时代 Python 的上下文管理利器,它将繁琐的资源管理逻辑变得清晰、可控且异常安全,是编写健壮异步程序不可或缺的组件。原创 2025-07-23 19:46:41 · 778 阅读 · 0 评论 -
浅谈 Pydantic v2 的 RootModel 与联合类型——构建多请求结构的统一入口模型
摘要:Pydantic v2的RootModel结合联合类型(Union)为现代Web应用和智能系统提供了统一请求入口的优雅解决方案。该方法通过定义单一模型接收多种结构化请求(如ping、initialize等),自动路由到对应子模型,简化了API、WebSocket等接口设计。文章展示了从模型定义、请求分发到FastAPI集成的完整流程,特别适用于LLM智能体、LangGraph节点调度等多类型请求场景,显著提升了代码可维护性。原创 2025-07-12 16:23:09 · 572 阅读 · 0 评论 -
基于 Python 和 OpenAI 接口规范的本地多轮对话
基于 Python 和 OpenAI 接口规范的本地多轮对话原创 2025-05-13 13:21:17 · 589 阅读 · 0 评论 -
使用本地部署的 LLaMA 3 模型进行中文对话生成
该程序通过 Hugging Face Transformers API 调用本地部署的 LLaMA3 模型进行多轮中文对话生成。首先,程序加载模型和分词器,并设置计算设备为 GPU。接着,构建用户输入并将其封装为 Chat 模型支持的格式,使用 apply_chat_template 方法将消息转换为模型可理解的文本。然后,将文本令牌化并输入模型生成回复,最后解码并输出生成的回答。整个过程涵盖了模型加载、输入构造、文本生成和输出解析四个核心步骤,展示了如何利用 LLaMA3 模型进行对话生成。原创 2025-05-12 23:26:02 · 630 阅读 · 0 评论