中国最大网站建设商网站生成器怎么做

news/2025/10/4 19:59:27/文章来源:
中国最大网站建设商,网站生成器怎么做,90设计网怎么样,什么样的网站结构适合做seopython绑定项目 官方未提供python的封装绑定#xff0c;直接调用执行文件 https://github.com/stlukey/whispercpp.py提供了源码和Cpython结合的绑定 https://github.com/zhujun1980/whispercpp_py提供了ctype方式的绑定#xff0c;需要先make libwhisper.so Pybind11 bi…python绑定项目 官方未提供python的封装绑定直接调用执行文件 https://github.com/stlukey/whispercpp.py提供了源码和Cpython结合的绑定 https://github.com/zhujun1980/whispercpp_py提供了ctype方式的绑定需要先make libwhisper.so Pybind11 bindings for Whisper.cpp有更好的类型安全性和性能 Setuptools setuptools 是 Python 中用于构建和分发软件包的工具它提供了一种简化和标准化的方式来定义和管理项目的元数据、依赖关系以及构建过程。 安装 pip install setuptools示例setup.py 封装python实现的add 模块 项目结构如下 my_package/ |-- my_package/ | |-- __init__.py # NULL | |-- add.py |-- setup.py |-- README.mdadd.py # add.py def add(a, b):return a bsetup.py # setup.py from setuptools import setup, find_packagessetup(namemy_package,version1.0,packagesfind_packages(),install_requires[# Specify your project dependencies here], )构建和安装 在项目根目录下运行以下命令python setup.py build,python setup.py install 其他构建方式打tar包/tar包安装打egg包/egg包安装打whl包/whl包安装 使用 from my_package import addresult add.add(3, 4) print(result) # 输出 73. 项目依赖和包管理 在 setup.py 中使用 install_requires 列表来指定项目的依赖关系。当用户安装你的包时这些依赖关系将会自动安装。 5. 使用 setuptools 扩展 如果你的项目包含 C 或 C 扩展你可以使用 setuptools.Extension 来指定这些扩展。以下是一个简单的例子 from setuptools import setup, Extensionext_module Extension(your_module, # 模块名称sources[your_module.c], # 源代码文件 )setup(nameyour_package,version1.0,ext_modules[ext_module], )构建 Cython 扩展 Cython基础 .pxd 文件.pyx 文件.pyd 文件 文件类型描述.pxd 文件由 Cython 编程语言编写的 Python 扩展模块头文件。类似于 C 语言的 .h 头文件。包含模块的声明和代码段。可共享外部 C 语言声明也能包含 C 编译器内联函数。为 .pyx 文件提供接口以便其他 Cython 模块可以使用更高效的协议与之通信。可使用 cimport 关键字将 .pxd 文件导入 .pyx 模块文件中。.pyx 文件由 Cython 编程语言编写的 Python 扩展模块源代码文件。类似于 C 语言的 .c 源代码文件。包含模块的源代码。必须先编译成 .c 文件再编译成 .pydWindows或 .soLinux文件方可导入和使用。.pyd 文件由非 Python 编程语言编写并编译生成的 Python 扩展模块。在 Python 中使用时通过 import 语句导入。实际上在 .pyd 文件中封装了一个模块。Cython 可以将个人基于 Python 的模块编译成具有 C 语言特性的 .pyd 文件。 常见的 Cython 数据类型 1. 基本整数类型 int标准整数类型。long长整数类型。bint布尔类型。 cdef int a 42 cdef long b 1234567890123456789 cdef bint flag True2. 浮点数类型 float标准浮点数类型。double双精度浮点数类型。 cdef float x 3.14 cdef double y 2.718283. 数组和缓冲区类型 listPython 列表。tuplePython 元组。arrayCython 提供的数组类型。 cdef list py_list [1, 2, 3] cdef tuple py_tuple (4, 5, 6) cdef int[:] cython_array array([7, 8, 9])4. 字符串类型 strPython 字符串类型。bytes字节类型。 cdef str py_string Hello cdef bytes cython_bytes bWorldbytes 在 CPython即官方的 Python 解释器中bytes 对象是不可变的序列用于存储二进制数据。它与 bytearray 对象的主要区别在于bytes 对象是不可变的而 bytearray 对象是可变的。 以下是关于 bytes 对象的一些基本信息 不可变性bytes 对象是不可变的这意味着一旦创建其内容不能被修改。你不能像列表一样通过索引赋值来改变 bytes 对象中的某个元素。 字节表示bytes 对象包含一系列字节每个字节的值范围在 0 到 255 之间。字节以整数表示并可以使用 b... 语法来创建 bytes 字面值。 # 创建bytes对象 b bHello, World!字节序列的操作bytes 支持与字节序列相关的许多操作例如索引、切片、长度计算等。 # 使用索引获取字节值 print(b[0]) # 输出 72 (ASCII码中 H 的值)# 使用切片获取部分字节序列 print(b[7:]) # 输出 bWorld!# 计算字节序列的长度 print(len(b)) # 输出 13不可变性的好处bytes 对象的不可变性使得它适用于表示一些固定不变的二进制数据例如文件内容、网络数据等。此外由于不可变性bytes 对象可以作为字典的键而 bytearray 对象不能。 # 不可变性允许bytes对象作为字典键 data_dict {bkey: value}内置方法bytes 类型提供了一些内置方法如 decode() 用于将字节解码为字符串hex() 用于获取字节的十六进制表示。 # 解码为字符串 string_representation b.decode(utf-8)# 获取十六进制表示 hex_representation b.hex()这将创建一个 Python 字节字符串对象该对象包含 原始 C 字符串。它可以在 Python 代码中安全地传递并且 将在对它的最后一个引用结束时进行垃圾回收 范围。重要的是要记住字符串中的 null 字节会起作用 作为终止符字符通常从 C 中知道。以上将 因此仅适用于不包含 null 的 C 字符串 字节。 5. 其他类型 objectPython 对象类型通常用于处理任意类型的对象。memoryview内存视图类型用于处理内存缓冲区。pointer指针类型用于与 C 语言中的指针进行交互。 cdef object generic_object some_function() cdef memoryview buffer_view memoryview(some_buffer) cdef int* ptr int*some_pointer6. 并行迭代类型 prange并行迭代类型用于在循环中实现并行迭代。 from cython.parallel import prangecdef int i for i in prange(10):# 在此进行并行迭代的操作这些类型提供了在 Cython 中进行类型声明和优化的灵活性。选择适当的类型取决于你的算法和数据的特性以及在 Cython 中进行性能优化的目标。 Cpython的强制类型转换 在 Cython 中与 C 类型相关的强制类型转换通常是通过 C 的类型声明和类型转换函数来实现的。以下是一些常见的 Cython 中的类型转换示例 1. C 的类型声明 在 Cython 中可以使用 C 的类型声明来明确变量的类型。例如对于整数、浮点数和字符类型 cdef int x 42 cdef double y 3.14 cdef char c A2. Python 对象到 C 类型的转换 使用 (C类型) 语法将 Python 对象强制转换为 C 类型。例如将 Python 中的整数对象转换为 C 中的整数 cdef int py_int 42 cdef int c_int intpy_int3. C 类型到 Python 对象的转换 使用 (Python类型) 语法将 C 类型强制转换为 Python 对象。例如将 C 中的整数转换为 Python 中的整数对象 cdef int c_int 42 cdef object py_int objectc_int4. 使用 cast() 函数 Cython 还提供了 cast() 函数用于进行更复杂的类型转换。这对于在不同的 C 类型之间进行转换非常有用 from cython cimport castcdef int c_int 42 cdef double c_double cast(double, c_int)5. 使用 numpy 中的类型转换 如果涉及到 NumPy 数组可以使用 numpy 模块提供的一些函数进行类型转换 import numpy as np cimport numpy as npcdef np.ndarray[np.int32_t, ndim1] int_array np.array([1, 2, 3], dtypenp.int32) cdef np.ndarray[np.float64_t, ndim1] float_array int_array.astype(np.float64)这些是 Cython 中一些常见的类型转换方法。根据具体的应用场景你可能需要使用不同的方式进行类型转换。在进行类型转换时请确保转换是安全的以避免潜在的错误和问题。 cythonize和pyx cythonize 是 Cython 提供的一个用于编译 Cython 源文件的命令。它将 Cython 源文件.pyx转换为 C 代码然后编译为共享库.so 文件或相应平台的文件。如果使用了 Cython 编写 C 扩展可以使用 setuptools 配合 Cython.Build.cythonize 来构建然后可以使用以下命令构建并安装python setup.py build_ext --inplace 基本用法 在 setup.py 文件中使用 cythonize 来构建和编译 Cython 源文件。通常cythonize 接受一个包含 .pyx 文件路径的列表然后返回一个用于设置的 Extension 对象列表。 # setup.py from setuptools import setup from Cython.Build import cythonizesetup(ext_modulescythonize(your_module.pyx),# ext_modulescythonize([module1.pyx, module2.pyx]), # 处理多个文件# ext_modulescythonize(your_module.pyx, compiler_directives{boundscheck: False}), # 额外的编译选项 )使用 annotate 生成 HTML 文件 annotate 选项用于生成包含注释的 HTML 文件以便查看 C 代码中哪些部分是由 Cython 自动生成的。这有助于理解性能瓶颈和进行调试。 # setup.py from setuptools import setup from Cython.Build import cythonizesetup(ext_modulescythonize(your_module.pyx, annotateTrue), )Cythonsetup.py 封装add 模块 正确编译的.so文件在python当中就是module cython(.pyx, .pxi)- c/c - so 项目结构 my_package/ |-- add/ | |-- add.c | |-- add.h |-- my_package/ | |-- __init__.py | |-- add_wrapper.pyx |-- setup.py |-- README.md代码 // add.c int add(int a, int b) {return a b; }// add.h int add(int a, int b);# add_wrapper.pyx cdef extern from add.h:int add(int a, int b)def add_py(int a, int b):return add(a, b)# setup.py from setuptools import setup, Extension from Cython.Build import cythonize# Extension module ext_module Extension(my_package.add_wrapper, # Python模块名称sources[my_package/add_wrapper.pyx, # Cython源文件add/add.c, # C源文件],include_dirs[add/], # 包含的头文件目录 )setup(namemy_package,version1.0,packages[my_package],ext_modulescythonize([ext_module]),zip_safeFalse, )构建和安装 python setup.py build_ext --inplacefrom my_package import add_wrapperresult add_wrapper.add_py(3, 4) print(result) # 输出 7whispercpp.py的setup.py # 从distutils和Cython导入必要的模块 from distutils.core import setup from distutils.extension import Extension from Cython.Build import cythonize# 导入用于平台检测的额外模块 import numpy, os, sys# 根据平台检测设置相应的环境变量 if sys.platform darwin: # macOSos.environ[CFLAGS] -DGGML_USE_ACCELERATE -O3 -stdgnu11os.environ[CXXFLAGS] -DGGML_USE_ACCELERATE -O3 -stdc11os.environ[LDFLAGS] -framework Accelerate else: # 其他平台假定为类Linuxos.environ[CFLAGS] -mavx -mavx2 -mfma -mf16c -O3 -stdgnu11os.environ[CXXFLAGS] -mavx -mavx2 -mfma -mf16c -O3 -stdc11# 定义Cython扩展模块 ext_modules [Extension(namewhispercpp,sources[whispercpp.pyx, whisper.cpp/whisper.cpp],languagec,extra_compile_args[-stdc11],) ]# 使用cythonize函数编译Cython扩展模块 ext_modules cythonize(ext_modules)# 定义whisper.cpp的C库 whisper_clib (whisper_clib, {sources: [whisper.cpp/ggml.c]})# 使用setup函数配置Python包 setup(namewhispercpp,version1.0,descriptionwhisper.cpp的Python绑定,authorLuke Southam,author_emaillukedevthe.com,libraries[whisper_clib], # 指定C库ext_modulescythonize(whispercpp.pyx), # 包含Cython扩展模块include_dirs[./whisper.cpp/, numpy.get_include()], # 编译时包含的目录install_requires[numpy,ffmpeg-python,requests], # 指定依赖项 )whispercpp.pxd cdef nogil:# 使用 nogil 语句告诉Cython编译器在以下代码段中不需要GIL (Global Interpreter Lock)多线程并行int WHISPER_SAMPLE_RATE 16000 # 采样率int WHISPER_N_FFT 400 # FFT点数int WHISPER_N_MEL 80 # 梅尔滤波器数量int WHISPER_HOP_LENGTH 160 # 帧移int WHISPER_CHUNK_SIZE 30 # 音频块大小int SAMPLE_RATE 16000 # 采样率char* TEST_FILE btest.wav # 测试文件名char* DEFAULT_MODEL bggml-tiny.bin # 默认模型文件名char* LANGUAGE bfr # 语言# 定义一个C语言结构体用于存储音频数据的相关信息。ctypedef struct audio_data:float* frames; # 指向浮点数数组的指针存储音频帧int n_frames; # 音频帧的数量cdef extern from whisper.h nogil:# 使用 extern from 语句声明与外部C语言头文件 whisper.h 相关的一些元素# 定义枚举类型 whisper_sampling_strategyenum whisper_sampling_strategy:WHISPER_SAMPLING_GREEDY 0,WHISPER_SAMPLING_BEAM_SEARCH,ctypedef bint _Bool# 定义一个函数指针类型 whisper_new_segment_callback该函数用于接收新的语音片段的回调。ctypedef void (*whisper_new_segment_callback)(whisper_context*, int, void*)# 定义一个函数指针类型 whisper_encoder_begin_callback该函数用于编码器开始的回调。ctypedef _Bool whisper_encoder_begin_callback(whisper_context*, void*)ctypedef int whisper_token# 定义结构体 whisper_token_datactypedef struct whisper_token_data:whisper_token idwhisper_token tidfloat pfloat ptfloat ptsumint64_t t0int64_t t1float vlenwhispercpp.pyx # 导入需要的模块和类型 cimport numpy as cnp import ffmpeg import numpy as np# 声明 load_audio 函数接受一个字节数组 file 和一个可选的采样率参数 sr cdef cnp.ndarray[cnp.float32_t, ndim1, modec] load_audio(bytes file, int sr SAMPLE_RATE):try:# 使用 ffmpeg 库读取音频文件out (ffmpeg.input(file, threads0).output(-, formats16le,acodecpcm_s16le,ac1, arsr).run(cmd[ffmpeg, -nostdin],capture_stdoutTrue,capture_stderrTrue))[0]except:# 处理异常如果文件不存在则抛出 RuntimeErrorraise RuntimeError(fFile {file} not found)# 将二进制音频数据转换为 NumPy 数组cdef cnp.ndarray[cnp.float32_t, ndim1, modec] frames (np.frombuffer(out, np.int16) # 将二进制数据解析为 int16 的 NumPy 数组.flatten() # 展平数组.astype(np.float32) # 转换元素类型为 float32) / pow(2, 15) # 归一化到 [-1, 1] 范围# 返回处理后的音频数据return frames def transcribe(self, filenameTEST_FILE):# 打印加载数据的提示信息print(Loading data..)# 检查传入的文件名是否是NumPy数组if (type(filename) np.ndarray):temp filename# 如果传入的是字符串文件名使用load_audio函数加载音频数据elif (type(filename) str):temp load_audio(bytesfilename) # 如果没有提供文件名使用默认的TEST_FILEelse:temp load_audio(bytesTEST_FILE) # 将加载的音频数据转换为Cython的NumPy数组类型# 声明一个一维的 NumPy 数组 frames元素类型为 float32使用 c连续存储模式cdef cnp.ndarray[cnp.float32_t, ndim1, modec] frames temp# 打印转录的提示信息print(Transcribing..)# 调用Cython扩展中的whisper_full函数进行音频转录传递上下文、参数和音频数据的指针return whisper_full(self.ctx, self.params, frames[0], len(frames))def extract_text(self, int res):print(Extracting text...)if res ! 0:raise RuntimeErrorcdef int n_segments whisper_full_n_segments(self.ctx)return [whisper_full_get_segment_text(self.ctx, i).decode() for i in range(n_segments)]test.py from whispercpp import Whisperw Whisper(large,model_path /home/pdd/myassets/ggml-medium.bin) result w.transcribe(/home/pdd/le/pywhisper/output.wav) # result w.transcribe(myfile.mp3) text w.extract_text(result) print(text)# git clone --recurse-submodules https://github.com/stlukey/whispercpp.py.git cdef class Whisper:cdef whisper_context * ctxcdef whisper_full_params paramsdef __init__(self, modelDEFAULT_MODEL,model_path None ,pbNone, bufNone):model_fullname fggml-{model}.bindownload_model(model_fullname)if model_pathNone:model_path Path(MODELS_DIR).joinpath(model_fullname) cdef bytes model_b str(model_path).encode(utf8)if buf is not None:self.ctx whisper_init_from_buffer(buf, buf.size)else:self.ctx whisper_init_from_file(model_b)self.params default_params()whisper_print_system_info()$ pip install numpy $ python setup.py build $ python setup.py install /home/pdd/anaconda3/envs/mwi/lib/python3.10/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. !!********************************************************************************Please avoid running setup.py directly.Instead, use pypa/build, pypa/installer or otherstandards-based tools.See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.********************************************************************************!!self.initialize_options() /home/pdd/anaconda3/envs/mwi/lib/python3.10/site-packages/setuptools/_distutils/cmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated. !!********************************************************************************Please avoid running setup.py and easy_install.Instead, use pypa/build, pypa/installer or otherstandards-based tools.See https://github.com/pypa/setuptools/issues/917 for details.********************************************************************************!!self.initialize_options() zip_safe flag not set; analyzing archive contents... __pycache__.whispercpp.cpython-310: module references __file__ /home/pdd/anaconda3/envs/mwi/lib/python3.10/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in setup.cfg !!********************************************************************************The license_file parameter is deprecated, use license_files instead.This deprecation is overdue, please update your project and remove deprecatedcalls to avoid build errors in the future.See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.********************************************************************************!!parsed self.parsers.get(option_name, lambda x: x)(value) warning: no files found matching *.au under directory tests warning: no files found matching *.gif under directory tests warning: no files found matching *.txt under directory tests /home/pdd/anaconda3/envs/mwi/lib/python3.10/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. !!********************************************************************************Please avoid running setup.py directly.Instead, use pypa/build, pypa/installer or otherstandards-based tools.See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.********************************************************************************!!self.initialize_options() zip_safe flag not set; analyzing archive contents... future.backports.test.__pycache__.ssl_servers.cpython-310: module references __file__ future.backports.test.__pycache__.support.cpython-310: module references __file__ future.standard_library.__pycache__.__init__.cpython-310: module references __file__ future.standard_library.__pycache__.__init__.cpython-310: module references __path__ future.utils.__pycache__.__init__.cpython-310: module MAY be using inspect.stack past.builtins.__pycache__.misc.cpython-310: module MAY be using inspect.stack past.translation.__pycache__.__init__.cpython-310: module references __file__ past.translation.__pycache__.__init__.cpython-310: module references __path__ Adding future 0.18.3 to easy-install.pth file detected new path ./charset_normalizer-3.3.2-py3.10-linux-x86_64.egg Installing futurize script to /home/pdd/anaconda3/envs/mwi/bin Installing pasteurize script to /home/pdd/anaconda3/envs/mwi/binInstalled /home/pdd/anaconda3/envs/mwi/lib/python3.10/site-packages/future-0.18.3-py3.10.egg Searching for numpy1.26.3 Best match: numpy 1.26.3 Adding numpy 1.26.3 to easy-install.pth file detected new path ./future-0.18.3-py3.10.egg Installing f2py script to /home/pdd/anaconda3/envs/mwi/binUsing /home/pdd/anaconda3/envs/mwi/lib/python3.10/site-packages Finished processing dependencies for whispercpp1.0CG Python 的 .py 与 Cython 的 .pxd .pyx .pyd 文件格式之间的主要区别 pip install githttps://github.com/stlukey/whispercpp.py $ pip install githttps://github.com/stlukey/whispercpp.py Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com Collecting githttps://github.com/stlukey/whispercpp.pyCloning https://github.com/stlukey/whispercpp.py to /tmp/pip-req-build-a3w_pl8yRunning command git clone --filterblob:none --quiet https://github.com/stlukey/whispercpp.py /tmp/pip-req-build-a3w_pl8yResolved https://github.com/stlukey/whispercpp.py to commit 7af678159c29edb3bc2a51a72665073d58f2352fRunning command git submodule update --init --recursive -qInstalling build dependencies ... doneGetting requirements to build wheel ... donePreparing metadata (pyproject.toml) ... done Collecting numpy (from whispercpp1.0)Downloading numpy-1.26.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (61 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.2/61.2 kB 455.1 kB/s eta 0:00:00 Collecting ffmpeg-python (from whispercpp1.0)Downloading ffmpeg_python-0.2.0-py3-none-any.whl (25 kB) Collecting requests (from whispercpp1.0)Downloading requests-2.31.0-py3-none-any.whl.metadata (4.6 kB) Collecting future (from ffmpeg-python-whispercpp1.0)Downloading future-0.18.3.tar.gz (840 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 840.9/840.9 kB 766.4 kB/s eta 0:00:00Preparing metadata (setup.py) ... done Collecting charset-normalizer4,2 (from requests-whispercpp1.0)Downloading charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (33 kB) Collecting idna4,2.5 (from requests-whispercpp1.0)Downloading idna-3.6-py3-none-any.whl.metadata (9.9 kB) Collecting urllib33,1.21.1 (from requests-whispercpp1.0)Downloading urllib3-2.1.0-py3-none-any.whl.metadata (6.4 kB) Collecting certifi2017.4.17 (from requests-whispercpp1.0)Downloading certifi-2023.11.17-py3-none-any.whl.metadata (2.2 kB) Downloading numpy-1.26.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.2 MB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 18.2/18.2 MB 1.2 MB/s eta 0:00:00 Downloading requests-2.31.0-py3-none-any.whl (62 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.6/62.6 kB 1.3 MB/s eta 0:00:00 Downloading certifi-2023.11.17-py3-none-any.whl (162 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 162.5/162.5 kB 1.2 MB/s eta 0:00:00 Downloading charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (142 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 142.1/142.1 kB 1.2 MB/s eta 0:00:00 Downloading idna-3.6-py3-none-any.whl (61 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.6/61.6 kB 1.4 MB/s eta 0:00:00 Downloading urllib3-2.1.0-py3-none-any.whl (104 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 104.6/104.6 kB 1.1 MB/s eta 0:00:00 Building wheels for collected packages: whispercpp, futureBuilding wheel for whispercpp (pyproject.toml) ... doneCreated wheel for whispercpp: filenamewhispercpp-1.0-cp310-cp310-linux_x86_64.whl size282976 sha2564d3d98884e99b8b884435550b64ef03f5b47bac9348b90c75b45f350fb24f82cStored in directory: /tmp/pip-ephem-wheel-cache-k94yja86/wheels/66/a1/a8/e5b342b3d6d1b65b787546ee9d5a1d948c8ab3db3c879d7df1Building wheel for future (setup.py) ... doneCreated wheel for future: filenamefuture-0.18.3-py3-none-any.whl size492024 sha256672e398dc922fcc5cc49da626a356ed3c27f184cc2811e11438c9e51d0a7f60dStored in directory: /tmp/pip-ephem-wheel-cache-k94yja86/wheels/5e/a9/47/f118e66afd12240e4662752cc22cefae5d97275623aa8ef57d Successfully built whispercpp future Installing collected packages: urllib3, numpy, idna, future, charset-normalizer, certifi, requests, ffmpeg-python, whispercpp Successfully installed certifi-2023.11.17 charset-normalizer-3.3.2 ffmpeg-python-0.2.0 future-0.18.3 idna-3.6 numpy-1.26.3 requests-2.31.0 urllib3-2.1.0 whispercpp-1.0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/927493.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dede视频网站宣城市住房和城乡建设局网站首页

关注公号【逆向通信猿】更精彩!!! 1. 构造编码器对象 采用MATLAB内置的comm.LDPCEncoder构造编码器对象,其中使用默认的校验矩阵,信息位长32400比特,码长64800比特,该校验矩阵中除第一行中1的个数为6个外,其余行中1的个数均为7;前12960列中1的个数为8,后32400列构成…

如何备份一个网站广西住建局

1. C/C++ IDE 安装Clion Nova和VsCode 2. 编译器 2.1 g++ 当程序比较小时,安装g++编译器进行编译,常用命令如下: // 安装g++ sudo apt-get install g++ // 默认生成a.out的可执行文件 g++ main.cpp // 生成其他名字的可执行文件 g++ main.cpp -o exe_name2.2 cmake 当…

网站开发一次性费用网站建设公司发展方向及趋势

2020年9月10日,亚马逊通技术服务(北京)有限公司(AWS中国)与毕马威企业咨询(中国)有限公司(毕马威中国)宣布已签署战略合作协议。 双方将充分利用各自的全球品牌影响力和资…

深入解析:PostgreSQL向量检索:pgvector入门指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

网贷之家网站建设你访问的网站正在建设

以上问题在编译器中出现可以在编译器中最上面加入: #define_CRT_SECURE_NO_WARNINGS 或者将scanf修改为scanf_s 一定要在最上端!!!最上端!!!最上端加入!!! 虽…

Allow or block media autoplay in Firefox

https://support.mozilla.org/en-US/kb/block-autoplay

寺庙网站开发文案wordpress免费主题插件下载

前文:最近跟着DataWhale组队学习这一期“Sora原理与技术实战”,本篇博客主要是基于DataWhale成员、厦门大学平潭研究院杨知铮研究员分享的Sora技术原理详解课件内容以及参考网上一些博客资料整理而来(详见文末参考文献)&#xff0…

[WC2018] 即时战略

[WC2018] 即时战略分享一下全局平衡二叉树的做法。 先讲下部分分。 \(n\le 100,T\le 10000\) 从 \(1\) 开始 DFS,对于当前 \(u\),枚举点 \(v\),如果 \(\text{explore}(u,v)\) 不为 \(fa_u\),则 \(v\) 为 \(u\) 子结…

商城网站源码大全微网站建站

怎么解决java导出excel时文件名乱码发布时间:2020-06-19 16:59:00来源:亿速云阅读:137作者:元一java解决导出Excel时文件名乱码的方法示例:String agent request.getHeader("USER-AGENT").toLowerCase();re…

实用指南:Unity学习之C#的反射机制

实用指南:Unity学习之C#的反射机制pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco…

电子政务网站建设参考文献wdcp 网站打不开

一金融机构在近期发生了一起数据泄露事件。 经过调查,发现是由于一名员工将包含客户敏感信息的文件通过电子邮件发送给了未经授权的第三方。 这一事件导致客户数据泄露,给该机构带来了严重的声誉损失和信任危机。 这一案例凸显了数据防泄漏系统的重要性…

网站开发 数据库深圳制作网站

1、背景介绍 重装win10系统,重装Python。在坑出现之前,已经完成了Python的安装(D盘),并且在系统中添加了环境变量。由于平时需要用到Python2.7和Python3.6,这里将对应的解释器分别改名为Python2和Python3。…

HDF5文件 ——之三

H5G、H5L、H5O 是 HDF5 C API 的分组接口,在 HDF.PInvoke.NETStandard(C# 的 HDF5 封装包)里,它们分别代表 HDF5 底层 对象层(Object layer)、组层(Group layer) 和 链接层(Link layer) 的操作模块。🧱 一…

MySQL库的操作(ubuntu) - 教程

MySQL库的操作(ubuntu) - 教程2025-10-04 19:34 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !importan…

创业做社交网站有哪些做一个网站 多少钱

1)熟悉之前的SysUser登录流程 过滤器链验证配置 这里security过滤器链增加了前置过滤器链jwtFilter 该过滤器为我们自定义的,每次请求都会经过jwt验证 ok我们按ctrl alt B跳转过去来看下 首先会获取登录用户LoginUser 内部通过header键,获…

代码随想录算法训练营|Day 25

Day 25 第七章 回溯算法 part04 491.递增子序列 本题和大家刚做过的 90.子集II 非常像,但又很不一样,很容易掉坑里。 https://programmercarl.com/0491.递增子序列.html 视频讲解:https://www.bilibili.com/video/B…

深入解析:SAE J3072-2024插电式电动汽车(PEV)中的车载逆变器系统安全标准介绍

深入解析:SAE J3072-2024插电式电动汽车(PEV)中的车载逆变器系统安全标准介绍pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-…

冷僻模板整理

min25筛 可以低于线性的解决1到N中的质数的k次幂的求和的问题,并且在处理了N之后对于1到N中数论分块所需的点x(l,r)都可以通过val=g[ID(x)]以O(1)的代价获取到 如果不需要多次查询,建议把命名空间外的定义放到m…

参考文献网站开发电商网站平台有哪些功能

1、Lambda表达式 Lambda表达式是Java8的新特性。 组成Lambda表达式的三个要素:形式参数,箭头操作符,代码块 Lambda表达式的格式:(形式参数) -> {代码块} //如:(int a, int b) -> {return a b;}形式参数&…

深入解析:精读C++20设计模式——行为型设计模式:命令模式

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …