微軟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安装要求
  • pip install .
  • 设置您的API密钥。要配置使用TinyTroupe所需的环境变量,请将AZURE_OPENAI_KEY和AZURE_OPENAI_ENDPOINT设置为您的Azure OpenAI API密钥和端点(如果使用Azure)。如果直接使用OpenAI,请将OPENAI_API_KEY设置为您的API密钥。
  • 在我们结束之前,让我们通过使用TinyTroupe来了解一个客户采访的基本示例。

    例子

    1. 导入库

    2. 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 仓库中还有更多示例)

    我们很快将尝试用于其他用例,并很快发布更多资源。在那之前就到此为止!

    2024-11-18 04:12:09 AI中文站翻译自原文