
示例工程人工智能【免费下载链接】500-AI-Agents-ProjectsThe 500 AI Agents Projects is a curated collection of AI agent use cases across various industries. It showcases practical applications and provides links to open-source projects for implementation, illustrating how AI agents are transforming sectors such as healthcare, finance, education, retail, and more.项目地址https://gitcode.com/GitHub_Trending/50/500-AI-Agents-Projects点击查看免费下载本指南以 500-AI-Agents-Projects 仓库中的 SQL Query Agent 为对象完整讲解其从环境配置、数据库接入、命令行使用到源码原理的全过程。读完本文你将掌握如何基于 LangChain 的SQLDatabaseToolkit与 ReAct Agent 搭建一个自然语言 → SQL → 执行 → 自然语言回答的查询链路并学会安全地以只读方式对接任意 SQLite 数据库。一、Agent 概览它能做什么SQL Query Agent 的核心能力是连接任意 SQLite 数据库通过自然语言提问自动生成并执行 SQL最终返回人类可读的答案。它属于 agents/ 目录 中 21 个可独立运行 Agent 的第 04 号实现定位于数据分析Data Analytics行业场景。从 metadata.yaml 可以看到该 Agent 的官方画像框架frameworklangchain语言languagepythonLLMgpt-4o-mini难度difficultyintermediate中级标签tagssql、database、natural-language、data-analysis入口entrypointagent.py该 Agent 不依赖任何 monorepo 结构目录自包含可直接进入 agents/04-sql-query-agent/ 运行是典型的零成本上手的数据问答工具。二、环境准备与配置2.1 安装依赖Agent 的 Python 依赖集中在 requirements.txt 中共 4 个包包版本langchain0.3.0langchain-openai0.2.0langchain-community0.3.0python-dotenv1.0.1langchain-community提供了SQLDatabase工具类与SQLDatabaseToolkitlangchain-openai提供ChatOpenAI模型封装python-dotenv负责从.env文件加载环境变量。安装命令文档原命令pip install -r requirements.txt2.2 配置 API KeyAgent 通过load_dotenv()见 agent.py加载环境变量。仓库中已提供环境变量模板 agents/04-sql-query-agent/.env.example内容为OPENAI_API_KEYyour_openai_api_key_here执行文档规定的复制命令然后把your_openai_api_key_here替换为真实的 OpenAI API Keycp .env.example .env注意.env是本地私有文件通常不应提交到版本库OPENAI_API_KEY是 Agent 调用 GPT-4o-mini 的唯一凭证缺失时ChatOpenAI初始化会失败。三、运行方式三种模式详解文档给出的运行命令全部收敛在 agent.py 的argparse参数解析逻辑中共支持三个命令行参数参数类型默认值说明--dbstrdemo.sqliteSQLite 数据库文件路径--questionstr无单次提问省略则进入交互式问答模式--allow-writeflag关闭以可写模式打开数据库默认只读3.1 Demo 模式自动创建示例电商库python agent.py当--db未指定且当前目录不存在demo.sqlite时agent.py 会调用create_demo_database()自动生成一个演示用电商数据库包含三张表customers客户id、name、email、country、created_at内置 Alice Johnson、Bob Smith、Carlos Lima、Diana Prince 四位客户products商品id、name、category、price、stock内置 Laptop Pro1299.99、Wireless Mouse29.99、Python Book49.99、Standing Desk599.99orders订单id、customer_id外键→customers、product_id外键→products、quantity、total、order_date内置 6 条跨 2024-04 月的订单记录。表结构定义与种子数据均可直接在 agent.py 中查看非常适合在无真实数据库时验证 Agent 能力。3.2 连接自有数据库python agent.py --db path/to/your/database.sqlite传入任意 SQLite 文件路径即可。运行后终端会依次打印 Connected to: db路径— 已连接数据库 Mode: read-only / read-write— 当前打开模式 Tables: ...— 通过db.get_table_names()自动探测到的全部表名。3.3 单次提问与非交互调用python agent.py --question What is the total revenue by country?--question允许一次性传入自然语言问题Agent 执行后直接打印✅ Answer: ...并退出见 agent.py。省略--question则进入交互式对话循环agent.py输入quit、exit或q即可退出非常适合在终端中连续追问。四、安全边界默认只读慎开写权限文档明确强调数据库默认以只读模式打开只有在使用可丢弃的测试数据库、且确实希望 Agent 生成的 SQL 能够修改数据时才应使用--allow-write。该安全机制在源码层面有完整实现。build_agent()通过sqlite_uri()构造连接 URIagent.py只读模式sqlite:///file:绝对路径?moderouritrue其中quote()对路径进行 URL 编码moderouritrue强制 SQLite 以只读方式打开可写模式退化为普通形式sqlite:///绝对路径。read_only的取值由--allow-write决定agent.pyread_onlynot args.allow_write。这意味着未加该参数时LLM 生成的任何INSERT/UPDATE/DELETE都会因只读模式而失败从根上杜绝了误写生产数据的风险——这是在生产环境使用该 Agent 时必须保留的默认配置。五、Agent 架构与源码原理5.1 一图看懂数据流文档给出了官方架构图完整继承如下Natural Language → LLM (generates SQL) → SQLite → LLM (formats answer) → Response整个过程分四步用户自然语言问题 → LLM 生成 SQL → 在 SQLite 上执行 → LLM 将查询结果整理为自然语言回答。这与 agent.py 的build_agent()实现一一对应。5.2 核心组件拆解build_agent()用四个对象组装出完整 AgentSQLDatabase通过SQLDatabase.from_uri(sqlite_uri(...))接入数据库负责表结构探测与 SQL 执行ChatOpenAI(modelgpt-4o-mini, temperature0)模型固定为gpt-4o-minitemperature0保证 SQL 生成尽量确定、稳定避免同一问题反复给出不同查询SQLDatabaseToolkit(dbdb, llmllm)LangChain 提供的 SQL 专用工具包内部封装了查询表结构、校验 SQL 语法、执行查询、查看表信息等子工具是 Agent 能看懂数据库的关键create_sql_agent(llm, toolkit, agent_typeAgentType.ZERO_SHOT_REACT_DESCRIPTION)以Zero-shot ReActReason Act模式组装 Agent——不给任何示例仅靠工具描述驱动 LLM 推理先思考拆解问题、选择工具生成 SQL → 执行 → 校验再根据工具结果继续推理直至产出最终答案。verboseFalse默认关闭中间推理输出保持终端界面干净。从源码结构可以推断这种 ReAct 循环正是架构图中LLM (generates SQL)与LLM (formats answer)两个阶段之间反复迭代的执行机制Agent 会先调用 SQL 相关工具获取 schema 与执行结果再基于结果组织语言回复。六、典型提问示例文档内置了 4 条可直接在 Demo 库上验证的示例问题How many customers do we have in each country?按国家统计客户数What are the top 3 best-selling products?销量最高的 3 款商品What was the total revenue last month?上月总收入Which customer has spent the most?消费最高的客户这些查询涉及GROUP BY、ORDER BY ... LIMIT、SUM、MAX等常见 SQL 能力可作为回归测试集验证 Agent 在多表关联、聚合统计上的表现。七、在 500-AI-Agents-Projects 中的定位与扩展SQL Query Agent 是 agents/ 目录下 21 个实战 Agent 之一与 08-data-analysis-agent数据分析同属数据方向但与后者偏重 pandas 类分析不同本 Agent 专攻数据库的自然语言问答适合直接挂接现有业务库做Chat with your database。如需将其嵌入自己的项目可以直接复用 agent.py 中sqlite_uri()与build_agent()两个函数注意保持只读默认值替换数据库路径即可接入新数据源。仓库同时要求每个 Agent 目录必须包含agent.py、requirements.txt、.env.example、README.md、metadata.yaml五个文件见 agents/README.md本 Agent 正是该规范的完整实现示例可作为新增 Agent 的目录结构范本。八、小结SQL Query Agent 用不到 200 行代码演示了 LangChain 生态中一条完整且安全的文本转 SQL链路SQLDatabase负责连接与执行、SQLDatabaseToolkit提供工具、Zero-shot ReAct Agent 驱动推理、temperature0保证稳定输出而默认只读的 URI 设计则是最值得借鉴的生产级安全实践。对照 agent.py 逐行阅读再配合 Demo 库跑通上述示例问题你就能快速理解并复刻属于自己的 SQL 问答 Agent。赞分享示例工程人工智能【免费下载链接】500-AI-Agents-ProjectsThe 500 AI Agents Projects is a curated collection of AI agent use cases across various industries. It showcases practical applications and provides links to open-source projects for implementation, illustrating how AI agents are transforming sectors such as healthcare, finance, education, retail, and more.项目地址https://gitcode.com/GitHub_Trending/50/500-AI-Agents-Projects点击查看免费下载相关推荐NL2SQL Tool 实战让 CrewAI Agent 用自然语言驱动 SQL 查询与数据库写入NL2SQL Tool 实战让 CrewAI Agent 用自然语言驱动 SQL 查询与数据库写入 本篇技术指南围绕 CrewAI 生态中 crewai to人工智能AI AgentAgent 框架多智能体工作流自动化后端使用 langchaingo SQL Database Chain 通过自然语言查询 SQLite 数据库使用 langchaingo SQL Database Chain 通过自然语言查询 SQLite 数据库 导读 本文围绕 langchaingo https:人工智能大模型AI AgentRAG后端基于 ReAct 框架的 Oracle 数据库智能查询 Agent从自然语言到 SQL 的完整实战基于 ReAct 框架的 Oracle 数据库智能查询 Agent从自然语言到 SQL 的完整实战 导读 本文围绕 hello agents https://教程文档AI Agent人工智能大模型上一篇中兴光猫权限突破一个开源工具如何揭开网络设备的神秘面纱下一篇终极指南5步快速解锁中兴光猫工厂模式获取永久Telnet权限创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考