易用、灵活、高效的开源大模型应用开发框架
框架特点
-
语法简单易学,5分钟开始使用
使用
pip install -U Agently
安装后即可直接在Python代码中使用。只需要通过几行代码指定好驱动Agent实例的大模型,提供对应的鉴权信息,即可在Python代码中嵌入可以响应指令请求的Agent实例,您可以使用链式风格的调用方法,像调用函数一样和Agent实例交互。
-
为工程开发者设计,应用开发灵活性高
使用Agently框架,您可以向Agent实例传递结构化数据来灵活表达请求诉求,也可以在框架里轻松管理Agent实例的各种设定信息,还可以方便地将自定义函数方法提供给Agent实例使用。
您还可以方便地监听和处理流式输出的结果,或是使用Agently Workflow将复杂的任务切分成块,有序连接(支持可连接成环的有序单向流)。
-
具有深度的架构设计和底层思想
Agently框架深度理解并解构了大模型驱动的Agent结构,在框架核心维护了模型请求前后置信息流处理工作流、结构化数据解析、实例生命周期数据管理等构成Agent工作过程的基础原子要件,解除了业务表达层和模型请求层之间的耦合。
在此基础之上,通过能力插件、工作流管理方案等能力进一步增强开发者在应用层的表达丰富度。
代码样例
运行结果
嗨,Max!编程就像是在创造一个故事或者一个世界,不过用的是计算机能理解的“语言”。编程可以做很多有趣和有用的事情哦:
1. **创造游戏**:就像你玩的“我的世界”和“模拟城市”,这些游戏都是通过编程来创造的。你可以用编程来设计自己的游戏,决定游戏里面的规则和故事。
2. **解决问题**:编程能帮助解决数学问题,比如计算你的成绩或者帮你理解数学概念。
3. **制作动画和电影**:你看过动画片吗?很多动画电影和电视节目都是用特殊的编程软件制作的,让角色动起来。
4. **控制机器人**:如果你喜欢去动物园,想象一下如果你能通过编程控制一个机器人,让它去探索动物的生活,是不是很有趣?
5. **网站和应用程序**:像你浏览的网页,或者玩的游戏,都是程序员用编程语言创造出来的。
6. **学习新事物**:编程能帮你通过类比学习新概念,比如你可以把编程比作是搭建一个游乐场,每条代码就像是你用的积木,一块一块搭建成一个完整的游乐场。
7. **分享故事**:如果你喜欢听故事,编程也可以帮你把故事变成互动的形式,让故事更加生动有趣。
编程就像是一种魔法,能把你脑海中的想象变成现实。怎么样,是不是很酷?
运行结果
Agently是一个帮助大语言模型(LLM)应用开发者快速构建AI agent原生应用的开发框架。
它允许插件开发者将插件打包在框架主包之外,并单独分享他们的插件包给其他开发者。
开发者只需要下载插件包,将文件解压到他们的工作文件夹中,然后轻松安装插件。
Agently还提供了创建和管理基于大语言模型的Agent实例的功能,并能管理他们的人设和记忆,适用于客服机器人、角色扮演机器人等应用。
此外,Agently还不断更新版本,为开发者提供更多便利的功能和工具。
更多信息可以参考Agently的GitHub官方仓库:[Agently](https://github.com/Maplemx/Agently)
%%{ init: { 'flowchart': { 'curve': 'linear' }, 'theme': 'neutral' } }%%
%% Rendered By Agently %%
flowchart LR
f9024ca5-18d9-44a8-9377-11f0e23c097a("Start") -.-> |"output -->-- input"| a5971148-6f84-488f-821a-89653b5a6941("User Input")
a5971148-6f84-488f-821a-89653b5a6941("User Input") -.-> |"user_input -- ◇ -- input"| faf731fe-50f8-4074-adbf-7f3900812a68("Goodbye")
a5971148-6f84-488f-821a-89653b5a6941("User Input") -.-> |"user_input -- ◇ -- user_input"| f3540386-0f51-47da-8fde-5ec8d6b21bc7("Assistant Reply")
a5971148-6f84-488f-821a-89653b5a6941("User Input") -.-> |"user_input -->-- user_input"| 45500531-d427-4227-9cdd-e7b3f7f1aaaf("Update Chat History")
f3540386-0f51-47da-8fde-5ec8d6b21bc7("Assistant Reply") -.-> |"assistant_reply -->-- assistant_reply"| 45500531-d427-4227-9cdd-e7b3f7f1aaaf("Update Chat History")
45500531-d427-4227-9cdd-e7b3f7f1aaaf("Update Chat History") -.-> |"output -->-- input"| a5971148-6f84-488f-821a-89653b5a6941("User Input")