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聪明些。
相关推荐
lpfasd12321 小时前
基于Cloudflare生态的应用部署与开发全解
人工智能·agent·cloudflare
Java码农也是农1 天前
Multi-Agent 系统设计模式
设计模式·agent·multi-agent
最初的↘那颗心1 天前
Agent 实战:构建第一个 Agent 与记忆系统设计
java·大模型·agent·spring ai·记忆系统
Cosolar1 天前
LangChain实战:基于Streamlit+ LangChain + Qwen 快速构建一个多会话AI聊天页面
人工智能·llm·agent
云端FFF1 天前
LLM-based Agent 技术演进 —— 从 Prompt Engineering 到 Harness
llm·agent·skill·ai engineering
用户4410168396161 天前
Claude Code 源码解析:1500字读懂它的队列系统设计
agent
最初的↘那颗心1 天前
Agent 核心原理:本质、ReAct 框架与工具设计最佳实践
大模型·agent·react·spring ai·工具设计
Bill Adams1 天前
如何基于Harness Engineering设计一个Agent OS
人工智能·prompt·agent·智能体·harness
knqiufan1 天前
拆解 Claude Code SubAgent:隔离、专业化与权限设计
ai·agent·claude code
Old Uncle Tom1 天前
Claude Code 上下文压缩分析
人工智能·ai·agent