第2章 安装 Gradio 与配置开发环境
在开发应用之前,我们需要先配置好 Python 环境。
这一节会尽量简化配置流程——目标不是让你在写下第一行 Gradio 代码之前,花一小时折腾电脑。
检查 Python 安装情况
打开终端或命令行。
在多数系统上,可以用以下命令检查 Python:
python --version
根据你的操作系统,也可能需要用:
python3 --version
终端中应会显示 Python 版本号。
例如:
Python 3.x.x
具体版本取决于你的安装情况。
如果尚未安装 Python,请从官方 Python 发行版下载适用于你操作系统的当前受支持版本。
为什么需要虚拟环境
你可以把 Gradio 全局安装到电脑上,但对 Python 项目来说,使用虚拟环境通常是更好的习惯。
虚拟环境为项目提供一套相互隔离的 Python 包。
假设一个项目需要某个库的某个版本,而另一个项目需要不同的版本。
把所有依赖都全局安装,迟早会引发版本冲突。
有了虚拟环境,你的 Gradio 项目就能将依赖独立管理。
创建项目目录
为你的项目创建一个文件夹。
例如:
gradio-course
然后进入该文件夹:
cd gradio-course
具体命令取决于你在哪里创建的目录。
创建虚拟环境
可以使用 Python 内置的 venv 模块创建虚拟环境:
python -m venv .venv
在通过 python3 命令运行 Python 的系统上:
python3 -m venv .venv
.venv 文件夹中存放的就是该虚拟环境。
通常不需要手动修改其中的内容。
在 Windows 上激活环境
Windows 下激活命令通常为:
.venv\Scripts\activate
激活后,终端会提示虚拟环境已生效。
在 macOS 或 Linux 上激活环境
macOS 和 Linux 下使用:
source .venv/bin/activate
终端同样会显示环境已生效。
安装 Gradio
环境激活后,执行以下命令安装 Gradio:
pip install gradio
pip 会自动下载 Gradio 及其依赖。
安装完成后,可以验证 Gradio 是否可用。
简单做法是打开 Python 解释器:
python
然后输入:
import gradio
print(gradio.__version__)
如果 import 成功,说明 Gradio 已装好。
用以下命令退出 Python:
exit()
创建第一个项目文件
创建一个名为以下名称的文件:
app.py
这将是我们第一个应用的主 Python 文件。
此时项目目录大致如下:
gradio-course/
.venv/
app.py
如果你用了虚拟环境命令,无需手动创建 .venv,Python 已自动生成。
第一次 Import
打开 app.py,写入:
import gradio as gr
其中 as gr 是给包起了个更短的别名。
这样就不必写:
gradio.Interface(...)
直接写:
gr.Interface(...)
Gradio 文档和示例中都会用到 gr 这个写法。
常见的安装问题
如果终端出现类似以下提示:
'python' is not recognized
或者:
command not found: python
那问题不一定出在 Gradio 上。
可能是你的系统没有正确安装 Python,或者无法通过命令行访问 Python。
同样,如果:
pip install gradio
不起作用,通常可以改用:
python -m pip install gradio
这样能明确让 Python 运行它自带的包管理器。
在某些系统上,更合适的命令可能是:
python3 -m pip install gradio
为什么 python -m pip 有用
假设你装了多个 Python 版本。
你运行:
pip install gradio
但 pip 命令关联的 Python 版本,可能和你运行程序用的那个不是同一个。
改用:
python -m pip install gradio
就能把包安装绑定到 python 所代表的那个解释器上。
这能避免一类相当烦人的依赖问题。
运行你的 Gradio 应用
当 app.py 里写好应用后,就可以在终端里运行它。
例如:
python app.py
Gradio 会启动一个本地服务器。
终端里一般会显示应用运行在哪个地址上。
本地 Gradio 应用通常运行在你自己电脑的一个地址上,比如:
http://127.0.0.1:7860
这里的关键词是本地。
这个阶段,应用只在你自己的机器上运行,互联网上的其他人并不能自动访问它。
本地开发与部署的区别
这个区别在后面会很重要。
当你运行:
python app.py
你是在本地开发。
而当你把应用部署到 Hugging Face Spaces 这类服务上后,根据部署的配置和可见性设置,应用就可以被远程访问了。
暂时不用考虑部署。
现阶段,本地开发正是我们需要的。
你的开发循环
构建 Gradio 应用时,你会反复经历这样一个简单的开发循环:
编写 Python 代码。
运行应用。
打开界面。
测试。
发现可以改进的地方。
按需停止或重新加载应用。
修改代码。
再次测试。
这就是正常的软件开发流程。
别指望第一版就完美。
本书的目标是让你真正理解代码在做什么,这样出问题时,你就大致知道该往哪里排查。