autogen改变屏幕亮度

学习资料

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

小实践,修改屏幕亮度

准备:

  1. 修改屏幕亮度的python代码(参考:改变屏幕亮度
  2. 使用工具(autogen使用工具例子代码)
python 复制代码
import tempfile

from 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()
    #定义assistant
    assistant_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文件的配置为:

python 复制代码
[
    {
        "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聪明些。
相关推荐
lxmjlove15 小时前
读懂 AgentFlow:让 Agent 在「执行过程中」学会规划和用工具
agent
DigitalOcean17 小时前
DigitalOcean 推出大模型自动化评估功能,上线前精准避坑
llm·agent
Databend17 小时前
Agent 轨迹分析与归因的数据工程实践
大数据·数据库·agent
柒和远方17 小时前
Phase 7.2 RAG SafetyGuard:把用户上传资料当成低信任证据
aigc·agent
colir017 小时前
被粉丝夸爆的超级 ai 个人工作站,原来这么多福利
开源·agent·claude
程序员小假17 小时前
从问题到答案:RAG系统完整处理流程与核心机制深度拆解
后端·面试·agent
柒和远方17 小时前
Phase 6.8:把 KnowledgeDedupAgent / KnowledgeOrganizerAgent 补成可用闭环
agent
阿里云大数据AI技术18 小时前
MaxCompute Agentic 工具套件首发:面向所有 Agent 提供标准化数据服务
人工智能·agent
百度Geek说18 小时前
协作的逆向演进:从 Agent 逻辑重构团队管理
agent·团队管理
Augustzero18 小时前
Codex Desktop 新建会话无法发送消息:一次由旧版 CLI 路径引发的故障排查
chatgpt·agent