CFFI - ABI模式与API模式

本文详细介绍了CFFI库在四种模式下的使用方法,包括ABI和API级别的访问方式,以及in-line与out-line准备的区别。重点展示了如何在Python中调用C库,包括结构/数组操作、使用C标准库和API模式调用C源代码。同时讨论了不同模式的优缺点,并提供了实例代码和注意事项。

CFFI可以在四种模式中使用:“ABI”和“API”级别,每种模式都有 in-line 或 out- line 准备(或编译)

ABI模式从二进制级别访问库,而更快的API模式通过C编译器访问库

在 in-line 模式中,每次导入Python代码时都会设置所有内容

在 out- line 模式中,有一个单独的准备步骤(可能还有C编译),它生成一个模块,主程序可以导入该模块

| 版权声明:itisyang,未经博主允许不得转载。

简单例子(ABI, in-line)

>>> from cffi import FFI
>>> ffi = FFI()
>>> ffi.cdef("""
...     int printf(const char *format, ...);   // copy-pasted from the man page
... """)
>>> C = ffi.dlopen(None)                     # loads the entire C namespace
>>> arg = ffi.new("char[]", "world")         # equivalent to C code: char arg[] = "world";
>>> C.printf("hi there, %s.\n", arg)         # call printf
hi there, world.
17                                           # this is the return value
>>>
复制代码

注意,在Python 3中,需要将byte strings传递给char *参数,在上面的示例中,它将是b“world”和b“hi there, %s!\n”,通常也可以这样 somestring.encode(myencoding)

Windows上的Python 3: ffi.dlopen(None)无法工作。这个问题很混乱,而且无法真正解决。如果尝试从系统上存在的特定DLL调用函数,则不会出现问题: 使用ffi.dlopen(“path.dll”)。

这个例子不调用任何C编译器。它在所谓的ABI模式下工作,这意味着如果您调用某个函数或访问某个在cdef()中稍有错误声明的结构的某些字段,它就会崩溃。

如果使用C编译器安装模块是一个选项,那么强烈建议使用API模式。(它也更快。)

结构/数组的例子(in-line)

from cffi import FFI
ffi = FFI()
ffi.cdef("""
    typedef struct {
        unsigned char r, g, b;
    } pixel_t;
""")
image = ffi.new("pixel_t[]", 800*600)

f = open('data', 'rb')     # binary mode -- important
f.readinto(ffi.buffer(image))
f.close()

image[100].r = 255
image[100].g = 192
image[100].b = 128

f = open('data', 'wb')
f.write(ffi.buffer(image))
f.close()
复制代码

您可以调用ffi.new(“pixel_t[600][800]”)获得一个二维数组。

API模式,调用C标准库

# file "example_build.py"

# Note: we instantiate the same 'cffi.FFI' class as in the previous
# example, but call the result 'ffibuilder' now instead of 'ffi';
# this is to avoid confusion with the other 'ffi' object you get below

from cffi import FFI
ffibuilder = FFI()

ffibuilder.set_source("_example",
   r""" // passed to the real C compiler,
        // contains implementation of things declared in cdef()
        #include <sys/types.h>
        #include <pwd.h>

        // We can also define custom wrappers or other functions
        // here (this is an example only):
        static struct passwd *get_pw_for_root(void) {
            return getpwuid(0);
        }
    """,
    libraries=[])   # or a list of libraries to link with
    # (more arguments like setup.py's Extension class:
    # include_dirs=[..], extra_objects=[..], and so on)

ffibuilder.cdef("""
    // declarations that are shared between Python and C
    struct passwd {
        char *pw_name;
        ...;     // literally dot-dot-dot
    };
    struct passwd *getpwuid(int uid);     // defined in <pwd.h>
    struct passwd *get_pw_for_root(void); // defined in set_source()
""")

if __name__ == "__main__":
    ffibuilder.compile(verbose=True)
复制代码

您需要运行example_build.py脚本一次生成“source code”到文件_example.c中。并将其编译为一个常规的c扩展模块。(CFFI根据set_source()的第二个参数是否为None,选择生成Python或C模块。)

这一步需要一个C编译器。它生成一个名为 _example.so 或 _example.pyd 的文件。如果需要,它可以像其他扩展模块一样以预编译的形式发布。

在主程序中使用:

from _example import ffi, lib

p = lib.getpwuid(0)
assert ffi.string(p.pw_name) == b'root'
p = lib.get_pw_for_root()
assert ffi.string(p.pw_name) == b'root'
复制代码

注意,passwd 结构体是独立精确的C布局结构(它是“API级别”,而不是“ABI级别”),需要一个C编译器才能运行 example_build.py 。

还要注意,在运行时,API模式比ABI模式快。

把这个模块使用Setuptools集成到setup.py中:

from setuptools import setup

setup(
    ...
    setup_requires=["cffi>=1.0.0"],
    cffi_modules=["example_build.py:ffibuilder"],
    install_requires=["cffi>=1.0.0"],
)
复制代码

API模式,调用C源代码而不是编译库

如果您想调用一些没有预编译的库,但是有C源代码的库,那么最简单的解决方案是创建一个单独的扩展模块,该模块由这个库的C源代码和额外的CFFI包装器编译而成。例如,假设您从文件 pi.c 和 pi.h 开始:

/* filename: pi.c*/
# include <stdlib.h>
# include <math.h>

/* Returns a very crude approximation of Pi
   given a int: a number of iteration */
float pi_approx(int n){

  double i,x,y,sum=0;

  for(i=0;i<n;i++){

    x=rand();
    y=rand();

    if (sqrt(x*x+y*y) < sqrt((double)RAND_MAX*RAND_MAX))
      sum++; }

  return 4*(float)sum/(float)n; }
复制代码
/* filename: pi.h*/
float pi_approx(int n);
复制代码

创建一个名为 pi_extension_build.py 的脚本,构建C扩展:

from cffi import FFI
ffibuilder = FFI()

ffibuilder.cdef("float pi_approx(int n);")

ffibuilder.set_source("_pi",  # name of the output C extension
"""
    #include "pi.h"',
""",
    sources=['pi.c'],   # includes pi.c as additional sources
    libraries=['m'])    # on Unix, link with the math library

if __name__ == "__main__":
    ffibuilder.compile(verbose=True)
复制代码

构建扩展:

python pi_extension_build.py
复制代码

可以发现,在工作目录中,生成的输出文件: _pi.c, _pi.o 和编译后的C扩展(例如Linux上生成 _pi.so )。它可以从Python调用:

from _pi.lib import pi_approx

approx = pi_approx(10)
assert str(pi_approximation).startswith("3.")

approx = pi_approx(10000)
assert str(approx).startswith("3.1")
复制代码

Out-of-line, ABI level

out-of-line ABI 模式是 常规(API)out-of-line模式和in-line ABI 的混合,优点是不需要C编译器),缺点是更容易崩溃。

这种混合模式可以大大减少导入时间,因为解析大型C头文件很慢。它还允许您在构建时进行更详细的检查,而不必担心性能。

# file "simple_example_build.py"

from cffi import FFI

ffibuilder = FFI()
ffibuilder.set_source("_simple_example", None)
ffibuilder.cdef("""
    int printf(const char *format, ...);
""")

if __name__ == "__main__":
    ffibuilder.compile(verbose=True)
复制代码

运行一次会产生_simple_example.py,你的主程序只导入生成的模块,而不再需要 simple_example_build.py

from _simple_example import ffi

lib = ffi.dlopen(None)      # Unix: open the standard C library
#import ctypes.util         # or, try this on Windows:
#lib = ffi.dlopen(ctypes.util.find_library("c"))

lib.printf(b"hi there, number %d\n", ffi.cast("int", 2))
复制代码

注意,ffi.dlopen()不会调用任何额外的方法来定位库,这意味着 ffi.dlopen(“libfoo.so”)是可以的,但是ffi.dlopen(“foo”)不行。 在后一种情况下,您可以将其替换为ffi.dlopen(ctypes.util.find_library(“foo”))。并且,None 只能在Unix打开C标准库。

为了便于分发,你可以把它静态地包含在你的项目的源文件中,使用Setuptools在setup.py这样编写:

from setuptools import setup

setup(
    ...
    setup_requires=["cffi>=1.0.0"],
    cffi_modules=["simple_example_build.py:ffibuilder"],
    install_requires=["cffi>=1.0.0"],
)
复制代码

ABI 与 API

在二进制级别 (“ABI”) 访问C库充满了问题,尤其是在非 windows 平台上。

ABI 级别最直接的缺点是,调用函数需要经过非常通用的 libffi 库,它很慢(而且总是不能在非标准平台上完美通过测试)。API模式编译一个直接调用目标函数的 CPython C 包装器。相对而言,它的速度要快得多(而且运行得比 libffi 更好)。

选择API模式的更基本原因是,C库通常与C编译器一起使用。你不应该做诸如猜测结构中字段的位置之类的事情。上面的“真实示例”展示了CFFI如何在底层使用C编译器:示例使用 set_source(..., "C source...") 而不是 dlopen()。当使用这种方法时,我们有一个优势,我们可以在 cdef() 的不同地方使用字面上的 “……” ,缺失的信息将在C编译器的帮助下完成。CFFI 将把它转换为单个C源文件,其中包含未修改的 “C source” 部分,后面跟随着一些特殊C代码和 cdef() 派生的声明。当编译这个C文件时,生成的C扩展模块将包含我们需要的所有信息。就像往常一样,如果我们错误地声明了某个函数的签名,C编译器将给出警告或错误。

注意,set_source()中的 “C source” 部分可以包含任意的C代码。您可以使用它来声明一些用c语言编写的辅助函数。(你可以在“C source”部分,使用static C关键字)

例如,这可以用来将宏包装成更标准的C函数。额外的C层在其他方面也很有用,比如调用函数,这些函数需要一些复杂的参数结构,您更喜欢在C中构建而不是在Python中。(另一方面,如果您需要调用 “function-like” 宏,那么您可以直接在cdef()中声明它们,就好像它们是函数一样。)

转载于:https://juejin.im/post/5b8fd8d86fb9a05d232837b6

(base) PS D:\qwen-agent> conda create -n qwen-agent python=3.10 3 channel Terms of Service accepted WARNING: A conda environment already exists at 'C:\Users\k\.conda\envs\qwen-agent' Remove existing environment? This will remove ALL directories contained within this specified prefix directory, including any other conda environments. (y/[n])? y Channels: - defaults Platform: win-64 Collecting package metadata (repodata.json): done Solving environment: done ==> WARNING: A newer version of conda exists. <== current version: 25.5.1 latest version: 25.7.0 Please update conda by running $ conda update -n base -c defaults conda ## Package Plan ## environment location: C:\Users\k\.conda\envs\qwen-agent added / updated specs: - python=3.10 done # # To activate this environment, use # # $ conda activate qwen-agent # # To deactivate an active environment, use # # $ conda deactivate (base) PS D:\qwen-agent> conda activate qwen-agent (qwen-agent) PS D:\qwen-agent> pip install -U "qwen-agent[rag,code_interpreter,python_executor,gui]" Collecting qwen-agent[code_interpreter,gui,python_executor,rag] Downloading qwen_agent-0.0.29-py3-none-any.whl.metadata (16 kB) Collecting dashscope>=1.11.0 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading dashscope-1.24.4-py3-none-any.whl.metadata (7.1 kB) Collecting eval_type_backport (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading eval_type_backport-0.2.2-py3-none-any.whl.metadata (2.2 kB) Collecting json5 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading json5-0.12.1-py3-none-any.whl.metadata (36 kB) Collecting jsonlines (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jsonlines-4.0.0-py3-none-any.whl.metadata (1.6 kB) Collecting jsonschema (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jsonschema-4.25.1-py3-none-any.whl.metadata (7.6 kB) Collecting openai (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading openai-1.106.1-py3-none-any.whl.metadata (29 kB) Collecting pydantic>=2.3.0 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pydantic-2.11.7-py3-none-any.whl.metadata (67 kB) Collecting requests (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading requests-2.32.5-py3-none-any.whl.metadata (4.9 kB) Collecting tiktoken (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading tiktoken-0.11.0-cp310-cp310-win_amd64.whl.metadata (6.9 kB) Collecting charset-normalizer (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading charset_normalizer-3.4.3-cp310-cp310-win_amd64.whl.metadata (37 kB) Collecting rank_bm25 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading rank_bm25-0.2.2-py3-none-any.whl.metadata (3.2 kB) Collecting jieba (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jieba-0.42.1.tar.gz (19.2 MB) ━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/19.2 MB 18.0 kB/s eta 0:15:52 ERROR: Operation cancelled by user (qwen-agent) PS D:\qwen-agent> pip install -U "qwen-agent[rag,code_interpreter,python_executor,gui]" Collecting qwen-agent[code_interpreter,gui,python_executor,rag] Using cached qwen_agent-0.0.29-py3-none-any.whl.metadata (16 kB) Collecting dashscope>=1.11.0 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached dashscope-1.24.4-py3-none-any.whl.metadata (7.1 kB) Collecting eval_type_backport (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached eval_type_backport-0.2.2-py3-none-any.whl.metadata (2.2 kB) Collecting json5 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached json5-0.12.1-py3-none-any.whl.metadata (36 kB) Collecting jsonlines (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached jsonlines-4.0.0-py3-none-any.whl.metadata (1.6 kB) Collecting jsonschema (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached jsonschema-4.25.1-py3-none-any.whl.metadata (7.6 kB) Collecting openai (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached openai-1.106.1-py3-none-any.whl.metadata (29 kB) Collecting pydantic>=2.3.0 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached pydantic-2.11.7-py3-none-any.whl.metadata (67 kB) Collecting requests (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached requests-2.32.5-py3-none-any.whl.metadata (4.9 kB) Collecting tiktoken (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached tiktoken-0.11.0-cp310-cp310-win_amd64.whl.metadata (6.9 kB) Collecting charset-normalizer (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached charset_normalizer-3.4.3-cp310-cp310-win_amd64.whl.metadata (37 kB) Collecting rank_bm25 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Using cached rank_bm25-0.2.2-py3-none-any.whl.metadata (3.2 kB) Collecting jieba (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jieba-0.42.1.tar.gz (19.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.2/19.2 MB 19.6 MB/s 0:00:01 Preparing metadata (setup.py) ... done Collecting snowballstemmer (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading snowballstemmer-3.0.1-py3-none-any.whl.metadata (7.9 kB) Collecting beautifulsoup4 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading beautifulsoup4-4.13.5-py3-none-any.whl.metadata (3.8 kB) Collecting pdfminer.six (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pdfminer_six-20250506-py3-none-any.whl.metadata (4.2 kB) Collecting pdfplumber (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pdfplumber-0.11.7-py3-none-any.whl.metadata (42 kB) Collecting python-docx (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading python_docx-1.2.0-py3-none-any.whl.metadata (2.0 kB) Collecting python-pptx (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading python_pptx-1.0.2-py3-none-any.whl.metadata (2.5 kB) Collecting pandas (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pandas-2.3.2-cp310-cp310-win_amd64.whl.metadata (19 kB) Collecting tabulate (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading tabulate-0.9.0-py3-none-any.whl.metadata (34 kB) Collecting pydantic>=2.3.0 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pydantic-2.9.2-py3-none-any.whl.metadata (149 kB) Collecting pydantic-core==2.23.4 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pydantic_core-2.23.4-cp310-none-win_amd64.whl.metadata (6.7 kB) Collecting gradio==5.23.1 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading gradio-5.23.1-py3-none-any.whl.metadata (16 kB) Collecting gradio-client==1.8.0 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading gradio_client-1.8.0-py3-none-any.whl.metadata (7.1 kB) Collecting modelscope_studio==1.1.7 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading modelscope_studio-1.1.7-py3-none-any.whl.metadata (4.1 kB) Collecting pebble (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading Pebble-5.1.3-py3-none-any.whl.metadata (3.8 kB) Collecting multiprocess (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading multiprocess-0.70.18-py310-none-any.whl.metadata (7.5 kB) Collecting timeout_decorator (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading timeout-decorator-0.5.0.tar.gz (4.8 kB) Preparing metadata (setup.py) ... done Collecting python-dateutil (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB) Collecting sympy (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading sympy-1.14.0-py3-none-any.whl.metadata (12 kB) Collecting numpy (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading numpy-2.2.6-cp310-cp310-win_amd64.whl.metadata (60 kB) Collecting scipy (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading scipy-1.15.3-cp310-cp310-win_amd64.whl.metadata (60 kB) Collecting anyio>=3.7.1 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading anyio-4.10.0-py3-none-any.whl.metadata (4.0 kB) Collecting fastapi>=0.103.1 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading fastapi-0.116.1-py3-none-any.whl.metadata (28 kB) Collecting jupyter>=1.0.0 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyter-1.1.1-py2.py3-none-any.whl.metadata (2.0 kB) Collecting matplotlib (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading matplotlib-3.10.6-cp310-cp310-win_amd64.whl.metadata (11 kB) Collecting pillow (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pillow-11.3.0-cp310-cp310-win_amd64.whl.metadata (9.2 kB) Collecting seaborn (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading seaborn-0.13.2-py3-none-any.whl.metadata (5.4 kB) Collecting uvicorn>=0.23.2 (from qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading uvicorn-0.35.0-py3-none-any.whl.metadata (6.5 kB) Collecting aiofiles<24.0,>=22.0 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading aiofiles-23.2.1-py3-none-any.whl.metadata (9.7 kB) Collecting ffmpy (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading ffmpy-0.6.1-py3-none-any.whl.metadata (2.9 kB) Collecting groovy~=0.1 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading groovy-0.1.2-py3-none-any.whl.metadata (6.1 kB) Collecting httpx>=0.24.1 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading httpx-0.28.1-py3-none-any.whl.metadata (7.1 kB) Collecting huggingface-hub>=0.28.1 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading huggingface_hub-0.34.4-py3-none-any.whl.metadata (14 kB) Collecting jinja2<4.0 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB) Collecting markupsafe<4.0,>=2.0 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading MarkupSafe-3.0.2-cp310-cp310-win_amd64.whl.metadata (4.1 kB) Collecting orjson~=3.0 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading orjson-3.11.3-cp310-cp310-win_amd64.whl.metadata (43 kB) Collecting packaging (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading packaging-25.0-py3-none-any.whl.metadata (3.3 kB) Collecting pydub (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pydub-0.25.1-py2.py3-none-any.whl.metadata (1.4 kB) Collecting python-multipart>=0.0.18 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading python_multipart-0.0.20-py3-none-any.whl.metadata (1.8 kB) Collecting pyyaml<7.0,>=5.0 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading PyYAML-6.0.2-cp310-cp310-win_amd64.whl.metadata (2.1 kB) Collecting ruff>=0.9.3 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading ruff-0.12.12-py3-none-win_amd64.whl.metadata (26 kB) Collecting safehttpx<0.2.0,>=0.1.6 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading safehttpx-0.1.6-py3-none-any.whl.metadata (4.2 kB) Collecting semantic-version~=2.0 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading semantic_version-2.10.0-py2.py3-none-any.whl.metadata (9.7 kB) Collecting starlette<1.0,>=0.40.0 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading starlette-0.47.3-py3-none-any.whl.metadata (6.2 kB) Collecting tomlkit<0.14.0,>=0.12.0 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading tomlkit-0.13.3-py3-none-any.whl.metadata (2.8 kB) Collecting typer<1.0,>=0.12 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading typer-0.17.4-py3-none-any.whl.metadata (15 kB) Collecting typing-extensions~=4.0 (from gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading typing_extensions-4.15.0-py3-none-any.whl.metadata (3.3 kB) Collecting fsspec (from gradio-client==1.8.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading fsspec-2025.9.0-py3-none-any.whl.metadata (10 kB) Collecting websockets<16.0,>=10.0 (from gradio-client==1.8.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading websockets-15.0.1-cp310-cp310-win_amd64.whl.metadata (7.0 kB) Collecting annotated-types>=0.6.0 (from pydantic>=2.3.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading annotated_types-0.7.0-py3-none-any.whl.metadata (15 kB) Collecting exceptiongroup>=1.0.2 (from anyio>=3.7.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading exceptiongroup-1.3.0-py3-none-any.whl.metadata (6.7 kB) Collecting idna>=2.8 (from anyio>=3.7.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading idna-3.10-py3-none-any.whl.metadata (10 kB) Collecting sniffio>=1.1 (from anyio>=3.7.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading sniffio-1.3.1-py3-none-any.whl.metadata (3.9 kB) Collecting pytz>=2020.1 (from pandas->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pytz-2025.2-py2.py3-none-any.whl.metadata (22 kB) Collecting tzdata>=2022.7 (from pandas->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading tzdata-2025.2-py2.py3-none-any.whl.metadata (1.4 kB) Collecting click>=8.0.0 (from typer<1.0,>=0.12->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading click-8.2.1-py3-none-any.whl.metadata (2.5 kB) Collecting shellingham>=1.3.0 (from typer<1.0,>=0.12->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB) Collecting rich>=10.11.0 (from typer<1.0,>=0.12->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading rich-14.1.0-py3-none-any.whl.metadata (18 kB) Collecting colorama (from click>=8.0.0->typer<1.0,>=0.12->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB) Collecting aiohttp (from dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading aiohttp-3.12.15-cp310-cp310-win_amd64.whl.metadata (7.9 kB) Collecting websocket-client (from dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading websocket_client-1.8.0-py3-none-any.whl.metadata (8.0 kB) Collecting cryptography (from dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading cryptography-45.0.7-cp37-abi3-win_amd64.whl.metadata (5.7 kB) Collecting certifi (from dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading certifi-2025.8.3-py3-none-any.whl.metadata (2.4 kB) Collecting httpcore==1.* (from httpx>=0.24.1->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading httpcore-1.0.9-py3-none-any.whl.metadata (21 kB) Collecting h11>=0.16 (from httpcore==1.*->httpx>=0.24.1->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading h11-0.16.0-py3-none-any.whl.metadata (8.3 kB) Collecting filelock (from huggingface-hub>=0.28.1->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading filelock-3.19.1-py3-none-any.whl.metadata (2.1 kB) Collecting tqdm>=4.42.1 (from huggingface-hub>=0.28.1->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading tqdm-4.67.1-py3-none-any.whl.metadata (57 kB) Collecting notebook (from jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading notebook-7.4.5-py3-none-any.whl.metadata (10 kB) Collecting jupyter-console (from jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyter_console-6.6.3-py3-none-any.whl.metadata (5.8 kB) Collecting nbconvert (from jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading nbconvert-7.16.6-py3-none-any.whl.metadata (8.5 kB) Collecting ipykernel (from jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading ipykernel-6.30.1-py3-none-any.whl.metadata (6.2 kB) Collecting ipywidgets (from jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading ipywidgets-8.1.7-py3-none-any.whl.metadata (2.4 kB) Collecting jupyterlab (from jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyterlab-4.4.7-py3-none-any.whl.metadata (16 kB) Collecting six>=1.5 (from python-dateutil->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB) Collecting markdown-it-py>=2.2.0 (from rich>=10.11.0->typer<1.0,>=0.12->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading markdown_it_py-4.0.0-py3-none-any.whl.metadata (7.3 kB) Collecting pygments<3.0.0,>=2.13.0 (from rich>=10.11.0->typer<1.0,>=0.12->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pygments-2.19.2-py3-none-any.whl.metadata (2.5 kB) Collecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=10.11.0->typer<1.0,>=0.12->gradio==5.23.1->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB) Collecting aiohappyeyeballs>=2.5.0 (from aiohttp->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading aiohappyeyeballs-2.6.1-py3-none-any.whl.metadata (5.9 kB) Collecting aiosignal>=1.4.0 (from aiohttp->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading aiosignal-1.4.0-py3-none-any.whl.metadata (3.7 kB) Collecting async-timeout<6.0,>=4.0 (from aiohttp->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading async_timeout-5.0.1-py3-none-any.whl.metadata (5.1 kB) Collecting attrs>=17.3.0 (from aiohttp->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading attrs-25.3.0-py3-none-any.whl.metadata (10 kB) Collecting frozenlist>=1.1.1 (from aiohttp->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading frozenlist-1.7.0-cp310-cp310-win_amd64.whl.metadata (19 kB) Collecting multidict<7.0,>=4.5 (from aiohttp->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading multidict-6.6.4-cp310-cp310-win_amd64.whl.metadata (5.4 kB) Collecting propcache>=0.2.0 (from aiohttp->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading propcache-0.3.2-cp310-cp310-win_amd64.whl.metadata (12 kB) Collecting yarl<2.0,>=1.17.0 (from aiohttp->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading yarl-1.20.1-cp310-cp310-win_amd64.whl.metadata (76 kB) Collecting soupsieve>1.2 (from beautifulsoup4->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading soupsieve-2.8-py3-none-any.whl.metadata (4.6 kB) Collecting cffi>=1.14 (from cryptography->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading cffi-1.17.1-cp310-cp310-win_amd64.whl.metadata (1.6 kB) Collecting pycparser (from cffi>=1.14->cryptography->dashscope>=1.11.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pycparser-2.22-py3-none-any.whl.metadata (943 bytes) Collecting comm>=0.1.1 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading comm-0.2.3-py3-none-any.whl.metadata (3.7 kB) Collecting debugpy>=1.6.5 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading debugpy-1.8.16-cp310-cp310-win_amd64.whl.metadata (1.4 kB) Collecting ipython>=7.23.1 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading ipython-8.37.0-py3-none-any.whl.metadata (5.1 kB) Collecting jupyter-client>=8.0.0 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyter_client-8.6.3-py3-none-any.whl.metadata (8.3 kB) Collecting jupyter-core!=5.0.*,>=4.12 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyter_core-5.8.1-py3-none-any.whl.metadata (1.6 kB) Collecting matplotlib-inline>=0.1 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading matplotlib_inline-0.1.7-py3-none-any.whl.metadata (3.9 kB) Collecting nest-asyncio>=1.4 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading nest_asyncio-1.6.0-py3-none-any.whl.metadata (2.8 kB) Collecting psutil>=5.7 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading psutil-7.0.0-cp37-abi3-win_amd64.whl.metadata (23 kB) Collecting pyzmq>=25 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pyzmq-27.0.2-cp310-cp310-win_amd64.whl.metadata (6.0 kB) Collecting tornado>=6.2 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading tornado-6.5.2-cp39-abi3-win_amd64.whl.metadata (2.9 kB) Collecting traitlets>=5.4.0 (from ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading traitlets-5.14.3-py3-none-any.whl.metadata (10 kB) Collecting decorator (from ipython>=7.23.1->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading decorator-5.2.1-py3-none-any.whl.metadata (3.9 kB) Collecting jedi>=0.16 (from ipython>=7.23.1->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jedi-0.19.2-py2.py3-none-any.whl.metadata (22 kB) Collecting prompt_toolkit<3.1.0,>=3.0.41 (from ipython>=7.23.1->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading prompt_toolkit-3.0.52-py3-none-any.whl.metadata (6.4 kB) Collecting stack_data (from ipython>=7.23.1->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading stack_data-0.6.3-py3-none-any.whl.metadata (18 kB) Collecting wcwidth (from prompt_toolkit<3.1.0,>=3.0.41->ipython>=7.23.1->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading wcwidth-0.2.13-py2.py3-none-any.whl.metadata (14 kB) Collecting parso<0.9.0,>=0.8.4 (from jedi>=0.16->ipython>=7.23.1->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading parso-0.8.5-py2.py3-none-any.whl.metadata (8.3 kB) Collecting platformdirs>=2.5 (from jupyter-core!=5.0.*,>=4.12->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading platformdirs-4.4.0-py3-none-any.whl.metadata (12 kB) Collecting pywin32>=300 (from jupyter-core!=5.0.*,>=4.12->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pywin32-311-cp310-cp310-win_amd64.whl.metadata (10 kB) Collecting widgetsnbextension~=4.0.14 (from ipywidgets->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading widgetsnbextension-4.0.14-py3-none-any.whl.metadata (1.6 kB) Collecting jupyterlab_widgets~=3.0.15 (from ipywidgets->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyterlab_widgets-3.0.15-py3-none-any.whl.metadata (20 kB) Collecting jsonschema-specifications>=2023.03.6 (from jsonschema->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jsonschema_specifications-2025.9.1-py3-none-any.whl.metadata (2.9 kB) Collecting referencing>=0.28.4 (from jsonschema->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading referencing-0.36.2-py3-none-any.whl.metadata (2.8 kB) Collecting rpds-py>=0.7.1 (from jsonschema->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading rpds_py-0.27.1-cp310-cp310-win_amd64.whl.metadata (4.3 kB) Collecting async-lru>=1.0.0 (from jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading async_lru-2.0.5-py3-none-any.whl.metadata (4.5 kB) Collecting jupyter-lsp>=2.0.0 (from jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyter_lsp-2.3.0-py3-none-any.whl.metadata (1.8 kB) Collecting jupyter-server<3,>=2.4.0 (from jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyter_server-2.17.0-py3-none-any.whl.metadata (8.5 kB) Collecting jupyterlab-server<3,>=2.27.1 (from jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyterlab_server-2.27.3-py3-none-any.whl.metadata (5.9 kB) Collecting notebook-shim>=0.2 (from jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading notebook_shim-0.2.4-py3-none-any.whl.metadata (4.0 kB) Requirement already satisfied: setuptools>=41.1.0 in c:\users\k\.conda\envs\qwen-agent\lib\site-packages (from jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) (78.1.1) Collecting tomli>=1.2.2 (from jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading tomli-2.2.1-py3-none-any.whl.metadata (10 kB) Collecting argon2-cffi>=21.1 (from jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading argon2_cffi-25.1.0-py3-none-any.whl.metadata (4.1 kB) Collecting jupyter-events>=0.11.0 (from jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyter_events-0.12.0-py3-none-any.whl.metadata (5.8 kB) Collecting jupyter-server-terminals>=0.4.4 (from jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyter_server_terminals-0.5.3-py3-none-any.whl.metadata (5.6 kB) Collecting nbformat>=5.3.0 (from jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading nbformat-5.10.4-py3-none-any.whl.metadata (3.6 kB) Collecting overrides>=5.0 (from jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading overrides-7.7.0-py3-none-any.whl.metadata (5.8 kB) Collecting prometheus-client>=0.9 (from jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading prometheus_client-0.22.1-py3-none-any.whl.metadata (1.9 kB) Collecting pywinpty>=2.0.1 (from jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pywinpty-3.0.0-cp310-cp310-win_amd64.whl.metadata (101 bytes) Collecting send2trash>=1.8.2 (from jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading Send2Trash-1.8.3-py3-none-any.whl.metadata (4.0 kB) Collecting terminado>=0.8.3 (from jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading terminado-0.18.1-py3-none-any.whl.metadata (5.8 kB) Collecting babel>=2.10 (from jupyterlab-server<3,>=2.27.1->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading babel-2.17.0-py3-none-any.whl.metadata (2.0 kB) Collecting argon2-cffi-bindings (from argon2-cffi>=21.1->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl.metadata (7.5 kB) Collecting python-json-logger>=2.0.4 (from jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading python_json_logger-3.3.0-py3-none-any.whl.metadata (4.0 kB) Collecting rfc3339-validator (from jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading rfc3339_validator-0.1.4-py2.py3-none-any.whl.metadata (1.5 kB) Collecting rfc3986-validator>=0.1.1 (from jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading rfc3986_validator-0.1.1-py2.py3-none-any.whl.metadata (1.7 kB) Collecting fqdn (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading fqdn-1.5.1-py3-none-any.whl.metadata (1.4 kB) Collecting isoduration (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading isoduration-20.11.0-py3-none-any.whl.metadata (5.7 kB) Collecting jsonpointer>1.13 (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jsonpointer-3.0.0-py2.py3-none-any.whl.metadata (2.3 kB) Collecting rfc3987-syntax>=1.1.0 (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading rfc3987_syntax-1.1.0-py3-none-any.whl.metadata (7.7 kB) Collecting uri-template (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading uri_template-1.3.0-py3-none-any.whl.metadata (8.8 kB) Collecting webcolors>=24.6.0 (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading webcolors-24.11.1-py3-none-any.whl.metadata (2.2 kB) Collecting bleach!=5.0.0 (from bleach[css]!=5.0.0->nbconvert->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading bleach-6.2.0-py3-none-any.whl.metadata (30 kB) Collecting defusedxml (from nbconvert->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading defusedxml-0.7.1-py2.py3-none-any.whl.metadata (32 kB) Collecting jupyterlab-pygments (from nbconvert->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jupyterlab_pygments-0.3.0-py3-none-any.whl.metadata (4.4 kB) Collecting mistune<4,>=2.0.3 (from nbconvert->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading mistune-3.1.4-py3-none-any.whl.metadata (1.8 kB) Collecting nbclient>=0.5.0 (from nbconvert->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading nbclient-0.10.2-py3-none-any.whl.metadata (8.3 kB) Collecting pandocfilters>=1.4.1 (from nbconvert->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pandocfilters-1.5.1-py2.py3-none-any.whl.metadata (9.0 kB) Collecting webencodings (from bleach!=5.0.0->bleach[css]!=5.0.0->nbconvert->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading webencodings-0.5.1-py2.py3-none-any.whl.metadata (2.1 kB) Collecting tinycss2<1.5,>=1.1.0 (from bleach[css]!=5.0.0->nbconvert->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading tinycss2-1.4.0-py3-none-any.whl.metadata (3.0 kB) Collecting fastjsonschema>=2.15 (from nbformat>=5.3.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading fastjsonschema-2.21.2-py3-none-any.whl.metadata (2.3 kB) Collecting urllib3<3,>=1.21.1 (from requests->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading urllib3-2.5.0-py3-none-any.whl.metadata (6.5 kB) Collecting lark>=1.2.2 (from rfc3987-syntax>=1.1.0->jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading lark-1.2.2-py3-none-any.whl.metadata (1.8 kB) Collecting arrow>=0.15.0 (from isoduration->jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading arrow-1.3.0-py3-none-any.whl.metadata (7.5 kB) Collecting types-python-dateutil>=2.8.10 (from arrow>=0.15.0->isoduration->jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.11.0->jupyter-server<3,>=2.4.0->jupyterlab->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading types_python_dateutil-2.9.0.20250822-py3-none-any.whl.metadata (1.8 kB) Collecting contourpy>=1.0.1 (from matplotlib->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading contourpy-1.3.2-cp310-cp310-win_amd64.whl.metadata (5.5 kB) Collecting cycler>=0.10 (from matplotlib->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading cycler-0.12.1-py3-none-any.whl.metadata (3.8 kB) Collecting fonttools>=4.22.0 (from matplotlib->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading fonttools-4.59.2-cp310-cp310-win_amd64.whl.metadata (111 kB) Collecting kiwisolver>=1.3.1 (from matplotlib->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading kiwisolver-1.4.9-cp310-cp310-win_amd64.whl.metadata (6.4 kB) Collecting pyparsing>=2.3.1 (from matplotlib->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pyparsing-3.2.3-py3-none-any.whl.metadata (5.0 kB) Collecting dill>=0.4.0 (from multiprocess->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading dill-0.4.0-py3-none-any.whl.metadata (10 kB) Collecting distro<2,>=1.7.0 (from openai->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading distro-1.9.0-py3-none-any.whl.metadata (6.8 kB) Collecting jiter<1,>=0.4.0 (from openai->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading jiter-0.10.0-cp310-cp310-win_amd64.whl.metadata (5.3 kB) Collecting pypdfium2>=4.18.0 (from pdfplumber->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pypdfium2-4.30.0-py3-none-win_amd64.whl.metadata (48 kB) Collecting lxml>=3.1.0 (from python-docx->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading lxml-6.0.1-cp310-cp310-win_amd64.whl.metadata (3.9 kB) Collecting XlsxWriter>=0.5.7 (from python-pptx->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading xlsxwriter-3.2.5-py3-none-any.whl.metadata (2.7 kB) Collecting executing>=1.2.0 (from stack_data->ipython>=7.23.1->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading executing-2.2.1-py2.py3-none-any.whl.metadata (8.9 kB) Collecting asttokens>=2.1.0 (from stack_data->ipython>=7.23.1->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading asttokens-3.0.0-py3-none-any.whl.metadata (4.7 kB) Collecting pure-eval (from stack_data->ipython>=7.23.1->ipykernel->jupyter>=1.0.0->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading pure_eval-0.2.3-py3-none-any.whl.metadata (6.3 kB) Collecting mpmath<1.4,>=1.1.0 (from sympy->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading mpmath-1.3.0-py3-none-any.whl.metadata (8.6 kB) Collecting regex>=2022.1.18 (from tiktoken->qwen-agent[code_interpreter,gui,python_executor,rag]) Downloading regex-2025.9.1-cp310-cp310-win_amd64.whl.metadata (41 kB) Downloading qwen_agent-0.0.29-py3-none-any.whl (7.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.1/7.1 MB 3.0 MB/s 0:00:02 Downloading gradio-5.23.1-py3-none-any.whl (51.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 51.3/51.3 MB 9.6 MB/s 0:00:05 Downloading gradio_client-1.8.0-py3-none-any.whl (322 kB) Downloading modelscope_studio-1.1.7-py3-none-any.whl (13.9 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 13.9/13.9 MB 11.9 MB/s 0:00:01 Downloading pydantic-2.9.2-py3-none-any.whl (434 kB) Downloading pydantic_core-2.23.4-cp310-none-win_amd64.whl (1.9 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.9/1.9 MB 21.2 MB/s 0:00:00 Downloading aiofiles-23.2.1-py3-none-any.whl (15 kB) Downloading anyio-4.10.0-py3-none-any.whl (107 kB) Downloading fastapi-0.116.1-py3-none-any.whl (95 kB) Downloading groovy-0.1.2-py3-none-any.whl (14 kB) Downloading jinja2-3.1.6-py3-none-any.whl (134 kB) Downloading MarkupSafe-3.0.2-cp310-cp310-win_amd64.whl (15 kB) Downloading numpy-2.2.6-cp310-cp310-win_amd64.whl (12.9 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 12.9/12.9 MB 14.0 MB/s 0:00:00 Downloading orjson-3.11.3-cp310-cp310-win_amd64.whl (131 kB) Downloading pandas-2.3.2-cp310-cp310-win_amd64.whl (11.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.3/11.3 MB 33.7 MB/s 0:00:00 Downloading pillow-11.3.0-cp310-cp310-win_amd64.whl (7.0 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.0/7.0 MB 9.6 MB/s 0:00:00 Downloading PyYAML-6.0.2-cp310-cp310-win_amd64.whl (161 kB) Downloading safehttpx-0.1.6-py3-none-any.whl (8.7 kB) Downloading semantic_version-2.10.0-py2.py3-none-any.whl (15 kB) Downloading starlette-0.47.3-py3-none-any.whl (72 kB) Downloading tomlkit-0.13.3-py3-none-any.whl (38 kB) Downloading typer-0.17.4-py3-none-any.whl (46 kB) Downloading typing_extensions-4.15.0-py3-none-any.whl (44 kB) Downloading websockets-15.0.1-cp310-cp310-win_amd64.whl (176 kB) Downloading annotated_types-0.7.0-py3-none-any.whl (13 kB) Downloading click-8.2.1-py3-none-any.whl (102 kB) Downloading dashscope-1.24.4-py3-none-any.whl (1.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.3/1.3 MB 16.9 MB/s 0:00:00 Downloading exceptiongroup-1.3.0-py3-none-any.whl (16 kB) Downloading httpx-0.28.1-py3-none-any.whl (73 kB) Downloading httpcore-1.0.9-py3-none-any.whl (78 kB) Downloading h11-0.16.0-py3-none-any.whl (37 kB) Downloading huggingface_hub-0.34.4-py3-none-any.whl (561 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 561.5/561.5 kB 9.7 MB/s 0:00:00 Downloading fsspec-2025.9.0-py3-none-any.whl (199 kB) Downloading idna-3.10-py3-none-any.whl (70 kB) Downloading jupyter-1.1.1-py2.py3-none-any.whl (2.7 kB) Downloading packaging-25.0-py3-none-any.whl (66 kB) Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB) Downloading python_multipart-0.0.20-py3-none-any.whl (24 kB) Downloading pytz-2025.2-py2.py3-none-any.whl (509 kB) Downloading rich-14.1.0-py3-none-any.whl (243 kB) Downloading pygments-2.19.2-py3-none-any.whl (1.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 3.4 MB/s 0:00:00 Downloading markdown_it_py-4.0.0-py3-none-any.whl (87 kB) Downloading mdurl-0.1.2-py3-none-any.whl (10.0 kB) Downloading ruff-0.12.12-py3-none-win_amd64.whl (13.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 13.2/13.2 MB 14.8 MB/s 0:00:00 Downloading shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB) Downloading six-1.17.0-py2.py3-none-any.whl (11 kB) Downloading sniffio-1.3.1-py3-none-any.whl (10 kB) Downloading tqdm-4.67.1-py3-none-any.whl (78 kB) Downloading tzdata-2025.2-py2.py3-none-any.whl (347 kB) Downloading uvicorn-0.35.0-py3-none-any.whl (66 kB) Downloading aiohttp-3.12.15-cp310-cp310-win_amd64.whl (452 kB) Downloading async_timeout-5.0.1-py3-none-any.whl (6.2 kB) Downloading multidict-6.6.4-cp310-cp310-win_amd64.whl (46 kB) Downloading yarl-1.20.1-cp310-cp310-win_amd64.whl (86 kB) Downloading aiohappyeyeballs-2.6.1-py3-none-any.whl (15 kB) Downloading aiosignal-1.4.0-py3-none-any.whl (7.5 kB) Downloading attrs-25.3.0-py3-none-any.whl (63 kB) Downloading frozenlist-1.7.0-cp310-cp310-win_amd64.whl (43 kB) Downloading propcache-0.3.2-cp310-cp310-win_amd64.whl (41 kB) Downloading beautifulsoup4-4.13.5-py3-none-any.whl (105 kB) Downloading soupsieve-2.8-py3-none-any.whl (36 kB) Downloading certifi-2025.8.3-py3-none-any.whl (161 kB) Downloading charset_normalizer-3.4.3-cp310-cp310-win_amd64.whl (107 kB) Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB) Downloading cryptography-45.0.7-cp37-abi3-win_amd64.whl (3.4 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.4/3.4 MB 2.7 MB/s 0:00:01 Downloading cffi-1.17.1-cp310-cp310-win_amd64.whl (181 kB) Downloading eval_type_backport-0.2.2-py3-none-any.whl (5.8 kB) Downloading ffmpy-0.6.1-py3-none-any.whl (5.5 kB) Downloading filelock-3.19.1-py3-none-any.whl (15 kB) Downloading ipykernel-6.30.1-py3-none-any.whl (117 kB) Downloading comm-0.2.3-py3-none-any.whl (7.3 kB) Downloading debugpy-1.8.16-cp310-cp310-win_amd64.whl (5.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.3/5.3 MB 7.6 MB/s 0:00:00 Downloading ipython-8.37.0-py3-none-any.whl (831 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 831.9/831.9 kB 6.1 MB/s 0:00:00 Downloading prompt_toolkit-3.0.52-py3-none-any.whl (391 kB) Downloading jedi-0.19.2-py2.py3-none-any.whl (1.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 10.5 MB/s 0:00:00 Downloading parso-0.8.5-py2.py3-none-any.whl (106 kB) Downloading jupyter_client-8.6.3-py3-none-any.whl (106 kB) Downloading jupyter_core-5.8.1-py3-none-any.whl (28 kB) Downloading matplotlib_inline-0.1.7-py3-none-any.whl (9.9 kB) Downloading nest_asyncio-1.6.0-py3-none-any.whl (5.2 kB) Downloading platformdirs-4.4.0-py3-none-any.whl (18 kB) Downloading psutil-7.0.0-cp37-abi3-win_amd64.whl (244 kB) Downloading pywin32-311-cp310-cp310-win_amd64.whl (9.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 9.6/9.6 MB 3.6 MB/s 0:00:03 Downloading pyzmq-27.0.2-cp310-cp310-win_amd64.whl (631 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 632.0/632.0 kB 2.6 MB/s 0:00:00 Downloading tornado-6.5.2-cp39-abi3-win_amd64.whl (445 kB) Downloading traitlets-5.14.3-py3-none-any.whl (85 kB) Downloading decorator-5.2.1-py3-none-any.whl (9.2 kB) Downloading ipywidgets-8.1.7-py3-none-any.whl (139 kB) Downloading jupyterlab_widgets-3.0.15-py3-none-any.whl (216 kB) Downloading widgetsnbextension-4.0.14-py3-none-any.whl (2.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.2/2.2 MB 7.3 MB/s 0:00:00 Downloading json5-0.12.1-py3-none-any.whl (36 kB) Downloading jsonlines-4.0.0-py3-none-any.whl (8.7 kB) Downloading jsonschema-4.25.1-py3-none-any.whl (90 kB) Downloading jsonschema_specifications-2025.9.1-py3-none-any.whl (18 kB) Downloading referencing-0.36.2-py3-none-any.whl (26 kB) Downloading rpds_py-0.27.1-cp310-cp310-win_amd64.whl (228 kB) Downloading jupyter_console-6.6.3-py3-none-any.whl (24 kB) Downloading jupyterlab-4.4.7-py3-none-any.whl (12.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 12.3/12.3 MB 10.3 MB/s 0:00:01 Downloading jupyter_server-2.17.0-py3-none-any.whl (388 kB) Downloading jupyterlab_server-2.27.3-py3-none-any.whl (59 kB) Downloading argon2_cffi-25.1.0-py3-none-any.whl (14 kB) Downloading async_lru-2.0.5-py3-none-any.whl (6.1 kB) Downloading babel-2.17.0-py3-none-any.whl (10.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.2/10.2 MB 12.0 MB/s 0:00:00 Downloading jupyter_events-0.12.0-py3-none-any.whl (19 kB) Downloading jsonpointer-3.0.0-py2.py3-none-any.whl (7.6 kB) Downloading jupyter_lsp-2.3.0-py3-none-any.whl (76 kB) Downloading jupyter_server_terminals-0.5.3-py3-none-any.whl (13 kB) Downloading nbconvert-7.16.6-py3-none-any.whl (258 kB) Downloading mistune-3.1.4-py3-none-any.whl (53 kB) Downloading bleach-6.2.0-py3-none-any.whl (163 kB) Downloading tinycss2-1.4.0-py3-none-any.whl (26 kB) Downloading nbclient-0.10.2-py3-none-any.whl (25 kB) Downloading nbformat-5.10.4-py3-none-any.whl (78 kB) Downloading fastjsonschema-2.21.2-py3-none-any.whl (24 kB) Downloading notebook_shim-0.2.4-py3-none-any.whl (13 kB) Downloading overrides-7.7.0-py3-none-any.whl (17 kB) Downloading pandocfilters-1.5.1-py2.py3-none-any.whl (8.7 kB) Downloading prometheus_client-0.22.1-py3-none-any.whl (58 kB) Downloading python_json_logger-3.3.0-py3-none-any.whl (15 kB) Downloading pywinpty-3.0.0-cp310-cp310-win_amd64.whl (2.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 1.1 MB/s 0:00:02 Downloading requests-2.32.5-py3-none-any.whl (64 kB) Downloading urllib3-2.5.0-py3-none-any.whl (129 kB) Downloading rfc3986_validator-0.1.1-py2.py3-none-any.whl (4.2 kB) Downloading rfc3987_syntax-1.1.0-py3-none-any.whl (8.0 kB) Downloading lark-1.2.2-py3-none-any.whl (111 kB) Downloading Send2Trash-1.8.3-py3-none-any.whl (18 kB) Downloading terminado-0.18.1-py3-none-any.whl (14 kB) Downloading tomli-2.2.1-py3-none-any.whl (14 kB) Downloading webcolors-24.11.1-py3-none-any.whl (14 kB) Downloading webencodings-0.5.1-py2.py3-none-any.whl (11 kB) Downloading websocket_client-1.8.0-py3-none-any.whl (58 kB) Downloading argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl (31 kB) Downloading defusedxml-0.7.1-py2.py3-none-any.whl (25 kB) Downloading fqdn-1.5.1-py3-none-any.whl (9.1 kB) Downloading isoduration-20.11.0-py3-none-any.whl (11 kB) Downloading arrow-1.3.0-py3-none-any.whl (66 kB) Downloading types_python_dateutil-2.9.0.20250822-py3-none-any.whl (17 kB) Downloading jupyterlab_pygments-0.3.0-py3-none-any.whl (15 kB) Downloading matplotlib-3.10.6-cp310-cp310-win_amd64.whl (8.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.1/8.1 MB 3.3 MB/s 0:00:02 Downloading contourpy-1.3.2-cp310-cp310-win_amd64.whl (221 kB) Downloading cycler-0.12.1-py3-none-any.whl (8.3 kB) Downloading fonttools-4.59.2-cp310-cp310-win_amd64.whl (2.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.3/2.3 MB 6.7 MB/s 0:00:00 Downloading kiwisolver-1.4.9-cp310-cp310-win_amd64.whl (73 kB) Downloading pyparsing-3.2.3-py3-none-any.whl (111 kB) Downloading multiprocess-0.70.18-py310-none-any.whl (134 kB) Downloading dill-0.4.0-py3-none-any.whl (119 kB) Downloading notebook-7.4.5-py3-none-any.whl (14.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.3/14.3 MB 8.4 MB/s 0:00:01 Downloading openai-1.106.1-py3-none-any.whl (930 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 930.8/930.8 kB 8.6 MB/s 0:00:00 Downloading distro-1.9.0-py3-none-any.whl (20 kB) Downloading jiter-0.10.0-cp310-cp310-win_amd64.whl (207 kB) Downloading pdfminer_six-20250506-py3-none-any.whl (5.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.6/5.6 MB 15.6 MB/s 0:00:00 Downloading pdfplumber-0.11.7-py3-none-any.whl (60 kB) Downloading pypdfium2-4.30.0-py3-none-win_amd64.whl (2.9 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.9/2.9 MB 4.3 MB/s 0:00:00 Downloading Pebble-5.1.3-py3-none-any.whl (36 kB) Downloading pycparser-2.22-py3-none-any.whl (117 kB) Downloading pydub-0.25.1-py2.py3-none-any.whl (32 kB) Downloading python_docx-1.2.0-py3-none-any.whl (252 kB) Downloading lxml-6.0.1-cp310-cp310-win_amd64.whl (4.0 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.0/4.0 MB 9.6 MB/s 0:00:00 Downloading python_pptx-1.0.2-py3-none-any.whl (472 kB) Downloading xlsxwriter-3.2.5-py3-none-any.whl (172 kB) Downloading rank_bm25-0.2.2-py3-none-any.whl (8.6 kB) Downloading rfc3339_validator-0.1.4-py2.py3-none-any.whl (3.5 kB) Downloading scipy-1.15.3-cp310-cp310-win_amd64.whl (41.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.3/41.3 MB 12.8 MB/s 0:00:03 Downloading seaborn-0.13.2-py3-none-any.whl (294 kB) Downloading snowballstemmer-3.0.1-py3-none-any.whl (103 kB) Downloading stack_data-0.6.3-py3-none-any.whl (24 kB) Downloading asttokens-3.0.0-py3-none-any.whl (26 kB) Downloading executing-2.2.1-py2.py3-none-any.whl (28 kB) Downloading pure_eval-0.2.3-py3-none-any.whl (11 kB) Downloading sympy-1.14.0-py3-none-any.whl (6.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.3/6.3 MB 9.7 MB/s 0:00:00 Downloading mpmath-1.3.0-py3-none-any.whl (536 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 536.2/536.2 kB 18.3 MB/s 0:00:00 Downloading tabulate-0.9.0-py3-none-any.whl (35 kB) Downloading tiktoken-0.11.0-cp310-cp310-win_amd64.whl (884 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 884.2/884.2 kB 5.7 MB/s 0:00:00 Downloading regex-2025.9.1-cp310-cp310-win_amd64.whl (276 kB) Downloading uri_template-1.3.0-py3-none-any.whl (11 kB) Downloading wcwidth-0.2.13-py2.py3-none-any.whl (34 kB) Building wheels for collected packages: jieba, timeout_decorator DEPRECATION: Building 'jieba' using the legacy setup.py bdist_wheel mechanism, which will be removed in a future version. pip 25.3 will enforce this behaviour change. A possible replacement is to use the standardized build interface by setting the `--use-pep517` option, (possibly combined with `--no-build-isolation`), or adding a `pyproject.toml` file to the source tree of 'jieba'. Discussion can be found at https://github.com/pypa/pip/issues/6334 Building wheel for jieba (setup.py) ... done Created wheel for jieba: filename=jieba-0.42.1-py3-none-any.whl size=19314527 sha256=3c4dce3130fc34c081b4bcf455cafc6c600e56fc7a0c253151e4eef55bebf7d0 Stored in directory: c:\users\k\appdata\local\pip\cache\wheels\c9\69\31\d56d90b22a1777b0b231e234b00302a55be255930f8bd92dcd DEPRECATION: Building 'timeout_decorator' using the legacy setup.py bdist_wheel mechanism, which will be removed in a future version. pip 25.3 will enforce this behaviour change. A possible replacement is to use the standardized build interface by setting the `--use-pep517` option, (possibly combined with `--no-build-isolation`), or adding a `pyproject.toml` file to the source tree of 'timeout_decorator'. Discussion can be found at https://github.com/pypa/pip/issues/6334 Building wheel for timeout_decorator (setup.py) ... done Created wheel for timeout_decorator: filename=timeout_decorator-0.5.0-py3-none-any.whl size=5065 sha256=efe0b633465d8f17783198b1bfc48fa22ced3dad2d2a5be2e3bae7181fcf4e7b Stored in directory: c:\users\k\appdata\local\pip\cache\wheels\68\2f\bc\76f1192d474666d41ae6f09813fccbd00fe3f07e8261c4cff5 Successfully built jieba timeout_decorator Installing collected packages: webencodings, wcwidth, timeout_decorator, pywin32, pytz, pydub, pure-eval, mpmath, jieba, fastjsonschema, XlsxWriter, widgetsnbextension, websockets, websocket-client, webcolors, urllib3, uri-template, tzdata, typing-extensions, types-python-dateutil, traitlets, tornado, tomlkit, tomli, tinycss2, tabulate, sympy, soupsieve, snowballstemmer, sniffio, six, shellingham, send2trash, semantic-version, ruff, rpds-py, rfc3986-validator, regex, pyzmq, pyyaml, pywinpty, python-multipart, python-json-logger, pypdfium2, pyparsing, pygments, pycparser, psutil, propcache, prompt_toolkit, prometheus-client, platformdirs, pillow, pebble, parso, pandocfilters, packaging, overrides, orjson, numpy, nest-asyncio, mdurl, markupsafe, lxml, lark, kiwisolver, jupyterlab_widgets, jupyterlab-pygments, jsonpointer, json5, jiter, idna, h11, groovy, fsspec, frozenlist, fqdn, fonttools, filelock, ffmpy, executing, eval_type_backport, distro, dill, defusedxml, decorator, debugpy, cycler, comm, colorama, charset-normalizer, certifi, bleach, babel, attrs, async-timeout, asttokens, annotated-types, aiohappyeyeballs, aiofiles, tqdm, terminado, stack_data, scipy, rfc3987-syntax, rfc3339-validator, requests, referencing, rank_bm25, python-pptx, python-docx, python-dateutil, pydantic-core, multiprocess, multidict, mistune, matplotlib-inline, markdown-it-py, jupyter-core, jsonlines, jinja2, jedi, httpcore, exceptiongroup, contourpy, click, cffi, beautifulsoup4, async-lru, aiosignal, yarl, uvicorn, tiktoken, rich, pydantic, pandas, matplotlib, jupyter-server-terminals, jupyter-client, jsonschema-specifications, ipython, huggingface-hub, cryptography, arrow, argon2-cffi-bindings, anyio, typer, starlette, seaborn, pdfminer.six, jsonschema, isoduration, ipywidgets, ipykernel, httpx, argon2-cffi, aiohttp, safehttpx, pdfplumber, openai, nbformat, jupyter-console, gradio-client, fastapi, dashscope, qwen-agent, nbclient, jupyter-events, gradio, nbconvert, modelscope_studio, jupyter-server, notebook-shim, jupyterlab-server, jupyter-lsp, jupyterlab, notebook, jupyter Successfully installed XlsxWriter-3.2.5 aiofiles-23.2.1 aiohappyeyeballs-2.6.1 aiohttp-3.12.15 aiosignal-1.4.0 annotated-types-0.7.0 anyio-4.10.0 argon2-cffi-25.1.0 argon2-cffi-bindings-25.1.0 arrow-1.3.0 asttokens-3.0.0 async-lru-2.0.5 async-timeout-5.0.1 attrs-25.3.0 babel-2.17.0 beautifulsoup4-4.13.5 bleach-6.2.0 certifi-2025.8.3 cffi-1.17.1 charset-normalizer-3.4.3 click-8.2.1 colorama-0.4.6 comm-0.2.3 contourpy-1.3.2 cryptography-45.0.7 cycler-0.12.1 dashscope-1.24.4 debugpy-1.8.16 decorator-5.2.1 defusedxml-0.7.1 dill-0.4.0 distro-1.9.0 eval_type_backport-0.2.2 exceptiongroup-1.3.0 executing-2.2.1 fastapi-0.116.1 fastjsonschema-2.21.2 ffmpy-0.6.1 filelock-3.19.1 fonttools-4.59.2 fqdn-1.5.1 frozenlist-1.7.0 fsspec-2025.9.0 gradio-5.23.1 gradio-client-1.8.0 groovy-0.1.2 h11-0.16.0 httpcore-1.0.9 httpx-0.28.1 huggingface-hub-0.34.4 idna-3.10 ipykernel-6.30.1 ipython-8.37.0 ipywidgets-8.1.7 isoduration-20.11.0 jedi-0.19.2 jieba-0.42.1 jinja2-3.1.6 jiter-0.10.0 json5-0.12.1 jsonlines-4.0.0 jsonpointer-3.0.0 jsonschema-4.25.1 jsonschema-specifications-2025.9.1 jupyter-1.1.1 jupyter-client-8.6.3 jupyter-console-6.6.3 jupyter-core-5.8.1 jupyter-events-0.12.0 jupyter-lsp-2.3.0 jupyter-server-2.17.0 jupyter-server-terminals-0.5.3 jupyterlab-4.4.7 jupyterlab-pygments-0.3.0 jupyterlab-server-2.27.3 jupyterlab_widgets-3.0.15 kiwisolver-1.4.9 lark-1.2.2 lxml-6.0.1 markdown-it-py-4.0.0 markupsafe-3.0.2 matplotlib-3.10.6 matplotlib-inline-0.1.7 mdurl-0.1.2 mistune-3.1.4 modelscope_studio-1.1.7 mpmath-1.3.0 multidict-6.6.4 multiprocess-0.70.18 nbclient-0.10.2 nbconvert-7.16.6 nbformat-5.10.4 nest-asyncio-1.6.0 notebook-7.4.5 notebook-shim-0.2.4 numpy-2.2.6 openai-1.106.1 orjson-3.11.3 overrides-7.7.0 packaging-25.0 pandas-2.3.2 pandocfilters-1.5.1 parso-0.8.5 pdfminer.six-20250506 pdfplumber-0.11.7 pebble-5.1.3 pillow-11.3.0 platformdirs-4.4.0 prometheus-client-0.22.1 prompt_toolkit-3.0.52 propcache-0.3.2 psutil-7.0.0 pure-eval-0.2.3 pycparser-2.22 pydantic-2.9.2 pydantic-core-2.23.4 pydub-0.25.1 pygments-2.19.2 pyparsing-3.2.3 pypdfium2-4.30.0 python-dateutil-2.9.0.post0 python-docx-1.2.0 python-json-logger-3.3.0 python-multipart-0.0.20 python-pptx-1.0.2 pytz-2025.2 pywin32-311 pywinpty-3.0.0 pyyaml-6.0.2 pyzmq-27.0.2 qwen-agent-0.0.29 rank_bm25-0.2.2 referencing-0.36.2 regex-2025.9.1 requests-2.32.5 rfc3339-validator-0.1.4 rfc3986-validator-0.1.1 rfc3987-syntax-1.1.0 rich-14.1.0 rpds-py-0.27.1 ruff-0.12.12 safehttpx-0.1.6 scipy-1.15.3 seaborn-0.13.2 semantic-version-2.10.0 send2trash-1.8.3 shellingham-1.5.4 six-1.17.0 sniffio-1.3.1 snowballstemmer-3.0.1 soupsieve-2.8 stack_data-0.6.3 starlette-0.47.3 sympy-1.14.0 tabulate-0.9.0 terminado-0.18.1 tiktoken-0.11.0 timeout_decorator-0.5.0 tinycss2-1.4.0 tomli-2.2.1 tomlkit-0.13.3 tornado-6.5.2 tqdm-4.67.1 traitlets-5.14.3 typer-0.17.4 types-python-dateutil-2.9.0.20250822 typing-extensions-4.15.0 tzdata-2025.2 uri-template-1.3.0 urllib3-2.5.0 uvicorn-0.35.0 wcwidth-0.2.13 webcolors-24.11.1 webencodings-0.5.1 websocket-client-1.8.0 websockets-15.0.1 widgetsnbextension-4.0.14 yarl-1.20.1做到这步骤了,下步怎么操作?
最新发布
09-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值