day02-Coze智能体详解
今日内容
1 Python调用Coze智能体
上次课带大家创建了一个最简单的智能体
Coze目前有的功能:改版了,有的功能
1 智能体
2 低代码平台【新出的功能】
-在这个平台上,不需要写代码,就可以开发出微信小程序,抖音小程序,网站
3 工作流
# 1 之前创建的智能体在哪?
https://www.coze.cn/space/7506747900345909248/develop
# 2 发布的智能体,别人使用,会耗费token
-新闻:豆包要收费了
最开始,coze是完全免费,不需要耗费token的,慢慢收费了,token越来越贵
谁使用,耗费谁的token
1 API和SDK区别
# 1 [发布]智能体时,选择了两个
-coze商店:链接地址---》发送给别人,都能用
-API:使用代码【python】调用,不需要在浏览器中使用了
-自己写个程序:网页,微信小程序,app--》调用它--》智能体作为我们程序的一部分
-最简单的python调用--》在pycharm中使用--》后续做微信小程序
# 2 coze官方提供了api的说明:使用程序可以通过 API 或者 SDK 调用Coze的智能体
https://www.coze.cn/open/docs/developer_guides
# 3 coze智能体和我们程序之间沟通的桥梁
两个程序之间进行通信的桥梁
# 4 API介绍
-典型结构:
-地址:https形式
https://api.map.baidu.com/place/v2/search
-请求方式:get,post【先不理解】
-携带的数据:放在地址中,可以放在请求体中
-数据:北京旅游3天,预算300
-返回的数据:json格式
-返回数据:{day01:'第一天xxx',day02:'第一天xxx'}
-不同公司,都会提供api,供大家调用他们
-使用百度地图:
-直接在百度网站上使用
-在我们程序中使用:写了一个淘宝程序--》快递有地图--》集成了百度地图--》提供api,来让淘宝调用地图使用
-微博:查看粉丝量
-直接在微博网站上看到
-通过api调用,使用程序来调用,查看到我们的粉丝【开发人员用】
-总结:
有了api,我们就可以使用代码,跟第三方平台【百度地图,微博,Coze】交互
# 5 SDK是什么,有什么用
# 1 SDK(Software Development Kit,软件开发工具包)是一组用于开发特定软件平台、系统或应用的工具集合。它提供了 API、库、文档、示例代码和工具,帮助开发者更高效地构建应用程序
# 2 我们就可以使用代码,跟第三方平台【百度地图,微博,Coze】交互
-我们用什么代码?python,C,java?
-代码如何写?
# 3 sdk就是软件包---》针对不同语言,开发了一套程序,可以直接简单方便的调用第三方平台
-python跟Coze平台交互
-1 直接自己写代码通过api--》调用Coze平台
-2 使用Coze提供的Python sdk---》调用Coze平台--》好多python代码,它帮我们写了,不需要我们写了
-Java跟Coze平台交互
-1 直接自己写Java代码通过api--》调用Coze平台
-2 使用Coze提供的Java sdk---》调用Coze平台--》好多java代码,它帮我们写了,不需要我们写了
# 4 不同语言跟第三方平台交互的工具包
-第三方平台都会提供:Coze,百度地图。。。
# 扩展一下



2 Python调用基于API的【了解】
后续微信小程序,使用基于SDK的方式调用
这个代码,大家不需要理解,你们需要掌握的是,我们通过python程序,可以实现对Coze智能体的调用即可




# 1 老师提供的代码,使用Pycharm打开【如果连Pycharm是什么都不知道,现放下,先学python】
# 2 这个代码,你们用;需要修改两个位置
-智能体的id号:每个智能体有自己的唯一号码
-7633811442953240614
-API_KEY:钥匙,区别是谁
-https://www.coze.cn/open/oauth/apps # 创建钥匙
-我的钥匙:pat_8YnEWp0qA3gTB17bg4Lc2dI0Vvz0SiFAgWEh4vZHq6xGFTMa08pEqOjxJV6eBbSY
# 3 在 Terminal中执行
pip install requests
import time
import requests
class CozeAI:
def __init__(self, token='Bearer pat_ZHRgluEhAo2DX5ZZilqoTpOwglOlBU41hvTOSBDZS7Md7UQQKZNNwUaFqwCuu5pC',bot_id='7560337879416242186'):
self.token = token
self.bot_id = bot_id
self.base_url = 'https://api.coze.cn/v3'
self.header={
'Authorization':self.token
}
def chat(self,content):
data = {
"bot_id": self.bot_id,
"user_id": "lqz",
"stream": False,
"auto_save_history": True,
"additional_messages": [
{
"role": "user",
"content": content,
"content_type": "text"
}
]
}
try:
res = requests.post(self.base_url + '/chat',json=data,headers=self.header).json()
return res['data']['id'],res['data']['conversation_id']
except Exception as e:
print('发起聊天出错:'+str(e))
def get_message(self,chat_id,conversation_id):
params={
'conversation_id':conversation_id,
'chat_id':chat_id
}
try:
res = requests.get(self.base_url + '/chat/message/list',params=params,headers=self.header).json()
return res['data'][0]['content']
except Exception as e:
print('获取聊天详情出错:'+str(e))
if __name__ == '__main__':
try:
print('##############在线导游##############')
print("输入 'exit' 结束对话")
coze=CozeAI()
# 对话消息历史
messages = []
while True:
# 获取用户输入
print('\n你: ',end='')
user_input = input()
if user_input.lower() == "exit":
break
chat_id,conversation_id=coze.chat(user_input)
time.sleep(60)
res=coze.get_message(chat_id,conversation_id)
print('导游:'+res)
except Exception as e:
print(f"发生错误: {e}")
2 大语言模型LLM配置
# 1 大预言模型是智能体的大脑
-判断,推理。。。
# 2 我们在创建智能体时,是要选择使用哪个大脑 和 对大脑做一些配置
# 3 模型设置
-不同模型[大脑],他能处理的东西不一样
-有的大脑删除处理图片
-有的大脑擅长深度思考。。。
# 4 对模型进行配置:下面详细讲
# 5 token:
你:我爱你,你吃饭了吗? 8个字/1.5 = token数 1
大模型:我当然爱你了,我的小宝贝,我吃饭了,为什么忽然这样问人家

2.1 生成多样性【Temputer】
# 1 有的模型可以自己调节,有的模型只能选择预设的
-精确模式,创意模式 。。。
# 2 调高温度会使得模型的输出更多样性和创新性,反之,降低温度会使输出内容更加遵循指令要求但减少多样性
-0-2之间的值,
-这个值越高,创新性越高---》创意性工作:生成天马行空的小说--》要调高一些
-这个值越低,越严谨---》解读法律条文--》调低一下
2.2 Top P
# 1 Top p 为累计概率: 0--1直接
模型在生成输出时会从概率最高的词汇开始选择,直到这些词汇的总概率累积达到 Top p 值。这样可以限制模型只选择这些高概率的词汇,从而控制输出内容的多样性。建议不要与 “生成随机性” 同时调整
# 2 我们跟大模型对话
我问:你爱我吗?
top p高:嗯,人家当然爱你呀!
top p低:爱
# 3 我们问了大模型---》大模型脑中会生成很多词---》拿到词组成句子---》top p 是个数值---》把字组成句子---》每个字由分值
Top:0.6
0.1 0.1 0.1 0.2 0.1 0.6
嗯,人家 当然 爱你 呀!
Top:0.2
0.2 0.6
爱
# 4 总结:一个大模型,可以termuter很低,但是top p很高---》刘老师
-比如:同学问问题,老师我学这个课完成,一年副业能赚30w吗?
termuter很低:很严谨---》不能
termuter很高:天马星空---》很有可能的
termuter很低, Top P 很低:不能,别想了
termuter很低, top P 很高 :这个不能,但是你也要好好学呀,有问题多问老师。。。
termuter很高, Top P 很低:很有可能
termuter很高, Top P 很高:很有可能的同学,只要好好学,一切皆有可能。。。。
2.3 重复性语句惩罚
# 1 frequency penalty: 当该值为正时,会阻止模型频繁使用相同的词汇和短语,从而增加输出内容的多样性。
# 2 我讲课,经常问大家,我想知道大家听明白了吗?
负数: 问了3次, 第一次:听懂了吗? 第二次:听懂了吗? 第二次:听懂了吗?
正数: 问了3次, 第一次:听懂了吗? 第二次:有不懂的吗? 第二次:大家get到点了吗?
2.4 携带上下文轮数
# 1 默认是3,我们可以调大
# 2 token概念,大家懂了
跟汉字的比值是 1:1.5 爱你 :1个token
# 3 我们跟大模型交互---》我们之前的对话,要不要记住
-如果是 0,表示每次都是新对话,之前跟他讲的,它都不知道
# 4 设置多少呢?
-如果设置多,能记住更多对话---》耗费token更多
-如果设置低,记不住之前的对话--》耗费token少
-默认是3
2.5 最大回复长度
# 1 大模型给咱们回复--》我们设定一个token长度--》最大就会返回 我们设定的值---》如果回答的答案,超了这个值,会如何?
-有的模型报错
-有的模型会截断
# 2 默认4096:后续可以改大一些
# 3 坑:后面咱们做工作流--》使用大模型生成文案
-抗日--》写一篇文章---》4096个token---》生成的超了--》大模型报错--》导致工作流后续无法执行
2.6 最大推理
# 1 推理模型才支持
-普通模型:造句
-推理模式:分析你的输入句子含义,然后再造句
-有思考过程:输出文字,大小限制
3 插件
# 0 Coze智能体最核心的内容
-1 大模型
-2 插件
# 1 插件是什么?
-要智能体返回刘亦菲最好看的照片?
-如果只有大模型,能返回吗?不能
-大模型,无法联网查询,而且数据不是实时的
-必须用插件:能搜索图片的插件
-流程:返回刘亦菲最好看的照片
1 大模型收到需求--》发现做不了
2 调用 插件--》查询刘亦菲照片:5张
3 5张照片给大模型,大模型推理 那张最好看--》返回给你一张
-插件是对智能体功能的增强
-大白话:人只有大脑不行,需要有嘴吃饭,眼睛看
# 2 Coze帮我们提供了特别多插件
-官方插件:生成图片,生成音频插件
-第三方插件:查询菜谱插件,查12306火车票的插件,写入word,excel。。。。
# 3 体验一下插件:因为有特别多,这个后续,大家要使用什么插件,直接搜索,按照插件说明使用即可
# 4 使用案例
1 从头条获取 4 张美女图片 # 需要安装插件
2 看一下https://www.cnblogs.com/liuqingzheng地址讲了什么内容
# 5 大家课后,随意练习插件的使用


浙公网安备 33010602011771号