此篇接續上一篇?傳統業務對接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? 到這一步本章環節就順利結束。?
備注:
在啟動殼程序的時候,所有的提示選擇直接回車選擇默認就可以。如下: