原子代理:一个用于建造AI代理的轻巧的模块化框架
人工智能代理人通过自主执行任务彻底改变行业。随着其知名度的增长,对有效开发框架的需求也随之增长。 Atomic Agents是一种新来者,专为轻质,模块化和用户友好的AI代理创建而设计。它透明的动手方法使开发人员可以直接与单个组件进行交互,这是构建高度可定制,易于理解的AI系统的理想选择。本文探讨了原子代理的功能及其简约的设计优势。
目录
- 原子剂如何起作用
- 创建基本代理
- 先决条件
- 代理结构
- 合并内存
- 修改系统提示
- 连续代理聊天实现
- 流聊天输出
- 自定义输出模式集成
- 常见问题
原子剂如何起作用
原子,意思是不可分割的,完美地描述了原子剂。每个代理都是由基本的独立组件构建的。与使用高级抽象的Autogen和Crew AI等框架不同,原子代理采用低级,模块化设计。该授予开发人员直接控制输入/输出,工具集成和内存管理等组件,从而产生高度可定制和可预测的代理。基于代码的实现可确保完全可见性,从而可以对每个阶段的细粒度控制,从输入处理到响应生成。
创建基本代理
先决条件
在构建代理之前,为您选择的LLM确保必要的API键。使用.env
文件加载这些键:
来自dotenv import load_dotenv load_dotenv('./ env')
基本库:
- 原子代理 - 1.0.9
- 讲师 - 1.6.4(对于LLM的结构化数据)
- Rich - 13.9.4(用于文本格式)
代理结构
让我们建立一个简单的代理:
步骤1:导入必要的库。
导入操作系统 进口教练 进口Openai 来自Rich.Console进口控制台 来自Rich.Panel进口面板 来自Rich.Text导入文本 来自Rich.Live Import Live 来自atomic_agents.Axents.base_agent进口baseagent,baseagentConfig,baseagentinputschema,baseagentOutputschema
步骤2:初始化LLM。
client = enserver.from_openai(openai.openai())
步骤3:设置代理。
agent = baseagent(config = baseagentConfig(client = client,model =“ gpt-4o-mini”,温度= 0.2))
运行代理:
结果= agent.run(baseagentInputschema(chat_message ='为什么在室温下汞液体?')) 打印(result.chat_message)
这将创建一个具有最小代码的基本代理。重新定位代理将导致上下文丧失。让我们添加内存。
合并内存
步骤1:导入AgentMemory
和初始化。
来自atomic_agents.lib.components.agent_memory导入代理商 内存= agentmemory(max_messages = 50)
步骤2:使用内存构建代理。
agent = baseagent(config = baseagentConfig(client = client,model =“ gpt-4o-mini”,温度= 0.2,内存=内存))
现在,代理在多个交互之间保留上下文。
修改系统提示
步骤1:导入SystemPromptGenerator
并检查默认提示。
来自atomic_agents.lib.components.system_prompt_generator导入systempromptGenerator print(agent.system_prompt_generator.generate_prompt()) Agent.System_prompt_generator.background
步骤2:定义自定义提示。
system_prompt_generator = system promptGenerator( 背景= [“此助手是一位专业的物理专家,旨在有用和友好。” 步骤= [“了解用户的输入并提供相关响应。”,“对用户响应。”],,, output_instructions = [“提供有用的相关信息来帮助用户。”,“在所有互动中都友好而尊重。”,“始终在押韵诗中回答。”] )
您还可以独立地将消息添加到内存。
步骤3和4:使用内存和自定义提示构建代理。 (类似于以前的步骤,将memory
和system_prompt_generator
集成到BaseAgentConfig
)
现在,输出将反映自定义提示的规格。
Continuous Agent Chat Implementation, Streaming Chat Output, Custom Output Schema Integration (These sections would follow a similar pattern of code examples and explanations as above, adapting the code to achieve continuous chat, streaming, and custom schema output. Due to length constraints, detailed code for these sections is omitted, but the principles remain consistent with the modular and transparent approach of Atomic Agents.)
常见问题
(这些将在这里解决,以镜像原始内容。)
结论
Atomic Agents提供了一个简化的模块化框架,为开发人员提供了对其AI代理的完全控制。它的简单性和透明度促进了高度可定制的解决方案,而没有高级抽象的复杂性。这使其成为适应性AI开发的绝佳选择。随着框架的发展,期望更多的功能,并保持其极简主义的方法来构建清晰的,量身定制的AI代理。
以上是什么是原子特工?的详细内容。更多信息请关注PHP中文网其他相关文章!

自2008年以来,我一直倡导这辆共享乘车面包车,即后来被称为“ Robotjitney”,后来是“ Vansit”,这是城市运输的未来。 我预见这些车辆是21世纪的下一代过境解决方案Surpas

革新结帐体验 Sam's Club的创新性“ Just Go”系统建立在其现有的AI驱动“扫描和GO”技术的基础上,使会员可以在购物旅行期间通过Sam's Club应用程序进行扫描。

NVIDIA在GTC 2025上的增强可预测性和新产品阵容 NVIDIA是AI基础架构的关键参与者,正在专注于提高其客户的可预测性。 这涉及一致的产品交付,达到绩效期望以及

Google的Gemma 2:强大,高效的语言模型 Google的Gemma语言模型家族以效率和性能而庆祝,随着Gemma 2的到来而扩展。此最新版本包括两种模型:270亿个参数VER

这一领先的数据剧集以数据科学家,天体物理学家和TEDX演讲者Kirk Borne博士为特色。 Borne博士是大数据,AI和机器学习的著名专家,为当前状态和未来的Traje提供了宝贵的见解

这次演讲中出现了一些非常有见地的观点——关于工程学的背景信息,这些信息向我们展示了为什么人工智能如此擅长支持人们的体育锻炼。 我将从每位贡献者的观点中概括出一个核心思想,以展示三个设计方面,这些方面是我们探索人工智能在体育运动中应用的重要组成部分。 边缘设备和原始个人数据 关于人工智能的这个想法实际上包含两个组成部分——一个与我们放置大型语言模型的位置有关,另一个与我们人类语言和我们的生命体征在实时测量时“表达”的语言之间的差异有关。 Alexander Amini 对跑步和网球都很了解,但他还

卡特彼勒(Caterpillar)的首席信息官兼高级副总裁杰米·恩格斯特(Jamie Engstrom)领导了一支由28个国家 /地区的2200多名IT专业人员组成的全球团队。 在卡特彼勒(Caterpillar)工作了26年,其中包括她目前的四年半,Engst

Google Photos的新Ultra HDR工具:快速指南 使用Google Photos的新型Ultra HDR工具增强照片,将标准图像转换为充满活力的高动态范围杰作。对于社交媒体而言,此工具可提高任何照片的影响,


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

Atom编辑器mac版下载
最流行的的开源编辑器

SublimeText3 Linux新版
SublimeText3 Linux最新版

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

禅工作室 13.0.1
功能强大的PHP集成开发环境

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。