苹果、微软的ai电脑已经可以语音操控电脑了。开源的也有,下面是一个开源的python+openai api实现windows语音交互沟通,让ai人工智能识别你的命令进行电脑关机和其他操作,示例代码如下:
# -*- coding: utf-8 -*-
import speech_recognition as sr
import pyttsx3
import openai
import os
import sys
openai.api_key = "<your-api-key>"
# 创建 TTS 对象
engine = pyttsx3.init()
# 创建 Recognizer 对象
r = sr.Recognizer()
def getopenairesponse(keyword):
response = openai.Completion.create(
engine="text-davinci-003",
prompt=keyword,
max_tokens=1024,
temperature=0.5
)
return response["choices"][0]["text"]
def listen_for_wake_word():
with sr.Microphone() as source:
r.adjust_for_ambient_noise(source)
print("等待唤醒词...")
audio = r.listen(source)
try:
text = r.recognize_sphinx(audio, language='zh-CN')
return text.lower()
except:
return ""
def shutdown_computer():
print("电脑即将关机")
engine.say("电脑即将关机")
engine.runAndWait()
if sys.platform == "win32":
os.system('shutdown /s /t 1')
else:
os.system('sudo shutdown -h now')
def restart_computer():
print("电脑即将重启")
engine.say("电脑即将重启")
engine.runAndWait()
if sys.platform == "win32":
os.system('shutdown /r /t 1')
else:
os.system('sudo reboot')
is_active = False
while True:
if not is_active:
wake_word = listen_for_wake_word()
if "开机" in wake_word:
is_active = True
print("系统已开启")
engine.say("系统已开启")
engine.runAndWait()
continue
# 使用麦克风录音
with sr.Microphone() as source:
r.adjust_for_ambient_noise(source) # 噪音抑制
print("我在听,您请说:")
audio = r.listen(source)
# 将语音转成文本
try:
text = r.recognize_sphinx(audio, language='zh-CN')
print("你说的:" + text)
if "关闭系统" in text.lower():
is_active = False
print("系统已关闭")
engine.say("系统已关闭")
engine.runAndWait()
continue
elif "关机" in text.lower():
shutdown_computer()
break
elif "重启" in text.lower():
restart_computer()
break
# 将文字转成语音并播放
response = getopenairesponse(text)
engine.say(response)
engine.runAndWait()
except sr.UnknownValueError:
print("识别失败")
except 网友回复
如何用html写出网页滚动视频播放卡片视觉差异效果的代码?
程序员如何低成本搭建代理进行科学上网学习技术?
threejs如何做个三维搭积木的游戏?
three如何实现标记多个起始路过地点位置后选择旅行工具(飞机汽车高铁等),最后三维模拟行驶动画导出mp4?
ai实时驱动的3d数字人可视频聊天的开源技术有吗
swoole+phpfpm如何实现不同域名指向不同目录的多租户模式?
如何用go替换nginx实现请求phpfpm解析运行php脚本?
有没有浏览器离线运行进行各种文档、图片、视频格式转换的开源工具?
如何使用go语言搭建一个web防火墙?
linux如何检测特定网络协议比如http协议中报文是否包含特点关键词并阻止返回给客户?


