网站建设文化策划书/网店培训骗局

网站建设文化策划书,网店培训骗局,做任务免费领取东西的网站,个人网站的设计的现状1.首先下载模型,加载模型 import torch import numpy as np import webrtcvad import pyaudio import queue import threading from datetime import datetime from faster_whisper import WhisperModel from transformers import AutoTokenizer, AutoModelForSeq2…

1.首先下载模型,加载模型

import torch
import numpy as np
import webrtcvad
import pyaudio
import queue
import threading
from datetime import datetime
from faster_whisper import WhisperModel
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM,pipeline
from transformers import T5ForConditionalGeneration, T5Tokenizer
device = "cuda:0" if torch.cuda.is_available() else "cpu"
torch_dtype = torch.float16
save_directory = "./faster-distil-whiper-large-v3-local"  # 替换为你希望保存的本地路径
# en_zh_directory = "./opus-mt-en-zh-local"  # 替换为你希望保存的本地路径
en_zh_directory = "./t5-translate-en-ru-zh-base-200-sent-local"  # 替换为你希望保存的本地路径
whisperModel = WhisperModel(save_directory, device="cuda", compute_type="float32")model = T5ForConditionalGeneration.from_pretrained(en_zh_directory)
model.eval()
model.to(device)
tokenizer = T5Tokenizer.from_pretrained(en_zh_directory)
vad = webrtcvad.Vad(3)  # 设置 VAD 灵敏度(0-3,3 最敏感)
prefix = 'translate to zh: '

2.配置麦克风

# 初始化 PyAudio
p = pyaudio.PyAudio()
# 设置音频流参数
FORMAT = pyaudio.paInt16  # 16-bit 音频格式
CHANNELS = 1              # 单声道
RATE = 16000              # 采样率(Whisper 需要 16kHz)
FRAME_DURATION = 20       # 每帧的时长(ms)
CHUNK = int(RATE * FRAME_DURATION / 1000)  # 每帧的帧数
MIN_SILENCE_DURATION = 0.2  # 最小静音时长(秒)

3.队列构建,构建录音基本参数

# 共享队列,用于录音和推理线程之间的数据交换
audio_queue = queue.Queue()silence_frames = 0
silence_frames_lock = threading.Lock()

4.构建录音函数

# 录音线程
def record_audio():global silence_framesstream = p.open(format=FORMAT,channels=CHANNELS,rate=RATE,input=True,frames_per_buffer=CHUNK,)print("开始录音...按 Ctrl+C 停止")try:while True:# 从麦克风读取音频数据data = stream.read(CHUNK)audio_data = np.frombuffer(data, dtype=np.int16).astype(np.float32) / 32768.0# 使用 VAD 检测语音活动if vad.is_speech(data, RATE):audio_queue.put(audio_data)with silence_frames_lock:silence_frames = 0  # 重置静音计数器else:with silence_frames_lock:silence_frames += 1  # 重置静音计数器except KeyboardInterrupt:print("录音停止")finally:stream.stop_stream()stream.close()p.terminate()

5.构建翻译函数

def process_audio():global silence_framesaudio_buffer = np.array([], dtype=np.float32)silence_frames = 0while True:try:# 从队列中获取音频数据audio_data = audio_queue.get(timeout=1)  # 超时 1 秒audio_buffer = np.concatenate((audio_buffer, audio_data))except Exception as e:passcurrent_silence_frames = 0# 检查静音计数器with silence_frames_lock:current_silence_frames = silence_frames# 如果检测到静音时间超过阈值,处理累积的音频if (current_silence_frames > MIN_SILENCE_DURATION * (RATE / CHUNK)) or len(audio_buffer) > 320 * 200:if(len(audio_buffer) > 0):#, language="en"segments, _ = whisperModel.transcribe(audio_buffer,vad_filter=True,vad_parameters=dict(min_silence_duration_ms=200), language="en", condition_on_previous_text=True)for segment in segments:if(segment.text == ""):continueelif(segment.text == "Thank you."):print("[%s] %s (%s)" % (str(datetime.now()), "感谢", segment.text))else:            src_text = prefix + segment.textinput_ids = tokenizer(src_text, return_tensors="pt")generated_tokens = model.generate(**input_ids.to(device))result = tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)print("[%s] %s (%s)" % (str(datetime.now()), result[0], segment.text))# result = pipeline(segment.text)# print("[%s] %s (%s)" % (str(datetime.now()), result[0]['translation_text'], segment.text))audio_buffer = np.array([], dtype=np.float16)silence_frames = 0

6.启动线程,启动程序

# 启动录音线程和推理线程
record_thread = threading.Thread(target=record_audio)
process_thread = threading.Thread(target=process_audio)record_thread.start()
process_thread.start()

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

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

相关文章

湖仓分析|浙江霖梓基于 Doris + Paimon 打造实时/离线一体化湖仓架构

导读:浙江霖梓早期使用 CDH 产品套件搭建了大数据系统,面临业务逻辑冗余、查询效率低下等问题,基于 Apache Doris 进行整体架构与表结构的重构,并基于湖仓一体和查询加速展开深度探索与实践,打造了 Doris Paimon 的实…

Jmeter压测怎么控制TPS

压测固定TPS的接口 有些任务需要我们控制接口的TPS,例如每秒请求一次。 TPS定时器 然后1个并发持续运行 压测结果 需要注意TPS在1.0/s左右,有时可能是1.2、1.3,定时器会自动调整压力,让TPS保持在1.0左右。

信呼OA办公系统sql注入漏洞分析

漏洞描述 信呼OA办公系统uploadAction存在SQL注入漏洞,攻击者可利用该漏洞获取数据库敏感信息。 环境搭建 源码下载地址:https://github.com/rainrocka/xinhu 下载后解压到本地网站根目录下,配置好数据库,然后安装即可 默认密…

一文深入了解DeepSeek-R1:模型架构

本文深入探讨了 DeepSeek-R1 模型架构。让我们从输入到输出追踪 DeepSeek-R1 模型,以找到架构中的新发展和关键部分。DeepSeek-R1 基于 DeepSeek-V3-Base 模型架构。本文旨在涵盖其设计的所有重要方面。 📝 1. 输入上下文长度 DeepSeek-R1的输入上下文长…

算法兵法全略(译文)

目录 始计篇 谋攻篇 军形篇 兵势篇 虚实篇 军争篇 九变篇 行军篇 地形篇 九地篇 火攻篇 用间篇 始计篇 算法,在当今时代,犹如国家关键的战略武器,也是处理各类事务的核心枢纽。算法的世界神秘且变化万千,不够贤能聪慧…

开关电源实战(一)宽范围DC降压模块MP4560

系列文章目录 文章目录 系列文章目录MP4560MP4560 3.8V 至 55V 的宽输入范围可满足各种降压应用 MOSFET只有250mΩ 输出可调0.8V-52V SW:需要低VF肖特基二极管接地,而且要靠近引脚,高压侧开关的输出。 EN:输入使能,拉低到阈值以下关闭芯片,拉高或浮空启动 COMP:Compens…

微软AutoGen高级功能——Magentic-One

介绍 大家好,博主又来给大家分享知识了,这次给大家分享的内容是微软AutoGen框架的高级功能Magentic-One。那么它是用来做什么的或它又是什么功能呢,我们直接进入正题。 Magentic-One Magnetic-One是一个通用型多智能体系统,用于…

DeepSeek是如何通过“蒸馏”技术打造自己的AI模型

1 引言: 最近,外媒对中国公司——DeepSeek进行了猛烈抨击,指控其采用了所谓的“蒸馏”(Distillation)技术,涉嫌抄袭甚至作弊。那么,什么是“蒸馏”技术? 在人工智能领域,…

【广州大学主办,发表有保障 | IEEE出版,稳定EI检索,往届见刊后快至1个月检索】第二届电气技术与自动化工程国际学术会议 (ETAE 2025)

第二届电气技术与自动化工程国际学术会议 (ETAE 2025) The 2nd International Conference on Electrical Technology and Automation Engineering 大会官网:http://www.icetae.com/【更多详情】 会议时间:2025年4月25-27日 会议地点&#xff1a…

伯克利 CS61A 课堂笔记 08 —— Strings and Dictionaries

本系列为加州伯克利大学著名 Python 基础课程 CS61A 的课堂笔记整理,全英文内容,文末附词汇解释。 目录 01 Strings 字符串 Ⅰ Strings are An Abstraction. Ⅱ Strings Literals have Three Forms Ⅲ String are Sequences 02 Dictionaries 字典 …

基于 GEE 计算研究区年均地表温度数据

目录 1 代码解析 2 完整代码 3 运行结果 1 代码解析 (1)定义研究区: // 研究区的范围需要自己提前上传 var dataset table;// 将研究区显示在中心,后面的数字为缩放等级,范围从1 - 24 Map.centerObject(dataset,…

日常知识点之遗留问题梳理(定时器/时间轮定时器)

1:简单基础 定时器的核心知识点,对我来说就是获取当前时间和设置回调函数。 简单练习: ​ c语言通过gettimeofday 获取当前时间并进行处理 ​ 回调函数的定义(函数参数有必要适当存储) typedef void(Timerfunc)(vo…

Python + WhisperX:解锁语音识别的高效新姿势

大家好,我是烤鸭: 最近在尝试做视频的质量分析,打算利用asr针对声音判断是否有人声,以及识别出来的文本进行进一步操作。asr看了几个开源的,最终选择了openai的whisper,后来发现性能不行,又换了…

mapbox 从入门到精通 - 目录

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀总目录1.1 ☘️ mapbox基础1.2 ☘️…

sqlilabs--小实验

一、先盲注判断 ?id1 and sleep(2)-- 如果发现页面存在注点,使用时间盲注脚本进行注入 import requestsdef inject_database(url):name for i in range(1, 20): # 假设数据库名称长度不超过20low 48 # 0high 122 # zmiddle (low high) // 2while low &l…

【数字】异步FIFO面试的几个小问题与跨时钟域时序约束

入门数字设计的时候,跨时钟域的数据处理是绕不开的课题,特别是多比特数据跨时钟域时,都会采用异步FIFO的方法。 异步FIFO中涉及较多的考点这里记录几个以供大家参考。 1. 异步FIFO的空满判断分别在哪个域? 根据异步FIFO的结构&…

RabbitMQ学习—day2—安装

目录 普通Linux安装 安装RabbitMQ 1、下载 2、安装 3. Web管理界面及授权操作 Docker 安装 强力推荐学docker,使用docker安装 普通Linux安装 安装RabbitMQ 1、下载 官网下载地址:https://www.rabbitmq.com/download.html(opens new window) 这…

降本增效 - VGF 构建轻量高性能日志管理平台

VFG 技术架构 Filebeat 接收Syslog ,并进行日志分段,VictoriaLogs 持久化存储日志 ,Grafana 可视化、数据查询、告警、数据导出。 为什么要用VictoriaLogs ? 与Elasticsearch /Grafana Loki相比几十倍的CPU/内存/存储资源占用的…

初识camel智能体(一)

同目录下配置环境变量.env,内容如下, apikey从魔搭社区获取 QWEN_API_KEY4ff3ac8f-aebc******** 先上干货代码,主代码如下: from colorama import Forefrom camel.societies import RolePlaying from camel.utils import prin…

如何保持 mysql 和 redis 中数据的一致性?PegaDB 给出答案

MySQL 与 Redis 数据保持一致性是一个常见且复杂的问题,一般来说需要结合多种策略来平衡性能与一致性。 传统的解决策略是先读缓存,未命中则读数据库并回填缓存,但方式这种维护成本较高。 随着云数据库技术的发展,目前国内云厂商…