黑彩网站建设/营销型网站建设实训总结

黑彩网站建设,营销型网站建设实训总结,有每天做任务赚钱的网站吗,网站开发任务书模板背景 前阵给孩子做电子相册学了点剪辑技术,就想凑个热闹剪剪短剧玩玩,一是学以 致用,再者也好奇短剧创作为啥这么火,跟个风。 初步了解情况后,发现我的剪辑技术已经落后了,行家们玩的主要是解说 &#xf…

背景

前阵给孩子做电子相册学了点剪辑技术,就想凑个热闹剪剪短剧玩玩,一是学以 致用,再者也好奇短剧创作为啥这么火,跟个风。

初步了解情况后,发现我的剪辑技术已经落后了,行家们玩的主要是解说 , 并且剪辑和解说AI也都会了。真的这么牛吗,最近我也一直在关注各种AI工具,因此花了两个晚上的时间研究体验了一下AI剪辑视频。本着能用免费技术决不充值的原则,在对比了各种AI工具后,选择了NarrotoAI这款体验了一下。体验之后的结果是,我感觉我又行了。

申明: 本文纯技术贴。

短剧剪辑不仅是内容创作的热门领域,更是学习AI技术的绝佳实践场景。通过将AI工具深度融入短剧制作的各个环节(如解说台词生成、脚本生成,自动剪辑等),创作者可在完成作品的同时,系统掌握前沿技术,文中涉及大量AI相关工具,全部可以免费获得

如果您在复刻过程中遇到问题,请关注并留言交流

环境要求

环境就用现成的,我手上就有一台huawei matebook pro 笔记本, 操作系统win11。

  • 硬件配置
    • CPU:i7-1260P(12核16线程,4.7GHz睿频)可高效处理视频解析与剪辑任务58。
    • GPU:Iris Xe显卡(96 EU)支持视频编解码加速,需安装最新驱动以启用硬件加速86。Intel® Iris® Xe Graphics
  • 软件工具
    • Python 3.8+:推荐使用Anaconda管理环境。
    • FFmpeg:用于视频处理,需添加到系统环境变量。
    • Git:克隆代码仓库。

Anaconda安装

已有公众号文章《人工智能学习必备工具之-Anaconda3安装、配置及优化》https://mp.weixin.qq.com/s/karflR2eWIOmb4NcMIrD3Q进行了详细介绍。

视频工具

安装 ImageMagick

ImageMagick 是一款功能强大的开源图像处理软件套件。具体介绍如下:

  • 特点
    • 跨平台性:可在 Linux、Windows、Mac OS 等大多数非专有的操作系统上运行。
    • 免费开源:遵守 GPL 许可协议,全部源码开放,可自由使用、复制、修改和发布。
    • 语言支持广泛:支持 Perl、C、C++、Python、PHP、Ruby、Java 等编程语言,并提供了相应的接口。
  • 功能
    • 格式转换:能将图像在超过 200 种格式之间相互转换,如常见的 JPEG、PNG、GIF、TIFF,以及特殊的 RAW、SVG 等格式。
    • 基本变换:可以对图像进行改变尺寸、旋转、裁剪、翻转、修剪等操作。
    • 特效处理:具备模糊、锐化、阈值处理、色彩调整等特效功能。
    • 动画制作:能够将一组图片制作成 GIF 动画。
    • 图像合成与编辑:可将几张图片合成为一张组合图片,还能在图片上添加文字、图形,为图片加边框或框架等。
  • 应用场景
    • Web 开发:自动生成缩略图、优化图像格式,提升网页加载速度。
    • 电商平台:批量处理商品图像,如裁剪、加水印、统一格式等。
    • 数据分析与机器学习:对数据集中的图像进行预处理,如调整大小、去噪等。
    • 个人项目:批量整理图片、生成相册或进行日常图像处理。

ImageMagick下载地址:https://imagemagick.org/archive/binaries/ImageMagick-7.1.1-40-Q16-x64-static.exe

安装之后 ,打开 cmd验证一下能否正常运行:

image-20250227201136922

FFmpeg安装

ffmpeg官方:https://www.ffmpeg.org/download.html。

安装之后验证一下:
在这里插入图片描述

安装NarratoAI

介绍

支持阿里QwenVL大模型,国内网络可用;支持短剧混剪功能,十分钟精彩不断;新增一键合并视频和字幕。

  1. 支持阿里QwenVL大模型,国内网络可用
    这次升级有了QwenVL大模型的视频理解能力,而且国内网络就能用,还有免费额度哦。
  2. 支持短剧混剪功能,十分钟精彩不断
    工具现在支持短剧混剪,最长支持解析 10 分钟的视频。
  3. 优化时间戳到毫秒级,剪辑超精准
    时间戳精确到毫秒了,这对剪辑特别有用。
  4. 新增一键合并视频和字幕,素材整理快人一步
    新增的合并视频和字幕功能很方便。
  5. 脚本上传,创作按部就班
    有了脚本上传功能
  6. 一键清理缓存,工具运行超流畅
    要是工具用久了有点卡,别担心。
  7. 一键转录超便捷,文字提取超轻松
    这个一键转录功能超实用。
  8. 支持 TTS生成失败支持自动重试

NarratoAI下载代码

# 克隆代码仓库
$ git clone https://github.com/linyqh/NarratoAI.git
Cloning into 'NarratoAI'...
remote: Enumerating objects: 1198, done.
remote: Counting objects: 100% (290/290), done.
remote: Compressing objects: 100% (131/131), done.
remote: Total 1198 (delta 178), reused 161 (delta 159), pack-reused 908 (from 2)
Receiving objects: 100% (1198/1198), 7.30 MiB | 3.15 MiB/s, done.
Resolving deltas: 100% (759/759), done.

image-20250223124641966

配置python虚拟环境

直接使用pip安装依赖包,会出一些安装错误,解决起来比较费时间,推荐使用Anaconda3环境

# 创建 python 虚拟环境
conda create -n env_name python=3.10 -y
conda activate env_name
python -V#执行结果如下: 
(base) C:\Users\seane>conda activate env_name
(env_name) C:\Users\seane>python -V
Python 3.10.16(env_name) C:\Users\seane>

安装NarratoAI依赖库

#进入前面下载的代码目录 
cd NarratoAI# 安装依赖,如果出错,请参考后文中问题总结 
pip install -r requirements.txt# 安装 pytorch (无 GPU 的电脑可选)
pip3 install torch torchvision torchaudio

注: 针对于intel集成显卡的(huawei matebook pro 2022)的pytorch的安装将在后续的文章中详细介绍。pytorch是一个python的AI工具套件,基于intel集成显卡的pytorch在性能上要优于基于cpu的版本。

安装 成后 窗口显示 如下:

Successfully installed aiohappyeyeballs-2.4.6 aiohttp-3.10.11 aiosignal-1.3.2 altair-5.5.0 anyio-4.8.0 appdirs-1.4.4 attrs-25.1.0 av-12.3.0 azure-cognitiveservices-speech-1.37.0 blinker-1.9.0 brotli-1.1.0 cachetools-5.5.2 certifi-2025.1.31 chardet-5.2.0 charset-normalizer-3.4.1 click-8.1.8 colorama-0.4.6 coloredlogs-15.0.1 ctranslate2-4.5.0 dashscope-1.15.0 decorator-4.4.2 distro-1.9.0 edge-tts-6.1.19 fastapi-0.115.8 faster-whisper-1.0.3 flatbuffers-25.2.10 frozenlist-1.5.0 g4f-0.3.0.10 git-changelog-2.5.3 gitdb-4.0.12 gitpython-3.1.44 google-ai-generativelanguage-0.6.15 google-api-core-2.24.1 google-api-python-client-2.161.0 google-auth-2.38.0 google-auth-httplib2-0.2.0 google.generativeai-0.8.4 googleapis-common-protos-1.68.0 grpcio-1.70.0 grpcio-status-1.70.0 h11-0.14.0 httpcore-1.0.7 httplib2-0.22.0 httpx-0.27.2 huggingface-hub-0.29.1 humanfriendly-10.0 idna-3.10 imageio-2.37.0 imageio_ffmpeg-0.6.0 jiter-0.8.2 joblib-1.4.2 jsonschema-4.23.0 jsonschema-specifications-2024.10.1 loguru-0.7.3 markdown-it-py-3.0.0 mdurl-0.1.2 moviepy-2.0.0.dev2 multidict-6.1.0 narwhals-1.27.1 onnxruntime-1.20.1 openai-1.53.1 opencv-python-4.10.0.84 pandas-2.2.3 pillow-10.3.0 proglog-0.1.10 propcache-0.3.0 proto-plus-1.26.0 protobuf-5.29.3 pyarrow-19.0.1 pyasn1-0.6.1 pyasn1-modules-0.4.1 pycryptodome-3.21.0 pydantic-2.6.4 pydantic-core-2.16.3 pydeck-0.9.1 pydub-0.25.1 pygments-2.19.1 pyparsing-3.2.1 pyreadline3-3.5.4 pysrt-1.1.2 python-dateutil-2.9.0.post0 python-dotenv-1.0.1 python-multipart-0.0.20 pytz-2025.1 pyyaml-6.0.2 redis-5.0.3 referencing-0.36.2 regex-2024.11.6 requests-2.31.0 rich-13.9.4 rpds-py-0.23.1 rsa-4.9 safetensors-0.5.2 scikit-learn-1.5.2 scipy-1.15.2 semver-3.0.4 six-1.17.0 smmap-5.0.2 sniffio-1.3.1 starlette-0.45.3 streamlit-1.40.2 tenacity-9.0.0 threadpoolctl-3.5.0 tiktoken-0.8.0 tokenizers-0.21.0 toml-0.10.2 tomli-2.0.2 tornado-6.4.2 tqdm-4.67.1 transformers-4.47.0 tzdata-2025.1 uritemplate-4.1.1 urllib3-2.2.3 uvicorn-0.27.1 watchdog-5.0.2 win32-setctime-1.2.0 yarl-1.18.3 yt-dlp-2024.11.18

AI模型准备

语音模型Whisper

Whisper 模型用于生成字幕,转录视频,CPU和GPU均可运行,默认CPU;GPU会更快

  1. 下载地址:https://huggingface.co/guillaumekln/faster-whisper-large-v2

  2. 解压到narotoAI目: NarratoAI/app/models

    image-20250223124107557

预训练语言模型bert

  1. 下载 bert 模型: github.com

  2. 解压文件

    image-20250223125005285

视频理解模型(Gemini)

Gemini是用于视频理解的大模型 ,是一个在线推荐模型,可通过api访问,需要申请 api key。

注:如果无法访问google网站,可跳转到下一个章节,使用基于qwen的视频模型。

  1. 访问Google AI Studio申请API Key。

    image-20250227220425085

  2. 注册并登陆: Get api key, 并保存,留待后面配置使用。

    image-20250220142530146

image-20250223155458416

视频理解模型(QwenVL)

  1. 登陆https://bailian.console.aliyun.com/, 注册账号

  2. 实名认证账号中心

  3. 开通模型

    image-20250227220843108

  4. 选择 VL-max latest

    image-20250223225339427

  5. 申请api key 并保存,留待后面配置使用。

运行及配置修改

首次运行生成配置文件

**注: 先配置python虚拟 环境后再运行工具。**激活方法参考前面章节。

首次运行NarratoAI后,会在NarratoAI目录下生成配置文件:config.toml。

(pytorch251) d:\code\NarratoAI>streamlit run webui.pyWelcome to Streamlit!If you’d like to receive helpful onboarding emails, news, offers, promotions,and the occasional swag, please enter your email address below. Otherwise,leave this field blank.Email:You can find our privacy policy at https://streamlit.io/privacy-policySummary:- This open source library collects usage statistics.- We cannot see and do not store information contained inside Streamlit apps,such as text, charts, images, etc.- Telemetry data is stored in servers in the United States.- If you'd like to opt out, add the following to %userprofile%/.streamlit/config.toml,creating that file if necessary:[browser]gatherUsageStats = falseYou can now view your Streamlit app in your browser.Local URL: http://localhost:8501Network URL: http://192.168.1.14:85012025-02-23 15:45:16.758 | INFO     | app.config.config:load_config:20 - copy config.example.toml to config.toml
2025-02-23 15:45:16.774 | INFO     | app.config.config:load_config:22 - load config from file: D:\code\NarratoAI/config.toml
2025-02-23 15:45:16.803 | INFO     | app.config.config:<module>:71 - NarratoAI v0.3.9
2025-02-23 15:46:01 | INFO | "./app\utils\utils.py:589": init_resources - 已复制系统字体: simhei.ttf
2025-02-23 15:46:02.242 Examining the path of torch.classes raised: Tried to instantiate class '__path__._path', but it does not exist! Ensure that it is registered via torch::class_

基本配置

Gemini API Key(vision_gemini_api_key)

将申请到API Key填入项目根目录的config.toml文件:

    ########## Vision Gemini API Keyvision_gemini_api_key = "xxxx"

image-20250227220634282

text_openai_api_key

生成文案的大模型 API Key;建议不要再使用 Gemini 模型生成文案。国内有很多免费好用的api接口可用。比如 火山方舟的doubao, Deepseek等。

image-20250227221046110

ImageMagick路径指定

image-20250227221125903

ffmpeg路径指定

ffmpeg_path = "D:\\AppGallery\\bin\\ffmpeg.exe"

proxy.http 和 proxy.https

image-20250223155753603

配置字体和BGM

  1. 下载字体文件

下载地址:https://zenodo.org/records/13293144/files/STHeitiMedium.ttc

放置目录: NarratoAI\resource\fonts

  1. 下载BGM文件
    1. 下载地址:https://zenodo.org/records/13293150/files/output000.mp3

    2. 放置目录: NarratoAI\resource\songs

再次运行

修改完配置文件后,再次启动NarratoAI

(pytorch251) d:\code\NarratoAI>streamlit run webui.py

  • 浏览器访问:

http://localhost:8501/

QwenVL 模型配置(国内使用强烈推荐)

如果Gemini模型无法访问,建议切换到QwenVL模型。

  1. 将之前申请的api key配置到 NarratoAI web界面中,

  2. 测试连接,显示 QwenVL 模型可用

    image-20250223214820009

视频剪辑实例

视频分析实例一:生成解说脚本

选择脚本 模板,并上传视频 文件,文件小于200M, 大文件可按提示保存到NarratoAI\resource\videos

上传一个视频后,点击AI生成画面解说脚本 。

[{"timestamp": "00:00:38,500-00:00:38,500","picture": "画面中显示两个人在一个室内环境中。左边的人背对着镜头,穿着深色上衣和红色裤子,头发扎成马尾。右边的人面向镜头,穿着同样的深色上衣和红色裤子,双手张开,似乎在做某种动作或表演。背景是一扇白色的门和浅蓝色的墙壁,地板是灰色的瓷砖。画面上方有红色的文字“来到你的面前”,右下角有抖音的标志和一些文字信息。","narration": "俩同款着装室内整活","OST": 2,"new_timestamp": "00:00:00,000-00:00:00,000"}
]

后台 信息:

UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 1579: illegal multibyte sequence
2025-02-23 22:58:51 | INFO | "./app\utils\video_processor_v2.py:312": process_video_pipeline -
步骤2: 从压缩视频提取关键帧...
2025-02-23 22:58:51 | INFO | "./app\utils\video_processor_v2.py:234": process_video - 读取视频帧...
读取视频: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 7319/7319 [00:06<00:00, 1049.69it/s]
2025-02-23 22:58:58 | INFO | "./app\utils\video_processor_v2.py:246": process_video - 检测场景边界...█████████████████████████████████████████████████████████████████▍| 7289/7319 [00:06<00:00, 373.21it/s]
2025-02-23 22:59:08 | INFO | "./app\utils\video_processor_v2.py:248": process_video - 检测到 1 个场景边界2025-02-23 22:59:17 | INFO | "./app\utils\video_processor_v2.py:290": process_video_pipeline - 步骤1: 压缩视频...                                                                      | 0/1 [00:00<?, ?it/s]
Exception in thread Thread-69 (_readerthread):
Traceback (most recent call last):File "D:\AppGallery\Anaconda3\envs\pytorch251\Lib\threading.py", line 1075, in _bootstrap_innerself.run()File "D:\AppGallery\Anaconda3\envs\pytorch251\Lib\threading.py", line 1012, in runself._target(*self._args, **self._kwargs)File "D:\AppGallery\Anaconda3\envs\pytorch251\Lib\subprocess.py", line 1601, in _readerthreadbuffer.append(fh.read())^^^^^^^^^
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa2 in position 1603: illegal multibyte sequence
2025-02-23 22:59:27 | INFO | "./app\utils\video_processor_v2.py:312": process_video_pipeline -
步骤2: 从压缩视频提取关键帧...
2025-02-23 22:59:28 | INFO | "./app\utils\video_processor_v2.py:234": process_video - 读取视频帧...
读取视频: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3359/3359 [00:11<00:00, 295.50it/s]
2025-02-23 22:59:39 | INFO | "./app\utils\video_processor_v2.py:246": process_video - 检测场景边界...
2025-02-23 22:59:48 | INFO | "./app\utils\video_processor_v2.py:248": process_video - 检测到 1 个场景边界████████████████████████████████████████████████████████████▏ | 3319/3359 [00:10<00:00, 456.36it/s]
提取关键帧: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:56<00:00, 56.25s/it]
保存压缩关键帧: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 16.25it/s]
2025-02-23 23:00:47 | INFO | "./app\utils\video_processor_v2.py:317": process_video_pipeline - ███████████████████████████████████████████████████████████████████████████████| 1/1 [00:56<00:00, 56.23s/it]
步骤3: 提取高清关键帧...                                                                                                                                                              | 0/1 [00:00<?, ?it/s]
提取高清帧: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  2.83it/s]
2025-02-23 23:00:47 | INFO | "./app\utils\video_processor_v2.py:194": extract_frames_by_numbers - 共提取了 1 个不同时间戳的帧
2025-02-23 23:00:47 | INFO | "./app\utils\video_processor_v2.py:325": process_video_pipeline - 处理完成!高清关键帧保存在: .\storage\temp\keyframes\37d1b60812267477b6ac5d5c610b737d[00:00<00:00,  2.84it/s]
2025-02-23 23:00:48 | INFO | "./app\utils\video_processor_v2.py:370": process_video_pipeline - 临时文件已清理
2025-02-23 23:00:48 | DEBUG | "./webui\tools\generate_script_docu.py:106": generate_script_docu - Vision LLM 提供商: qwenvl
2025-02-23 23:00:49 | INFO | "./app\utils\qwenvl_analyzer.py:121": analyze_images - 正在加载图片...
分析进度: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:04<00:00,  4.82s/it]
2025-02-23 23:00:56 | DEBUG | "./webui\tools\generate_script_docu.py:162": generate_script_docu - 批次 0 处理完成,共 1 张图片
2025-02-23 23:00:56 | DEBUG | "./webui\tools\generate_script_docu.py:166": generate_script_docu - 处理时间戳: 00:00:38,500-00:00:38,500███████████████████████████████████████| 1/1 [00:04<00:00,  4.81s/it]
2025-02-23 23:00:56 | DEBUG | "./webui\tools\generate_script_docu.py:211": generate_script_docu - 添加帧内容: 时间范围=00:00:38,500-00:00:38,500, 分析结果长度=149
2025-02-23 23:00:58 | INFO | "./app\utils\script_generator.py:319": __init__ - 文本 LLM 提供商: ep-20241231163508-gh4jr
2025-02-23 23:00:59 | WARNING | "./app\utils\script_generator.py:101": __init__ - 未找到模型 ep-20241231163508-gh4jr 的专用编码器,使用默认编码器
2025-02-23 23:01:23 | DEBUG | "./app\utils\script_generator.py:430": calculate_duration_and_word_count - 时间范围 00:00:38,500-00:00:38,500 的持续时间为 0.000秒, 估算字数: 10
2025-02-23 23:01:24 | INFO | "./app\utils\script_generator.py:443": process_frames - 时间范围: 00:00:38,500-00:00:38,500, 建议字数: 10
2025-02-23 23:01:24 | INFO | "./app\utils\script_generator.py:444": process_frames - 俩同款着装室内整活
2025-02-23 23:01:24 | INFO | "./app\utils\script_generator.py:514": _save_results - 保存脚本成功,总时长: 00:00:00,000
2025-02-23 23:01:24 | INFO | "./webui\tools\generate_script_docu.py:253": generate_script_docu - 脚本生成完成
2025-02-23 23:01:39.776 Examining the path of torch.classes raised: Tried to instantiate class '__path__._path',

视频自动解说案例二:短剧剪辑

跟上一节操作方法一样,上传视频 ,生成解说 脚本 ,以后按照以下顺序,依次“脚本格式检查” -> “保存脚本” -> “裁剪视频” -> “生成视频”

image-20250224100438061

裁剪视频成功:

image-20250227221425493

生成视频成功:

image-20250224100602924

处理过程日志

2025-02-24 10:04:55.761 | INFO     | __main__:render_generate_button:128 - 开始生成视频2025-02-24 10:04:55.761 | INFO     | app.services.task:start_subclip:162 - ## 开始任务: 6d2dfc04-0de9-4fb3-aedb-6e200c49cead2025-02-24 10:04:55.796 | INFO     | app.services.task:start_subclip:173 - ## 1. 加载视频脚本2025-02-24 10:04:55.825 | DEBUG    | app.services.task:start_subclip:185 - 解说完整脚本: 
瞧瞧这几人各怀心思,围绕赎金展开拉扯啦 瞧这室内几人着装各异 拉扯还在继续 瞧这室内拉扯 各怀心思忙 看这室内众人 神色各有千秋 看这室内众人 神色各有千秋
黑皮女后绿装男 业务网游挖币 众人着装神态超有趣 众人着装神态妙后续更逗 众人着装神态妙后续更逗,且看这几人要弄啥幺蛾子 深色西装男先亮相,俩严肃女登场又有啥戏? 深绿西装男室内要干啥?2025-02-24 10:04:55.825 | DEBUG    | app.services.task:start_subclip:186 - 解说 OST 列表: 
[2, 2, 2, 2, 2, 2, 2, 2, 2, 2]2025-02-24 10:04:55.825 | DEBUG    | app.services.task:start_subclip:187 - 解说时间戳列表: 
['00:00:03,240-00:00:12,160', '00:00:14,000-00:00:22,079', '00:00:23,120-00:00:29,079', '00:00:30,440-00:00:36,960', '00:00:38,200-00:00:47,920', '00:00:48,759-00:00:52,679', '00:00:54,039-00:01:00,240', '00:01:01,840-00:01:11,079', '00:01:12,640-00:01:22,239', '00:01:24,319-00:01:26,719']2025-02-24 10:04:55.839 | INFO     | app.services.task:start_subclip:201 - ## 2. 根据OST设置生成音频列表2025-02-24 10:04:55.856 | DEBUG    | app.services.task:start_subclip:207 - 需要生成TTS的片段数: 102025-02-24 10:04:55.877 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:04:57.453 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_00,000-00_00_08,919.mp32025-02-24 10:04:57.453 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_00,000-00_00_08,919.mp32025-02-24 10:04:57.453 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:04:59.108 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_08,919-00_00_16,999.mp32025-02-24 10:04:59.108 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_08,919-00_00_16,999.mp32025-02-24 10:04:59.108 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:05:10.965 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_16,999-00_00_22,958.mp32025-02-24 10:05:10.965 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_16,999-00_00_22,958.mp32025-02-24 10:05:10.965 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:05:12.429 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_22,958-00_00_29,478.mp32025-02-24 10:05:12.445 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_22,958-00_00_29,478.mp32025-02-24 10:05:12.445 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:05:14.044 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_29,478-00_00_39,198.mp32025-02-24 10:05:14.060 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_29,478-00_00_39,198.mp32025-02-24 10:05:14.060 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:05:15.609 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_39,198-00_00_43,118.mp32025-02-24 10:05:15.610 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_39,198-00_00_43,118.mp32025-02-24 10:05:15.610 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:05:17.475 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_43,118-00_00_49,319.mp32025-02-24 10:05:17.486 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_43,118-00_00_49,319.mp32025-02-24 10:05:17.489 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:05:19.217 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_49,319-00_00_58,557.mp32025-02-24 10:05:19.217 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_49,319-00_00_58,557.mp32025-02-24 10:05:19.217 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:05:20.749 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_58,557-00_01_08,156.mp32025-02-24 10:05:20.749 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_00_58,557-00_01_08,156.mp32025-02-24 10:05:20.753 | INFO     | app.services.voice:azure_tts_v1:1074 - 第 1 次使用 edge_tts 生成音频2025-02-24 10:05:22.315 | INFO     | app.services.voice:azure_tts_v1:1109 - completed, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_01_08,156-00_01_10,556.mp32025-02-24 10:05:22.315 | INFO     | app.services.voice:tts_multiple:1375 - 已生成音频文件: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\audio_00_01_08,156-00_01_10,556.mp32025-02-24 10:05:22.318 | INFO     | app.services.task:start_subclip:228 - 合并音频文件: ['D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_00_00,000-00_00_08,919.mp3', 'D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_00_08,919-00_00_16,999.mp3', 'D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_00_16,999-00_00_22,958.mp3', 'D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_00_22,958-00_00_29,478.mp3', 'D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_00_29,478-00_00_39,198.mp3', 'D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_00_39,198-00_00_43,118.mp3', 'D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_00_43,118-00_00_49,319.mp3', 'D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_00_49,319-00_00_58,557.mp3', 'D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_00_58,557-00_01_08,156.mp3', 'D:\\code\\NarratoAI\\storage\\tasks\\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\\audio_00_01_08,156-00_01_10,556.mp3']2025-02-24 10:05:27.283 | INFO     | app.services.audio_merger:merge_audio_files:73 - 合并后的音频文件已保存: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\final_audio.mp32025-02-24 10:05:27.283 | INFO     | app.services.task:start_subclip:237 - 音频文件合并成功2025-02-24 10:05:27.299 | INFO     | app.services.task:start_subclip:263 - ## 3. 生成字幕、提供程序是: faster-whisper-large-v22025-02-24 10:05:27.299 | INFO     | app.services.subtitle:create:69 - 未检测到 CUDA,使用 CPU 模式2025-02-24 10:05:27.302 | INFO     | app.services.subtitle:create:78 - 使用 CPU 加载模型: ./app/models/faster-whisper-large-v22025-02-24 10:05:38.484 | INFO     | app.services.subtitle:create:86 - 模型加载完成,使用设备: cpu, 计算类型: int82025-02-24 10:05:38.484 | INFO     | app.services.subtitle:create:88 - start, output file: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\subtitle.srt2025-02-24 10:06:00.072 | INFO     | app.services.subtitle:create:101 - 检测到的语言: 'zh', probability: 1.002025-02-24 10:06:44.076 | DEBUG    | app.services.subtitle:recognized:114 - [0.00s -> 1.82s] 瞧瞧这几人各怀心思2025-02-24 10:06:44.077 | DEBUG    | app.services.subtitle:recognized:114 - [2.20s -> 3.84s] 围绕赎金展开拉扯了2025-02-24 10:06:44.078 | DEBUG    | app.services.subtitle:recognized:114 - [9.12s -> 11.00s] 瞧这室内几人着装各异2025-02-24 10:06:44.080 | DEBUG    | app.services.subtitle:recognized:114 - [11.36s -> 12.52s] 拉扯还在继续2025-02-24 10:06:44.081 | DEBUG    | app.services.subtitle:recognized:114 - [17.16s -> 18.36s] 瞧这室内拉扯2025-02-24 10:06:44.082 | DEBUG    | app.services.subtitle:recognized:114 - [18.72s -> 19.70s] 各怀心思忙2025-02-24 10:06:44.084 | DEBUG    | app.services.subtitle:recognized:114 - [23.14s -> 24.28s] 看这室内众人2025-02-24 10:06:44.085 | DEBUG    | app.services.subtitle:recognized:114 - [24.60s -> 25.86s] 神色各有千秋2025-02-24 10:06:44.086 | DEBUG    | app.services.subtitle:recognized:114 - [29.67s -> 30.77s] 看这室内众人2025-02-24 10:06:44.088 | DEBUG    | app.services.subtitle:recognized:114 - [31.11s -> 32.35s] 神色各有千秋2025-02-24 10:06:44.089 | DEBUG    | app.services.subtitle:recognized:114 - [33.03s -> 34.45s] 黑皮女后绿妆男2025-02-24 10:06:44.107 | DEBUG    | app.services.subtitle:recognized:114 - [34.81s -> 35.85s] 业务网游挖币2025-02-24 10:06:44.110 | DEBUG    | app.services.subtitle:recognized:114 - [39.38s -> 41.16s] 众人着装神态超有趣2025-02-24 10:06:44.112 | DEBUG    | app.services.subtitle:recognized:114 - [43.31s -> 44.65s] 众人着装神态妙2025-02-24 10:06:44.113 | DEBUG    | app.services.subtitle:recognized:114 - [44.91s -> 45.65s] 后续更逗2025-02-24 10:07:28.051 | DEBUG    | app.services.subtitle:recognized:114 - [51.67s -> 54.31s] 且看这几人要弄啥幺蛾子2025-02-24 10:07:28.052 | DEBUG    | app.services.subtitle:recognized:114 - [58.77s -> 60.45s] 深色西装男先亮相2025-02-24 10:07:28.052 | DEBUG    | app.services.subtitle:recognized:114 - [60.87s -> 61.99s] 雅颜素女登场2025-02-24 10:07:28.052 | DEBUG    | app.services.subtitle:recognized:114 - [62.19s -> 62.89s] 又有啥戏2025-02-24 10:07:28.052 | DEBUG    | app.services.subtitle:recognized:114 - [68.36s -> 70.42s] 深绿西装男室内要干啥2025-02-24 10:07:28.052 | INFO     | app.services.subtitle:create:164 - complete, elapsed: 87.97 s2025-02-24 10:07:28.052 | INFO     | app.services.subtitle:create:181 - subtitle file created: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\subtitle.srt2025-02-24 10:07:28.067 | INFO     | app.services.task:start_subclip:277 - ## 4. 裁剪视频2025-02-24 10:07:28.083 | INFO     | app.services.task:start_subclip:295 - ## 5. 合并视频: => .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\combined.mp42025-02-24 10:07:28.083 | INFO     | app.services.video:combine_clip_videos:130 - 音频的最大持续时间: 70.55699999999999 s2025-02-24 10:07:28.491 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-00-03_240-00-00-12_160.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:28.799 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-00-14_000-00-00-22_079.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:29.087 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-00-23_120-00-00-29_079.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:29.588 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-00-30_440-00-00-36_960.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:30.340 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-00-38_200-00-00-47_920.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:31.063 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-00-48_759-00-00-52_679.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:31.767 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-00-54_039-00-01-00_240.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:32.547 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-01-01_840-00-01-11_079.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:32.819 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-01-12_640-00-01-22_239.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:33.227 | INFO     | app.services.video:combine_clip_videos:155 - 视频 .\storage\temp\clip_video\860467a7beea883037e8925244df21a9\vid-00-01-24_319-00-01-26_719.mp4 已调整尺寸为 1080 x 19202025-02-24 10:07:33.243 | INFO     | app.services.video:combine_clip_videos:170 - 开始合并视频... (过程中出现 UserWarning: 不必理会)2025-02-24 10:08:26.147 | SUCCESS  | app.services.video:combine_clip_videos:184 - 视频合并完成2025-02-24 10:08:26.147 | INFO     | app.services.task:start_subclip:311 - ## 6. 最后合成: 1 => .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\final-1.mp42025-02-24 10:08:26.157 | WARNING  | app.utils.utils:get_bgm_file:153 - 在目录 .\resource\songs 中没有找到 MP3 或 FLAC 文件2025-02-24 10:08:26.657 | INFO     | app.services.video:generate_video_v3:331 - 读取到 20 条字幕2025-02-24 10:08:31.316 | INFO     | app.services.video:generate_video_v3:387 - 成功创建 20 条字幕剪辑2025-02-24 10:08:31.332 | DEBUG    | app.services.video:generate_video_v3:397 - 音量配置: {'original': 0.7, 'bgm': 0.3, 'narration': 1.0}2025-02-24 10:08:31.483 | INFO     | app.services.video:generate_video_v3:429 - 开始导出视频...
2025-02-24 10:10:58.073 | INFO     | app.services.video:generate_video_v3:436 - 视频已导出到: .\storage\tasks\6d2dfc04-0de9-4fb3-aedb-6e200c49cead\final-1.mp42025-02-24 10:10:58.079 | SUCCESS  | app.services.task:start_subclip:358 - 任务 6d2dfc04-0de9-4fb3-aedb-6e200c49cead 已完成, 生成 1 个视频.2025-02-24 10:10:58.321 | INFO     | __main__:render_generate_button:165 - 视频生成完成2025-02-24 10:10:58.508 | DEBUG    | webui.utils.performance:monitor_memory:12 - Memory usage: 2703.35 MB

image-20250224101140838

ref

Releases · linyqh/NarratoAI

首页 - 飞书云文档

使用说明 - 飞书云文档

快速上手 - 飞书云文档

使用源码构建 - 飞书云文档

Windows 整合包 - 飞书云文档

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

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

相关文章

计算机毕业设计Hadoop+Spark+DeepSeek-R1大模型音乐推荐系统 音乐数据分析 音乐可视化 音乐爬虫 知识图谱 大数据毕业设计

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…

Linux操作系统5-进程信号3(信号的捕捉流程,信号集,sigaction)

上篇文章&#xff1a;Linux操作系统5-进程信号3&#xff08;信号的保存, 用户态与内核态&#xff0c;内核空间&#xff09;-CSDN博客 本篇Gitee仓库&#xff1a;​​​​​​​myLerningCode/l26 橘子真甜/Linux操作系统与网络编程学习 - 码云 - 开源中国 (gitee.com) 本篇重点…

【机器学习chp10】降维——(核化)PCA + MDS + lsomap + 拉普拉斯特征映射 + t-NSE + UMAP

目录 一、降维的意义与本质 1、意义 2、本质 3、常见降维方法 &#xff08;1&#xff09;线性降维 &#xff08;2&#xff09;非线性降维 二、基于重构的降维 1、PCA 2、核化PCA &#xff08;1&#xff09;实现过程 步骤一&#xff1a;数据映射与核函数定义 步骤二…

CF 118A.String Task(Java实现)

题目分析 输入一个字符串&#xff0c;遍历每一个字符&#xff0c;如果是元音字母就删除&#xff0c;辅音字母就在其前面增加一个.&#xff0c;且所有字母输出都是小写。 思路分析 将输入的字符串改为字符数组&#xff0c;考虑到任意位置插入的情况&#xff0c;所以主要选择Lin…

DeepSeek在PiscTrace上完成个性化处理需求案例——光流法将烟雾动态可视化

引言&#xff1a;PiscTrace作为开放式的视图分析平台提供了固定格式的类型参数支持个性化定制处理需求&#xff0c;本文一步步的实现光流分析按照不同需求根据DeepSeek的代码处理视频生成数据。 光流法&#xff08;Optical Flow&#xff09;是一种基于图像序列的计算机视觉技术…

Linux网络 TCP全连接队列与tcpdump抓包

TCP全连接队列 在 Linux 网络中&#xff0c;TCP 全连接队列&#xff08;也称为 Accept 队列&#xff09;是一个重要的概念&#xff0c;用于管理已经完成三次握手&#xff0c;即已经处于 established 状态但尚未被应用程序通过 accept( ) 函数处理的 TCP 连接&#xff0c;避免因…

flex布局自定义一行几栏,靠左对齐===grid布局

模板 <div class"content"><div class"item">1222</div><div class"item">1222</div><div class"item">1222</div><div class"item">1222</div><div class"…

使用3090显卡部署Wan2.1生成视频

layout: post title: 使用3090显卡部署Wan2.1生成视频 catalog: true tag: [Kubernetes, GPU, AI] 使用3090显卡部署Wan2.1生成视频 1. 环境说明2. 模型下载3. 克隆仓库4. 安装依赖5. 生成视频 5.1. 使用generate脚本生成5.2. 使用gradio启动UI界面生成 5.2.1. 启动gradio服务5…

【新立电子】探索AI眼镜背后的黑科技,FPC如何赋能实时翻译与语音识别,点击了解未来沟通的新方式!

在全球化的今天&#xff0c;语言障碍成为人们沟通与交流的一大难题。AI眼镜作为一种新兴的智能设备&#xff0c;正在通过实时翻译与语音识别功能&#xff0c;打破语言壁垒&#xff0c;为人们提供无缝沟通的解决方案。FPC在AI眼镜中的应用&#xff0c;为实时翻译与语音识别功能的…

(十 三)趣学设计模式 之 模版方法模式!

目录 一、 啥是模板方法模式&#xff1f;二、 为什么要用模板方法模式&#xff1f;三、 模板方法模式的实现方式四、 模板方法模式的优缺点五、 模板方法模式的应用场景六、 总结 &#x1f31f;我的其他文章也讲解的比较有趣&#x1f601;&#xff0c;如果喜欢博主的讲解方式&a…

模型和数据集的平台之在Hugging Face上进行模型下载、上传以及创建专属Space

模型下载 步骤&#xff1a; 注册Hugging Face平台 https://huggingface.co/ 新建一个hf_download_josn.py 文件 touch hf_download_josn.py 编写hf_download_josn.py文件 import os from huggingface_hub import hf_hub_download# 指定模型标识符 repo_id "inter…

【弹性计算】弹性裸金属服务器和神龙虚拟化(二):适用场景

弹性裸金属服务器和神龙虚拟化&#xff08;二&#xff09;&#xff1a;适用场景 1.混合云和第三方虚拟化软件部署2.高隔离容器部署3.高质量计算服务4.高速低时延 RDMA 网络支持场景5.RISC CPU 支持6.GPU 性能无损输出 公共云服务提供商推出 弹性裸金属服务器&#xff0c;很显然…

kan与小波,和不知所云的画图

文章目录 小波应用范围与pde小波的名字 画图图(a)&#xff1a;数值解向量 \( u \)图(b)&#xff1a;数值解向量 \( v \)结论图4 小波 在你提供的代码中&#xff0c;小波变换&#xff08;Wavelet Transform&#xff09;被用于 KANLinear 类中。具体来说&#xff0c;小波变换在 …

细说STM32F407单片机RS485收发通信实例及调试方法

目录 一、硬件配置 1、RCC、DEBUG、CodeGenerator 2、USART3 3、 RS485_DIR 4、NVIC 二、软件设计 1、RS485的收发控制 2、main.c 三、运行调试 1、修改RS485_DIR为SET后需要延迟 2、向串口助手发送的数据不能太长 MCU上的串口UART&#xff08;USART&#xff09;是…

PDF工具 Candy Desktop(安卓)

PDF Candy Desktop&#xff08;安卓&#xff09; 今天给大家分享一个电脑端的PDF工具&#xff0c;里面的功能很多&#xff0c;主要涉及PDF编辑、转换等&#xff0c;不仅超级好用&#xff0c;而且免费&#xff01;剩下就不说了&#xff0c;兄弟们自行下载体验吧&#xff01; 「…

基于javaweb的SSM+Maven幼儿园管理系统设计和实现(源码+文档+部署讲解)

技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论…

golang安装(1.23.6)

1&#xff0e;切换到安装目录 cd /usr/local 2&#xff0e;下载安装包 wget https://go.dev/dl/go1.23.6.linux-amd64.tar.gz 3&#xff0e;解压安装包 sudo tar -C /usr/local -xzf go1.23.6.linux-amd64.tar.gz 4&#xff0e;配置环境变量 vi /etc/profile export PATH$…

【新手入门】SQL注入之盲注

一、引言 在我们的注入语句被带入数据库查询但却什么都没有返回的情况我们该怎么办? 例如应用程序返回到一个"通用的"的页面&#xff0c;或者重定向一个通用页面(可能为网站首页)。这时&#xff0c;我们之前学习的SQL注入的办法就无法使用了。这种情况我们称之为无…

DeepSeek-R1 大模型实战:腾讯云 HAI 平台 3 分钟极速部署指南

引言&#xff1a;为什么选择 DeepSeek-R1&#xff1f; 近期&#xff0c;国产大模型 DeepSeek-R1 因其低成本、高性能的特点在全球 AI 领域引发热议。根据 Sensor Tower 数据&#xff0c;其发布仅 18 天便斩获 1600 万次下载量&#xff0c;远超 ChatGPT 同期表现。而腾讯云推出…

【Pytest】setup和teardown的四个级别

文章目录 1.setup和teardown简介2.模块级别的 setup 和 teardown3.函数级别的 setup 和 teardown4.方法级别的 setup 和 teardown5.类级别的 setup 和 teardown 1.setup和teardown简介 在 pytest 中&#xff0c;setup 和 teardown 用于在测试用例执行前后执行一些准备和清理操…