为了能从 Python 程序中访问网络 API,我们需要一个 HTTP 库。requests是 Python 社区中最流行、最易用的选择。tavily-python是一个强大的 AI 搜索 API 客户端,用于获取实时的网络搜索结果,可以在官网注册后获取 API。openai是 OpenAI 官方提供的 Python SDK,用于调用 GPT 等大语言模型服务。
角色拆解
requests —— “通信员” (基础工具)
定义: 这是一个 HTTP 库。
openai —— “大脑” (处理核心)
作用: 它是 Python 用来“上网”的最基本工具。就像你的浏览器(Chrome/Edge)用来访问网页一样,Python 程序用 requests 来向互联网上的服务器发送请求并获取数据。
地位: Python 社区的标配,几乎所有涉及网络的程序都会用到它。
定义: OpenAI 的官方 Python 软件开发工具包 (SDK)。
tavily-python —— “眼睛/搜查员” (信息获取)
作用: 它让你的程序能连接到 OpenAI 的服务器,使用 GPT-3.5 或 GPT-4 模型。
能力: 负责理解用户的意图、进行逻辑推理、总结内容、回答问题。它是整个程序的“智力”来源。
定义: 专门为 AI 设计的搜索引擎接口。
作用: GPT 的知识是有截止日期的(比如它可能不知道今天的新闻),而 Tavily 可以实时搜索互联网。
特点: 与普通的 Google 搜索不同,Tavily 返回的是经过整理的、适合 AI 阅读的文本数据,而不是复杂的网页 HTML 代码,这大大提高了 AI 的处理效率。
它们如何协同工作?
这段文字通常出现在“AI Agent(智能体)”开发的教程或文档中。当你把这三个工具组合在一起时,工作流程通常是这样的:
用户提问: “今天旧金山的天气怎么样?”
openai (大脑) 分析: GPT 发现自己不知道今天的实时天气,判断需要搜索网络。
tavily-python (搜查员) 执行: 接收指令,去互联网上搜索“旧金山 实时天气”,并把搜索结果带回来。
requests (通信员): 在幕后支持这些数据传输(虽然 openai 和 tavily 库内部封装好了网络请求,但复杂的自定义功能常需配合 requests 使用)。
最终回答: GPT 结合搜索到的结果,生成最终答案:“今天旧金山多云转晴,气温...”
1.1 准备工作
特性 pip install conda install 角色 Python 的官方包管理器。 跨平台的包管理器 + 环境管理器。 仓库来源 PyPI (Python Package Index)。拥有最全的 Python 库(超过 30 万个)。 Anaconda Repository 或 Conda-forge。库的数量较少,经过严格筛选和测试。 管理范围 只管理 Python 库。 不仅管理 Python 库,还能管理 C/C++ 库、R 语言包等。 依赖处理 有时会因为缺少系统级的 C 库(如编译器)而安装失败。 擅长处理复杂的底层依赖(比如 NumPy, TensorFlow 需要的 C 库),直接下载编译好的二进制文件,更稳定。 适用场景 几乎所有 Python 项目,特别是由于库太新、Conda 没有收录时。 科学计算、深度学习环境搭建(避免复杂的编译错误)。
requests = 大工具箱 (Package/Folder).exceptions = 工具箱里的 “报错说明书”分区 (Module/File).RequestException = 说明书里的 第一条条款 (Class)“文件夹 -> 文件 -> 类”.1.3.5 要点分析——(keyError, IndexError)
| 欢迎光临 AI创想 (http://llms-ai.com/) | Powered by Discuz! X3.4 |