代码拉取完成,页面将自动刷新
import json
import secrets
import requests
import asyncio
import yaml
from rasa.core.agent import Agent
from rasa.shared.constants import DEFAULT_ENDPOINTS_PATH
from rasa.utils.endpoints import EndpointConfig
import pyttsx3
from pyttsx3.voice import Voice
url = "http://localhost:5005/webhooks/rest/webhook"
# 需要先训练好一个模型
with open(DEFAULT_ENDPOINTS_PATH) as fp:
endpoint = EndpointConfig.from_dict(yaml.load(fp).get("action_endpoint"))
agent = Agent.load_local_model(
model_path="models",
action_endpoint=endpoint
)
def post(url, data=None):
data = json.dumps(data, ensure_ascii=False)
data = data.encode(encoding="utf-8")
r = requests.post(url=url, data=data)
r = json.loads(r.text)
return r
def textToAudio(message):
engine = pyttsx3.init()
rate = engine.getProperty('rate')
# 控制语音播放的速度
engine.setProperty('rate', 180)
volume = engine.getProperty('volume')
# 控制语音播放的音量大小
engine.setProperty('volume',0.9)
voice = engine.getProperty('voice')
v = Voice(id=1, name='Friday', languages='chinese', age=18, gender='女')
engine.setProperty('voice', v)
engine.say(message)
engine.runAndWait() #朗读一次
sender = secrets.token_urlsafe(16)
while True:
message = input('Your>>>')
for line in asyncio.get_event_loop().run_until_complete(agent.handle_text(message)):
print('Friday>>>',line['text'])
textToAudio(line['text'])
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。