Agent_Principle
Agent的概念概念:在AI领域,AI是一种能够感知环境(通过传感器接受用户的文本、语音、文件等信息和问题)进行自主理解,进行决策和执行动作的智能实体。 原理Agent = 大脑(LLM)+记忆(memory)+任务规划(planner)+工具使用(MCP)+行动(Action) Agent本质上翻译过来是代理的意思,所以它能代表你处理任务,所以它要有人的记忆和大脑,有规划能力和处理的工具和实际行动。 AI agent工作流程prompt提示词提示词是Agent接受到的初始输入,描述了Agent需要完成的任务或解决的问题 LLM大模型大模型是agent进行任务规划和知识推理的重要工具,利用LLM大模型对提示词进行深入分析,生成可能的解决方案。 Memory记忆可以保留当前用户输入内容,上下文内容,外部向量存储的知识库,网页信息等。 planning规划定义:任务规划是agent根据提示词、大模型以及知识库进行决策和规划的过程。它涉及对任务的分解、目标的设定、路径的规划等 实现方式:图中“规划”这一步,在目前绝大多数基于大模型的Agent系统中,正是通过精心设计的提示...
Agent的ReAct框架原理
Agent的ReAct框架原理 Paper https://arxiv.org/pdf/2210.03629.pdf Code https://github.com/ysymyth/ReAct https://react-lm.github.io/ 注解CoT & ToT1234567CoT = Chain of Thought 思维链、推理链 指让大模型逐步展示中间推理过程,通过“分步骤思考”来提高复杂推理任务的正确率。特点:单链。线性推理、依赖“逐步思考”ToT = Tree of Thoughts 思维树(树状思维)它是对 CoT 的扩展,把推理过程从单一链路升级为树状结构探索,可以同时评估多个思路分支,选择最优路径,适合更复杂、可回溯的推理任务。特点:树状。多分支探索、评估多种可能路径,适合复杂规划 正文一、答题思路 核心要点拆解: ReAct框架的定义与核心机制◦ 分层解析ReAct的“思考-行动-观察”循环逻辑◦ 对比传统Agent框架(如CoT、ToT)的差异性 真实项目案例选取◦ 选取文档中第6章《Agent3:推理与...
Agent的工具封装和调用
Agent的工具封装和调用FunctionCallserver端,封装tool工具 client端,调用工具 工具的三种定义方式:1、定义 JSON 格式的工具 schema 2、@tool装饰器定义 3、定义工具类 调用工具的两种方式:1、把工具绑到大模型上 2、把工具和大模型以及提示词一起绑到智能体上 pydantic工具定义(把工具绑到大模型上,让大模型自动推理应该用哪一个工具,并设计逻辑返回,工具处理好的,放到json中对应的答案字段) 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152# todo: 第一步: 定义工具类:class Add(BaseModel):class Multiply(BaseModel):# 定义 类名tools = [Add,Multiply]# todo: 第二步:初始化模型llm = ChatOpenAI(base_url=conf.base_url, api_key=...
ReAct论文
ReAct论文REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS ReAct:实现语言模型中推理与行动协同的框架 ABSTRACT While large language models (LLMs) have demonstrated impressive performance across tasks in language understanding and interactive decision making, their abilities for reasoning (e.g. chain-of-thought prompting) and acting (e.g. action plan generation) have primarily been studied as separate topics. In this paper, we explore the use of LLMs to generate both reasoning traces and task-specific acti...
volc_engine_Agent_learning
火山-agent原理基础知识网址:https://www.volcengine.com/ agent定义: 根据用户的提示词,动态判断需要调用哪些工具,比如查询天气,调天气预报的接口、做翻译,调翻译软件的接口等等。本质是将外部的一些软件工具,做一个封装,让agent去判断,用户的需求是调用哪一个? 如何快速搭建生产级Agent火山方舟:大模型工具平台 TREA:AI IDE工具 MCP服务:火山引擎的MCP服务 PromptPilot:提示词工程工具 AI知识管理 火山引擎介绍:定位:字节的云服务与技术中台,是所有AI产品背后的”水电煤”功能:提供超大规模算力(万卡GPU集群)、高性能网络、存储服务,支撑大模型的训练和推理。同时,它也是“火山方舟”的载体,将字节的AI能力商业化输出给外部企业客户火山方舟和豆包的区别火山方舟和扣子:是平台,都是赋能企业和开发者,面向企业。是B端产品 豆包、即梦AI、Trae:是应用,给个人提供AI服务,面向用户。是C端产品
部署一个旅游规划智能体
部署一个旅游规划智能体在宿主机 build,Docker 只负责“装盒子”123456789101112131415161718192021222324252627282930313233343536373839404142核心思想一句话:👉 所有吃内存的事情(uv / pip / 编译)都在宿主机做👉 Docker 里只 COPY 成果,不编译、不解析、不拉依赖1、在宿主机准备好 Python + uvpython3 --version结果:Python 3.13.92、在 Windows 上安装 uv(一次性)方法一(官方推荐,最稳)1)打开 PowerShell(不是 CMD):irm https://astral.sh/uv/install.ps1 | iex2)安装完成后,重开一个终端,验证:uv --version3)在 SmartVoyage 项目中初始化 uv 环境cd \SmartVoyage让 uv 接管这个项目uv init会生成一个最基础的:pyproject.toml4)在项目根目录创建虚拟环境uv venv5)用 requirements.txt ...
部署一个视频播放器&知识库问答系统
部署一个视频播放器Python 方式运行 + pip 安装依赖: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859Python 方式运行 + pip 安装依赖:1、安装 venv 模块1)运行:sudo apt install python3.12-venv2)安装成功后,重新创建虚拟环境python3 -m venv .venv3)然后:source .venv/bin/activatepip install --upgrade pippip install fastapi uvicorn requests jinja23.1)服务器无法访问 Python 官方 PyPI,所以 pip 无法下载任何包 → 100% 超时这不是 pip 的问题、不是权限问题、不是 venv 问题,就是 网络无法访问国外源。3.2)pip 的源切换到国内镜像mkdir -p ~/.pip 或者有.pip的话nano ~/.pip...
部署一个音乐播放器
让这个MusicPlayer音乐播放器在浏览器里访问1234567891011121314151617181920212223242526272829303132生成了可部署的网页版本1、进入系统根目录cd /home/xxx/MusicPlayer2、安装依赖(跳过如果已经安装过)npm install3、生产环境构建(非常关键!)npm run build 3.1、Error: EACCES: permission denied 没有写入权限 sudo chown -R musicuser:musicuser /home/xxx/MusicPlayer把网页部署到服务器,让你能在浏览器访问。1、Electron + Vite 项目构建后,网页文件会位于:out/renderer/方案 A(最快速):用 serve 在服务器直接跑网页1)安装 serve(如果没装)npm install -g serve2)运行网页serve -s out/renderer -l 80053)访问http://47.115.72.68:8005要看到“有歌曲、有数据的成功案例方案 A — 最快...
Lunix_Commands
命令集Ubuntu系统Ubuntu 防火墙 ufw 开启并阻止了 22123456之前运行过 ufw 相关命令,如果后来有人启用了 ufw,SSH 会被挡掉。sudo ufw status (看状态)Status: active sudo ufw allow 22 (允入22)sudo ufw reload (重新加载)sudo ufw disable (关闭) npm install(node packages manages)nano(linux文本编辑器,比vim简单)12345nano xxx(以普通用户权限编辑文本文件)sudo nano(以管理员权限编辑文本文件)ctrl + K (删掉整行)ctrl + x(退出)enter (回车确认保存) Node.jsNode(全名 Node.js)就是让 JavaScript 能够在服务器上运行的环境。 12345http://47.115.xx.xx:3000/(跑后端 API 服务,背后就是 Node 服务器在运行。)npm run dev:web 【跑前端编译工具(Vite、Webpack、Vue、React 都依...
SmartTravel多智能体项目复习
011、什么是Function Call?概念:大模型基于具体任务,智能决策何时需要调用某个函数,同时返回符合函数参数的 JSON对象。 能力获得的方式:基于训练来得到的,所以并不是所有大模型都具有Function Call能力。 优势:信息实时性、数据局限性、功能扩展性。 2、Function Call 工作原理是什么?主要步骤: 用户(客户端)发送请求和提示词,聊天服务器(Chat Server)将该提示词以及当前可调用的函数列表一并发送给大模型。 大模型根据提示词的内容和上下文,判断应生成普通文本回复,还是以函数调用的格式进行响应。 如果模型决定调用函数,它会返回一个包含函数名称和参数的结构化调用指令;聊天服务器接收到该指令后,执行对应的函数,并将函数的实际执行结果返回给大模型。 模型再根据函数返回的数据,将其整合并生成一段自然、连贯的文本作为最终回复,返回给用户。 3、Function Call的使用方式123456789101112131415161718192021222324252627282930313233343536373839404142434445...