v0.4.0-alpha

neondatabase/neonv0.4.0-alphaJan 29, 2025by paulosalem

AI Summary

This alpha release significantly enhances agent personas with deeper specifications and JSON loading capabilities. It introduces 'fragments' for reusing persona elements and adds new concepts like LLM-based logical propositions and interventions for monitoring behavior.

Key Highlights

  • Deeper persona specifications including personality traits, preferences, and beliefs
  • JSON file definition for TinyPerson agents via load_specification()
  • Introduction of 'fragments' for reusing persona elements across different agents
  • LLM-based logical Propositions to facilitate monitoring agent behavior
  • Interventions to allow specification of event-based modifications to the simulation

Breaking Changes

  • API changes in some places that will likely break existing programs

New Features

  • Deeper persona structure with personality traits, preferences, and beliefs
  • JSON file loading for TinyPerson definitions
  • Fragments concept for persona element reuse
  • LLM-based logical Propositions
  • Interventions for event-based modifications
  • Submodules organized into their own folders

Full Release Notes

## What's new
**[2025-01-29] Release 0.4.0 with various improvements. Some highlights:**
  - Personas have deeper specifications now, including  personality traits, preferences, beliefs, and more. It is likely we'll further expand this in the future. 
  - `TinyPerson`s can now be defined as JSON files as well, and loaded via the `TinyPerson.load_specification()`, for greater convenience. After loading the JSON file, you can still modify the agent programmatically. See the [examples/agents/](./examples/agents/) folder for examples.
  - Introduces the concept of *fragments* to allow the reuse of persona elements across different agents. See the [examples/fragments/](./examples/fragments/) folder for examples, and the notebook [Political Compass (customizing agents with fragments)](<./examples/Political Compass (customizing agents with fragments).ipynb>) for a demonstration.
  - Introduces LLM-based logical `Proposition`s, to facilitate the monitoring of agent behavior.
  - Introduces `Intervention`s, to allow the specification of event-based modifications to the simulation.
  - Submodules have their own folders now, to allow better organization and growth.
  
  **Note: this will likely break some existing programs, as the API has changed in some places.**

## PRs from the community and the core team
* allow configuration of Azure OpenAI embedding model by @ewheeler in https://github.com/microsoft/TinyTroupe/pull/59
* Fix spelling and grammatical errors by @terrchen in https://github.com/microsoft/TinyTroupe/pull/19
* Change to use de facto standard for dotenv sample by @webysther in https://github.com/microsoft/TinyTroupe/pull/22
* fix typo, call `semantic_memory` method of agent not self by @ewheeler in https://github.com/microsoft/TinyTroupe/pull/57
* docs: update README.md by @eltociear in https://github.com/microsoft/TinyTroupe/pull/24
* Add `matplotlib` to dependencies by @RektPunk in https://github.com/microsoft/TinyTroupe/pull/33
* variable typo #18 fixed by @rahimbaig28 in https://github.com/microsoft/TinyTroupe/pull/25
* also retry aux_act_once upon TypeError by @ewheeler in https://github.com/microsoft/TinyTroupe/pull/58
* Adds deeper persona structure, including fragments. by @paulosalem in https://github.com/microsoft/TinyTroupe/pull/86
* Merges latest development version into main. by @paulosalem in https://github.com/microsoft/TinyTroupe/pull/90

## New Contributors
* @ewheeler made their first contribution in https://github.com/microsoft/TinyTroupe/pull/59
* @terrchen made their first contribution in https://github.com/microsoft/TinyTroupe/pull/19
* @webysther made their first contribution in https://github.com/microsoft/TinyTroupe/pull/22
* @eltociear made their first contribution in https://github.com/microsoft/TinyTroupe/pull/24
* @RektPunk made their first contribution in https://github.com/microsoft/TinyTroupe/pull/33
* @rahimbaig28 made their first contribution in https://github.com/microsoft/TinyTroupe/pull/25

**Full Changelog**: https://github.com/microsoft/TinyTroupe/compare/v0.3.1-alpha...v0.4.0-alpha