微軟TinyTroupe:新的多AI代理框架
比OpenAI Swarm、LangGraph、AutoGen和CrewAI更好?
当前在生成AI市场中备受关注的新概念是Multi AI Agent。看起来微软正在全力以赴成为该领域的行业领袖。就在几天前,微软发布了Magentic-One,现在他们又推出了另一个Multi-AI Agent框架——TinyTroupe。
什么是TinyTroupe?
TinyTroupe是一个实验性的Python库,旨在模拟个体,被称为TinyPersons,具有独特的个性、兴趣和目标。
它提供了一个在虚拟环境中研究行为和互动的平台。
介绍TinyPersons
微型人是一种人工智能代理,能够:
倾听用户和其他代理。
参与现实对话。
在一个名为TinyWorld的模拟世界中过着他们的生活,他们根据自己的角色动态地互动。
LLM是如何使用的?
- 图书馆利用先进的LLM(如GPT-4)来产生自然和逼真的行为。
- 这些模型使得小人物能够根据真实场景调整他们的行动和对话。
为什么需要TinyTroupe?
- TinyTroupe允许用户模拟高度可定制角色之间的互动。
- 这些模拟探索不同控制条件下多样化的互动类型和消费者行为。
- 重点是分析和理解类似人类行为,而不是像AI助手一样直接帮助用户。
模拟优先设计
- 与传统为现实世界辅助设计的工具不同,TinyTroupe包括专为模拟目的优化的功能和机制。
- 这些专门的功能旨在提升对受控环境中复杂互动的研究。
独特方式
- 超越典型的基于LLM的游戏模拟,着重于生产力和商业场景。
- 通过在模拟环境中探索类似于人类的互动,提供改进项目和产品成功的见解。
- 旨在为消费者研究、项目规划和产品开发方面提供创新解决方案。
用例和应用
一些可以用来解决现实世界问题的直接问题包括:
- 合成数据创建:生成逼真的数据以训练模型或分析新的机会。
- 头脑风暴想法:模拟焦点小组,以最低成本收集产品或概念的宝贵反馈。
- 提案反馈:为产品或项目想法获得特定人物群体的定制回馈,如医生或律师。
- 广告活动测试:通过模拟观众测试数字广告,以在实际使用之前对其进行优化。
- 工具和软件测试:为诸如聊天机器人或搜索引擎等系统提供输入,并评估它们的反应。
如何开始?
简单易懂,只需
- 克隆存储库
git clone https://github.com/microsoft/tinytroupe
cd tinytroupe
pip install .
在我们结束之前,让我们通过使用TinyTroupe来了解一个客户采访的基本示例。
例子
- 导入库
import json
import sys
sys.path.append('..')
import tinytroupe
from tinytroupe.agent import TinyPerson
from tinytroupe.environment import TinyWorld, TinySocialNetwork
from tinytroupe.factory import TinyPersonFactory
from tinytroupe.extraction import default_extractor as extractor
from tinytroupe.extraction import ResultsReducer
import tinytroupe.control as control
2. 在这个环境中创建一个虚拟环境和一个人工智能人物
#creating a fake banking environment
factory = TinyPersonFactory("One of the largest banks in Brazil, full of bureaucracy and legacy systems.")
#creating AI persona
customer = factory.generate_person(
"""
The vice-president of one product innovation. Has a degree in engineering and a MBA in finance.
Is facing a lot of pressure from the board of directors to fight off the competition from the fintechs.
"""
)
3. 您也可以查看客户小传(根据上面提供的描述生成的故事背景)。
customer.minibio()
4. 提供代理人一个情境
customer.think("I am now talking to a business and technology consultant to help me with my professional problems.")
5. 立即解决特定问题。
customer.listen_and_act("What would you say are your main problems today? Please be as specific as possible.",
max_content_length=3000)
现在,正如您在这种情况下所看到的那样,创建一个代理是非常容易的。不仅仅是代理,我们甚至定义了一个虚拟环境,并且还可以添加新的代理。
示例代码(git 仓库中还有更多示例)
我们很快将尝试用于其他用例,并很快发布更多资源。在那之前就到此为止!