首页 > 编程语言 >python接入百度智能云API实现ai对话

python接入百度智能云API实现ai对话

时间:2024-12-04 20:10:59浏览次数:7  
标签:python token access ai json API user input response

python接入百度智能云API实现ai对话

千帆大模型平台-百度智能云千帆

代码段:

import requests
import json

# 获取访问令牌的函数
def get_access_token():
    # 百度AI开放平台的API地址,用于获取access_token
    url = "个人url"

    # 将空字符串转换为JSON格式
    payload = json.dumps("")
    # 设置请求头,指定内容类型为JSON
    headers = {
        'Content-Type': 'application/json',
        'Accept': 'application/json'
    }

    # 发送POST请求到指定的URL,并获取响应
    response = requests.request("POST", url, headers=headers, data=payload)
    # 将响应体解析为JSON格式,并获取access_token
    return response.json().get("access_token")

def AI(user_input):
    # 获取用户输入
    # user_input = input("asking:")
    # 构造请求URL,包含访问令牌
    url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/ernie-speed-128k?access_token=" + get_access_token()

    # 构造请求体,包含用户输入和其他参数
    payload = json.dumps({
        "messages": [
            {
                "role": "user",
                "content": user_input
            }
        ],
        "stream": False,
        "temperature": 0.9,
        "top_p": 0.7,
        "penalty_score": 1,
        "system": "猫娘",
        "max_output_tokens": 1000,
        "frequency_penalty": 0.1,
        "presence_penalty": 0.0,
    })
    # 设置请求头,指定内容类型为JSON
    headers = {
        'Content-Type': 'application/json'
    }

    # 发送POST请求到指定的URL,并获取响应
    response = requests.request("POST", url, headers=headers, data=payload)
    # 将响应体解析为Python字典
    response_data = response.json()
    # 检查响应中是否包含结果
    if 'result' in response_data:
        print(response_data['result'])
    else:
        print("没有返回结果或结果格式不正确。")

# 主函数
def main():
    AI("who")  # 提问,让她自我介绍

    user_input = input("可以向我提问任何问题~\n提问:")
    if user_input.lower() in ["不聊了", "再见", "没了"]:  # 增加退出词
        print("再见啦,拜拜~")
    else:
        AI(user_input)  # 循环提问

        while True:
            user_input = input("还有什么问题想问我喵:")
            if user_input.lower() in ["不聊了", "再见", "没了","拜拜"]:  # 增加退出词
                print("再见啦,拜拜~")
                break
            AI(user_input)  # 循环提问

# 程序入口
if __name__ == '__main__':
    main()

实现效果

image-20241204200403150

标签:python,token,access,ai,json,API,user,input,response
From: https://www.cnblogs.com/tianwuyvlianshui/p/18586687

相关文章

  • Python递归
    两个特点:1、调用自身2、结束条件为什么func3打印321而func4打印123的原因(看套娃图理解,大框为func,小框为print)(3从外到内,4从内到外)示例:汉诺塔问题一共n个盘子,把上面的n-1个盘子看成一个整体把n-1个盘子从A经过C移动到B把第n个盘子从A移动到C(移动一步的情况)把n-1个盘子从B......
  • 2024年华为OD机试真题-数字游戏 -Python-OD统一考试(E卷)
    最新华为OD机试考点合集:华为OD机试2024年真题题库(E卷+D卷+C卷)_华为od机试题库-CSDN博客     每一题都含有详细的解题思路和代码注释,精编c++、JAVA、Python三种语言解法。帮助每一位考生轻松、高效刷题。订阅后永久可看,发现新题及时跟新。题目描述小明玩一个游戏。系......
  • 【前端必读】(一)如何免费无限使用Cursor:AI编程工具的终极指南!
    在当今快速发展的科技时代,AI编程工具如雨后春笋般涌现,其中Cursor凭借其强大的功能和便捷的使用体验,迅速在海外市场引起了热议。最近,这家公司还获得了OpenAI的6000万美元融资,进一步证明了其潜力和市场价值。那么,Cursor究竟有多强大?如何才能免费无限使用它呢?本文将为你揭开Cur......
  • Linux无图形界面环境使用Python+Selenium实践 (转载)
    原文链接:https://developer.aliyun.com/article/1511623简介: 在Linux上使用Selenium和Python来控制浏览器进行自动化测试或者网页数据抓取是常见的需求。本文将介绍如何在Linux无图形界面环境下使用Selenium与Firefox浏览器以headless模式运行,并提供geckodriver、Xvfb和pyvirtu......
  • LangChain大模型应用开发
    LangChain作为一个新兴的框架,旨在简化大模型应用的开发过程。它提供了一套工具和接口,帮助开发者将大模型无缝集成到各种应用场景中。通过LangChain,开发者可以更专注于业务逻辑的实现,而不必过多关注底层模型的复杂性。......
  • ESP32+micropython+作为WiFi热点+接收并返回数据
    ESP32+作为WiFi热点+接收并返回数据ESP32代码#ESP32作为AP#作为服务器接收数据并echo#ESP32作为AP即wifi热点importnetworkimportutime#配置ESP32为AP模式ssid='ESP32_AP'password='12345678'authmode=4#WPA2-PSK#创建WLAN对象wlan......
  • Python当中的ParamSpec和TypeVar
    Python当中的ParamSpec和TypeVar内容InPython,thecodesnippet:P=ParamSpec("P")R=TypeVar("R")definestwothingsrelatedtotyping,specificallyforgenericprogramming.Let'sbreakdownwhateachonemeans:1.P=ParamSpec(&qu......
  • python毕设 电影推荐系统程序+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于电影推荐系统的研究,现有研究主要以通用推荐算法为主,如协同过滤算法、基于内容的推荐算法等在电影推荐领域的应用研究较多。专门针......
  • 运用Python爬虫与代理IP实现电商数据采集 代码示范
    python爬虫结合代理ip获取电商数据可以通过使用Python的requests库结合代理IP来获取。这里以简单模拟获取某个网页内容为例,实际应用中大家需要根据具体电商平台的接口、页面结构等进行针对性调整,并且这里假设大家有可用的代理IP列表,示例中使用了免费的代理IP测试网站httpbin.or......
  • python毕设 校园二手物品交易系统程序+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景随着互联网的发展,校园二手物品交易逐渐成为一种新兴的经济活动。关于校园二手物品交易系统的研究,现有研究主要以传统的商业二手交易平......