当前位置: 首页 > news >正文

autogen改变屏幕亮度

学习资料

官方的入门教程很容易入门,所以推荐使用官方的学习资料:autogen官方教程

小实践,修改屏幕亮度

准备:

  1. 修改屏幕亮度的python代码(参考:改变屏幕亮度)
  2. 使用工具(autogen使用工具例子代码)
import tempfilefrom autogen import ConversableAgent,config_list_from_json
from autogen.coding import LocalCommandLineCodeExecutor
from autogen import register_function
import screen_brightness_control as sbc
from typing import Annotated,Literal
Operator = Literal["change"]def change_brightness(value:int,operator: Annotated[Operator, "operator"]) ->str:sbc.set_brightness(value)return 'change successfully'def main():config_list = config_list_from_json(env_or_file='OAI_CONFIG_LIST')temp_dir = tempfile.TemporaryDirectory()#定义assistantassistant_agent_system_message = "You are a helpful AI assistant. ""You can help with change brightness on my device. ""Return 'TERMINATE' when the task is done."assistant_agent = ConversableAgent("assisant",llm_config={'config_list':config_list},system_message=assistant_agent_system_message,code_execution_config=False,)executor = LocalCommandLineCodeExecutor(timeout=10,work_dir=temp_dir.name,)user_proxy_agent = ConversableAgent("user-proxy",code_execution_config={'executor': executor,},human_input_mode="ALWAYS",)#注册工具# Register the tool signature with the assistant agent.assistant_agent.register_for_llm(name="changeScreenbrightness", description="A tool to change screen brightness")(change_brightness)# Register the tool function with the user proxy agent.user_proxy_agent.register_for_execution(name="changeScreenbrightness")(change_brightness)chat_result = user_proxy_agent.initiate_chat(assistant_agent,message='Change brightness to 50')if __name__ == '__main__':main()

OAI_CONFIG_LIST文件的配置为:

[{"model": "qwen-plus-latest", "base_url":"https://dashscope.aliyuncs.com/compatible-mode/v1","api_type":"qwen","api_key":"你的key","temperature": 0.7,"max_tokens":2000,"stream":0}
]

注意事项

  1. 这里使用的阿里的兼容openai的接口。是一个比较好的选择,因为autogen对openai的适配度高。
  2. 使用了下阿里百炼平台的llama3(要申请,有免费额度),但是不支持function call,所以改成了使用qwen-plus-latest。这个模型还可以,比qwen-turo聪明些。

相关文章:

  • VMware搭建DVWA靶场
  • 【Vue】为什么 Vue 不使用 React 的分片更新?
  • 如何提升网页加载和跳转速度:Flask 模板渲染 vs Nginx 静态资源处理
  • 第二百五十五节 JPA教程 - JPA 多对多连接表示例
  • Springboot + netty + rabbitmq + myBatis
  • C++冷门知识点1
  • jeesite集成redis,redis工具类
  • Iptables,ufw,firewalld的关系与区别
  • 鸿蒙界面开发(九):列表布局 (List)
  • XSS | DOM 型 XSS 攻击
  • 828华为云征文|Flexus云服务器X实例实践:部署2048网页小游戏
  • 基于单片机的小车行走加温湿度检测系统
  • 尚硅谷----智尚代驾项目----Day7(续)------预估乘客订单数据之Drools
  • 第五届计算机科学与管理科技国际学术会议(ICCSMT 2024)
  • ROS与无人驾驶学习笔记(一)——ROS基本操作
  • SegmentFault for Android 3.0 发布
  • “大数据应用场景”之隔壁老王(连载四)
  • EOS是什么
  • Java到底能干嘛?
  • JS变量作用域
  • Mysql数据库的条件查询语句
  • Python进阶细节
  • Redis在Web项目中的应用与实践
  • 驱动程序原理
  • 树莓派 - 使用须知
  • 微信如何实现自动跳转到用其他浏览器打开指定页面下载APP
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • ​ArcGIS Pro 如何批量删除字段
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • ### RabbitMQ五种工作模式:
  • #DBA杂记1
  • #pragma pack(1)
  • #pragma预处理命令
  • $L^p$ 调和函数恒为零
  • (02)Unity使用在线AI大模型(调用Python)
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (C#)Windows Shell 外壳编程系列9 - QueryInfo 扩展提示
  • (PySpark)RDD实验实战——取一个数组的中间值
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • (附源码)ssm高校志愿者服务系统 毕业设计 011648
  • (每日持续更新)jdk api之FileReader基础、应用、实战
  • (牛客腾讯思维编程题)编码编码分组打印下标(java 版本+ C版本)
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (新)网络工程师考点串讲与真题详解
  • (一)80c52学习之旅-起始篇
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (转)Linux下编译安装log4cxx
  • . NET自动找可写目录
  • .NET COER+CONSUL微服务项目在CENTOS环境下的部署实践
  • .net FrameWork简介,数组,枚举
  • .NET WebClient 类下载部分文件会错误?可能是解压缩的锅
  • .Net 基于.Net8开发的一个Asp.Net Core Webapi小型易用框架
  • .NET 解决重复提交问题
  • .Net 垃圾回收机制原理(二)
  • .Net调用Java编写的WebServices返回值为Null的解决方法(SoapUI工具测试有返回值)