@@ -16,7 +16,7 @@ FIT for Python 是基于 FIT Framework 的 Python 运行时与插件开发套件
1616- ` plugin/ ` :本地插件工程根目录,使用 CLI 生成与构建。
1717- ` conf/ ` :框架及插件相关配置。
1818- ` bootstrap/ ` :运行时启动与配置加载的底层实现。
19- - ` requirements.txt ` :运行时依赖列表 。
19+ - ` pyproject.toml ` :项目配置与运行时依赖列表 。
2020- ` fit_common_struct/ ` :框架通用数据结构与工具。
2121- ` fit_flowable/ ` :流程/可流式组件相关实现。
2222- ` fit_py_nacos_registry/ ` :Nacos 注册中心适配。
@@ -44,56 +44,68 @@ FIT for Python 是基于 FIT Framework 的 Python 运行时与插件开发套件
4444项目已配置 ` .python-version ` 文件指定版本。如使用 pyenv,会自动切换到对应版本。
4545
4646** 版本兼容性说明:**
47- - 依赖包(特别是 numpy= =1.25.2)已针对 Python 3.9 进行测试
47+ - 依赖包(特别是 numpy> =1.25.2)已针对 Python 3.9 进行测试
4848- 更高版本(如 3.14+)可能存在兼容性问题
49- - 升级 Python 版本时,请同步更新 ` requirements.txt ` 中的依赖版本
49+ - 升级 Python 版本时,请同步更新 ` pyproject.toml ` 中的依赖版本
5050
5151### 安装依赖
5252
53- 需要安装 ` requirements.txt ` 中的第三方依赖,当前依赖如下 :
53+ 本项目使用 ** uv ** 作为依赖管理工具,提供更快的依赖解析和安装速度。当前依赖如下(定义在 ` pyproject.toml ` 中) :
5454
55- ``` python
56- numpy== 1.25 .2
57- PyYAML == 6.0 .1
58- requests== 2.32 .4
59- tornado== 6.5 .0
55+ ``` toml
56+ numpy>= 1.25.2,<2.0.0
57+ pyyaml>= 6.0.1,<7.0.0
58+ requests>= 2.32.4,<3.0.0
59+ tornado>= 6.5.0,<7.0 .0
6060```
6161
62- 推荐在虚拟环境中安装依赖:
62+ #### 安装 uv
63+
64+ 如果还没有安装 uv,请先安装:
65+
66+ ``` bash
67+ # macOS
68+ brew install uv
69+
70+ # Linux
71+ curl -LsSf https://astral.sh/uv/install.sh | sh
72+
73+ # Windows
74+ powershell -c " irm https://astral.sh/uv/install.ps1 | iex"
75+
76+ # 或使用 pip 安装
77+ pip install uv
78+ ```
79+
80+ #### 使用 uv 安装依赖
81+
82+ 推荐使用 uv 管理虚拟环境和依赖:
83+
6384``` bash
64- # 方法 1:使用 python3.9(推荐)
65- python3.9 -m venv .venv # 创建虚拟环境
66- source .venv/bin/activate # Windows 可执行 .\.venv\Scripts\activate
67- pip install -r requirements.txt
68-
69- # 方法 2:使用 pyenv(自动读取 .python-version)
70- pyenv install 3.9.25 # 首次使用需安装
71- eval " $( pyenv init -) "
72- python -m venv .venv
73- source .venv/bin/activate
74- pip install -r requirements.txt
75-
76- # 方法 3:使用系统默认 python3
77- python3 -m venv .venv # 确保 python3 版本 >= 3.9
78- source .venv/bin/activate
79- pip install -r requirements.txt
85+ # 使用 uv sync
86+ # uv 会自动创建虚拟环境并安装所有依赖
87+ uv sync
8088```
8189
82- ** 注意:** 虚拟环境激活后,` python ` 命令即可直接使用,无需输入 ` python3 ` 。
90+ ** 注意:**
91+ - uv 会自动管理虚拟环境,默认创建在 ` .venv ` 目录
92+ - 使用 ` uv sync ` 时会自动激活虚拟环境并安装依赖
93+ - 虚拟环境激活后,` python ` 命令即可直接使用
8394
8495## 快速开始
8596
86971 . 进入工程根目录:` cd framework/fit/python ` 。
87- 2 . 创建并激活虚拟环境, 安装依赖:同上所示 。
98+ 2 . 安装依赖:执行 ` uv sync ` 自动创建虚拟环境并安装所有依赖 。
88993 . 按需修改 ` conf/application.yml ` 中的 ` registry-center ` 和端口配置。
89- 4 . 启动:` python -m fitframework ` ,观察终端或 ` fit_framework.log ` 是否有错误。
100+ 4 . 启动:` uv run python -m fitframework` ,观察终端或 ` fit_framework.log ` 是否有错误。
901015 . 健康检查:按下文 curl 示例确认返回 ` OK ` 。
91102
92103## 启动框架
93104
94105在项目根目录执行:
95106``` bash
96- python -m fitframework
107+ # 使用 uv 运行
108+ uv run python -m fitframework
97109```
98110默认会启动本地服务并按配置加载插件;进程前台运行,终端保持开启即可。
99111
@@ -115,12 +127,12 @@ curl --request GET \
115127
1161281 . 初始化插件工程(在项目根目录):
117129 ``` bash
118- python -m fit_cli init your_plugin_name
130+ uv run python -m fit_cli init your_plugin_name
119131 ```
1201322 . 开发完成后构建与打包:
121133 ``` bash
122- python -m fit_cli build your_plugin_name
123- python -m fit_cli package your_plugin_name
134+ uv run python -m fit_cli build your_plugin_name
135+ uv run python -m fit_cli package your_plugin_name
124136 ```
125137 生成的产物位于 ` plugin/your_plugin_name/build/ ` 。
126138
@@ -130,5 +142,6 @@ curl --request GET \
130142
131143- 启动报端口占用:调整 ` conf/fit_startup.yml ` 或 ` application.yml ` 中的端口后重启。
132144- 注册中心连通性:确认 ` registry-center.addresses ` 可达,必要时先用 curl/ping 验证。
133- - 重新安装依赖:在已激活虚拟环境中执行 ` pip install -r requirements.txt --force-reinstall ` 。
145+ - 重新安装依赖:执行 ` uv sync --reinstall ` 重新安装所有依赖。
146+ - 清理并重建环境:删除 ` .venv ` 目录后重新执行 ` uv sync ` 。
134147- 停止服务:直接中断前台进程(Ctrl+C),或关闭终端会话。
0 commit comments