传统业务对接AI-AI编程框架-Rasa的业务应用实战(2)--选定Python环境 安装rasa并初始化工程
此篇接续上一篇 传统业务对接AI-AI编程框架-Rasa的业务应用实战(1)--项目背景即学习初衷
1、Python 环境版本的选择
我主机上默认的Python环境是3.12.3 (我喜欢保持使用最新版本的工具或框架,当初装python时最新的稳定版本就是这个)
但是用这个版本去安装Rasa并不合适,因为最新最稳定版本的Rasa并不支持3.12.3
Rasa 3.6.x 官方推荐的Python环境是 3.8.10
安装完并切换到3.8.10以后,还要把pip更新到最新版本(这一步很重要不能省),更新命令:
python -m pip install --upgrade pip
>>>>> 注意,更新完要重启命令行环境 <<<<<
此处强烈建议通过Python的版本管理工具pyenv来进行工程本地环境python版本的切换。
具体可以参照我这一篇文章:pyenv的常用命令
2、Rasa 版本选用 Rasa 3.6.21 (为什么选择这个版本参考我的这篇初学者选择rasa版本文章)
源可以选用阿里云的,也可以选用官方的(需要网络健全)
#阿里云的rasa源
https://mirrors.aliyun.com/pypi/simple #官方的rasa源
https://pypi.org/simple
3、工程目录里需要开启Python虚拟环境
启动命令行窗口即PowerShell 或者 IDE的终端(如PyCharm的Terminal),切换到工作目录,在工作目录下执行:
python -m venv venv
此步命令的含义详细描述如下:
-
命令:python -m venv venv
-
作用:在当前目录下创建一个名为 venv 的 虚拟环境。(后续虚拟环境还需要激活,见下文)
-
解释:
-
python:调用你系统中安装的 Python 解释器(确保是 Python 3.8-3.10,因为 Rasa 兼容这些版本)。
-
-m venv:告诉 Python 运行 venv 模块(Python 内置的虚拟环境工具)。
-
venv:指定虚拟环境的文件夹名称(这里命名为 venv,你可以改成其他名字,如 myenv)。
-
-
效果:
-
在你的项目目录(rasa-invoice-bot)下生成一个 venv 文件夹,包含一个独立的 Python 环境,包括:
-
独立的 Python 可执行文件。
-
独立的 site-packages 目录,用于安装项目依赖(如 Rasa)。
-
-
虚拟环境隔离了系统全局的 Python 环境,避免不同项目之间的库版本冲突。
-
为什么需要:
-
Rasa 需要特定的依赖(如 tensorflow、spacy),可能与其他项目冲突。
-
虚拟环境确保你的 Rasa 项目使用独立的库版本,不会影响系统或其他项目。
激活刚刚创建的python虚拟环境
Linux: source venv/bin/activate(Windows: venv\Scripts\activate)
含义
-
命令:
-
Linux/Mac:source venv/bin/activate
-
Windows:venv\Scripts\activate
-
-
作用:激活虚拟环境,让你的终端使用 venv 文件夹中的 Python 和依赖,而不是系统全局的 Python。
-
解释:
-
source(Linux/Mac):Linux/Mac 系统中运行脚本的命令,加载 venv/bin/activate 脚本。
-
venv/bin/activate:激活脚本,修改终端的 PATH 环境变量,指向虚拟环境的 Python 和 pip。
-
Windows 替代:Windows 使用 venv\Scripts\activate,直接运行激活脚本(无需 source)。
-
-
效果:
-
激活后,终端提示符前会出现 (venv),表示虚拟环境已启用。
-
运行 python 或 pip 时,会使用 venv 中的 Python 和 pip,而不是系统全局的。
-
示例:
-
激活前:pip list 显示系统全局的库。
-
激活后:pip list 只显示虚拟环境中的库(初始为空或仅少数默认库)。
-
-
-
为什么需要:
-
确保 pip install rasa 安装到虚拟环境中,而不是全局 Python。
-
避免污染系统环境,保持项目依赖干净。
-
四、安装并初始化Rasa
请按以下步骤操作(以powershell终端为例):
-
确认虚拟环境:
cd D:\private-projects\Ai-for-Biz .\venv\Scripts\activate python --version pip --version
-
安装Rasa 3.6.21:
pip install rasa==3.6.21 -i https://mirrors.aliyun.com/pypi/simple rasa --version
-
初始化项目:
rasa init dir
安装过程中有可能会遇到报错,比如下面这种,遇到什么错就解决什么错就好了。
Collecting psycopg2-binary<2.10.0,>=2.8.2 (from rasa==3.6.21) Downloading https://mirrors.aliyun.com/pypi/packages/cb/0e/bdc8274dc0585090b4e3432267d7be4dfbfd8971c0fa59167c711105a6bf/psycopg2-binary-2.9.10.tar.gz (385 kB) Installing build dependencies ... done Getting requirements to build wheel ... error error: subprocess-exited-with-error × Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> [21 lines of output] running egg_info writing psycopg2_binary.egg-info\PKG-INFO writing dependency_links to psycopg2_binary.egg-info\dependency_links.txt writing top-level names to psycopg2_binary.egg-info\top_level.txt
我遇到的就只有上面这1处错误,解决办法是:安装psycopg2-binary这个包。命令如下:
pip install psycopg2-binary==2.9.9 -i https://mirrors.aliyun.com/pypi/simple
解决完安装好并初始化以后,rasa的搭建工作就大功告成了。
可以测试下了:(下图命令是启动rasa的壳程序,即命令行交互模型的运行)
rasa shell
你可以与AI简单对话了:
2025-06-03 16:58:39 INFO root - Rasa server is up and running. Bot loaded. Type a message and press enter (use '/stop' to exit):
Your input -> Hello
Hey! How are you?
Your input -> Fine
...
Your input ->
OK 到这一步本章环节就顺利结束。