Python使用百度文心一言AI方法

打印 上一主题 下一主题

主题 503|帖子 503|积分 1509

第一步:注册账号,开通服务

进入百度智能云千帆大模型平台,注册账号
首次使用会获得20元代金券,可以让你免费体验一下
在平台左边找到在线服务选项,开通你想要的服务,服务都是按量付费的,也就是说你不用,就不花钱,以是你可以全部开通(我是这么做的)
至少ERNIE-Bot-turbo服务你得开通,这是我们接下来要用的

第二步:获得Access Key/Secret Key

点击右上角的“用户账号->安全认证”进入Access Key管理界面,创建Access Key,获得Access Key和Secret Key

第三步:安装千帆sdk

打开命令行,用pip安装qianfan库
   pip install qianfan -i https://pypi.tuna.tsinghua.edu.cn/simple
  
第四步:开始编写测试代码

1:举行安全验证

  1. # 方法1
  2. """
  3. 可以用环境变量设置Access Key和Secret Key,在命令行输入下面两个命令
  4. set QIANFAN_ACCESS_KEY=Access Key
  5. set QIANFAN_SECRET_KEY=Secret Key
  6. """
  7. # 方法2 (官方不推荐)
  8. import qianfan
  9. qianfan.AccessKey("Access Key")
  10. qianfan.SecretKey("Secret Key")
  11. # 方法3 (不如方法2,但官方说方法2以后可能不兼容,所以测试时可以用用方法3)
  12. import os
  13. os.environ["QIANFAN_ACCESS_KEY"] = "Access Key"
  14. os.environ["QIANFAN_SECRET_KEY"] = "Secret Key"
复制代码
2:选择模型

  1. import qianfan
  2. chat_comp = qianfan.ChatCompletion()  # 默认模型为ERNIE-Bot-turbo
  3. # chat_comp = qianfan.ChatCompletion(model="ERNIE-Bot") 使用其他预制模型
  4. # chat_comp = qianfan.ChatCompletion(endpoint="") 使用自定义模型
复制代码
3:创建对话

  1. msgs = qianfan.Messages()  # 创建一个消息列表
  2. msgs.append("你好")  # 添加用户消息,=msgs.append("你好", role=qianfan.QfRole.User)
  3. # 第一轮对话
  4. resp = chat_comp.do(msgs)  # 返回QfResponse对象
  5. body = resp.body  # 有用的内容
  6. print(body["usage"])  # 本轮对话的token使用情况,是个字典
  7. print(body["result"])  # 模型输出
复制代码
4:连续对话

连续对话需要注意的是messages的内容必须是你一句,ai助手一句,而且在哀求时messages最后一句必须是你的句子
比如[你,ai,你,ai,你]
不能是[你,你,ai,你]
也不能是[你,ai,你,ai]
  1. # 第二轮对话
  2. # msgs.append会识别参数是str还是QfResponse
  3. # 如果是添加的str类型,role默认就是User,如果是QfResponse,role默认就是Assistant
  4. msgs.append(resp)  # 将QfResponse添加进消息列表,=msgs.append(resp.body["result"], role=qianfan.QfRole.Assistant)
  5. msgs.append("我今天起的好早")  # =msgs.append("我今天起的好早", role=qianfan.QfRole.User)
  6. resp2 = chat_comp.do(
  7.     messages=msgs,
  8.     temperature=0.5,  # 温度,越大输出越随机,越小越稳定,可以修改为0.5,可修改范围取决于模型
  9.     # 此外还有别的参数可以选,可以查看此模型的官方文档
  10. )
  11. print(resp2.body["result"])
复制代码
返回内容

   {'prompt_tokens': 1, 'completion_tokens': 8, 'total_tokens': 9}
你好,有什么我可以资助你的吗?
早上好!今天起得早确实是个好习惯。你今天有什么计划吗?
  第五步:写一个用于对话的命令行步调

代码

  1. import qianfan
  2. chat_comp = qianfan.ChatCompletion()
  3. msgs = qianfan.Messages()
  4. user_msg: str
  5. while (user_msg := input("输入(按q退出):")) != "q":
  6.     msgs.append(user_msg)
  7.     result = chat_comp.do(msgs)
  8.     print(result.body["result"])
  9.     msgs.append(result)
复制代码
就这么简单,条件是环境变量设置好了(以及:=是python3.8的写法)
 输出

    输入(按q退出):你好
你好,有什么我可以资助你的吗?
输入(按q退出):我今天起的好早
哦,很高兴听到你早早起床的消息。早起对身体康健和精力充沛都有许多好处。你通常会做什么在这么早的时间呢?
输入(按q退出):吃个面包然后上课
听起来你的一天已经开始了。上课是充实的一天的一部门,这很好。早餐是一天中最重要的一餐,它为你的身体提供了所需的能量和营养,资助你应对一天的学习和工作。有什么特殊的课程吗?
输入(按q退出):我们刚刚说到哪了?
我们刚刚讨论了早餐的重要性以及你早早起床后的一般活动。
输入(按q退出):我说我早餐吃了什么?
哦,你早餐吃了面包。这是你一天中非常重要的一个环节,是吗?还有什么题目或者需要我资助的吗?
输入(按q退出):q
  文档

更多的设置需要更好的了解千帆平台的使用,比如自制模型(这个贼贵),搜刮插件什么的
Python SDK安装及使用流程 - 千帆大模型平台 | 百度智能云文档
喜欢的话就关注收藏点赞转发吧~

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

灌篮少年

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表