• 图灵机器人


    注册

    注册地址

    http://www.tuling123.com

    青云客机器人http://api.qingyunke.com/?tdsourcetag=s_pcqq_aiomsg

    自定义设置

    api使用文档

    文档链接:https://www.kancloud.cn/turing/www-tuling123-com/718227

    百度ai对接图灵机器人

    接口:

    百度ai

    图灵机器人

    """
    -录制语音
    -进行语音识别
    -将识别出的文本发给图灵机器人
    -收到图灵机器人的回复
    -将收到的回复转换成语音
    """
    import os
    from aip import AipSpeech,AipNlp
    from to_ling.toLing import to_ling
    """ 你的 APPID AK SK """
    APP_ID = '16815805'
    API_KEY = 'G7dSyQYqyr3SrWO71rjivtuh'
    SECRET_KEY = 'NYfwjHWjRgGk8Rf2wP2bXoW7sW15ucmK'
    
    client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
    NLP_client = AipNlp(APP_ID, API_KEY, SECRET_KEY)  # 实例化短文本相似度对象
    # 读取文件
    def get_file_content(filePath):
        # 将m4a格式的音频文件转换为pcm格式
        # 配置完ffmpeg需要重启pycharm重新加载环境变量,环境变量不能有中文,pycharm不能识别中文路径
        cmd_str = f"ffmpeg -y -i {filePath} -acodec pcm_s16le -f s16le -ac 1 -ar 16000 {filePath}.pcm"
        os.system(cmd_str)  # 在cmd运行上面的命令
        with open(f"{filePath}.pcm", 'rb') as fp:
            return fp.read()
    
    # 识别本地文件
    res = client.asr(get_file_content('../录音.m4a'), 'pcm', 16000, {
        'dev_pid': 1536,
    })
    
    # 将语音识别成文本
    Q = res.get("result")[0]
    sim = NLP_client.simnet(Q,"你好").get("score")
    
    if sim >= 0.58:
        A = "我叫henry"
    else:
        # 调用图灵接口,接收图灵机器人回复的信息
        A = to_ling(Q)
    
    # 调用语音合成接口,将收到的文本转换成语音
    result  = client.synthesis(A, 'zh', 1, {
        'vol': 5,
        "spd": 4,
        "pit": 5,
        "per": 4
    })
    
    # 识别正确返回语音二进制 错误则返回dict 参照下面错误码
    if not isinstance(result, dict):
        with open('Answer.mp3', 'wb') as f:
            f.write(result)
    调用百度ai接口
    import requests
    def to_ling(Q):
        data = {
            "perception": {
                "inputText": {
                    "text": Q
                },
            },
            "userInfo": {
                "apiKey": "ca2338242158489490f07d4e2a9b67be",
                "userId": "123"
            }
        }
        # 将data参数转换成json,在反序列化成字典
        response = requests.post("http://openapi.tuling123.com/openapi/api/v2",json=data).json()
        # 获取返回值
        return response["results"][0]["values"]["text"]
    调用图灵机器人接口
  • 相关阅读:
    一个Bean属性拷贝的工具类
    java Integer parseInt()
    sql 预编译 in
    显著性图谱的评价
    如何优雅的在MFC中使用cvSetMouseCallback?
    为MFC界面添加一个Log Window
    最大流算法统计
    2014年秋 求职总结
    图论的常用算法
    常用的排序算法
  • 原文地址:https://www.cnblogs.com/songzhixue/p/11198025.html
Copyright © 2020-2023  润新知