Simiverse is a versatile simulation framework designed to be a universal plugin for applications, providing the necessary base simulation class and a variety of simulation modules. It allows for easy integration into different systems and can be utilized across various domains such as training data generation for machine learning models, evaluating AI alignment, simulating complex decision-making processes, and more. The framework provides tools for managing entities, environments, and decision-making within simulations, with the flexibility to use AI-driven decision models through an extensible client architecture.
Simiverse features a base class, Simulation, enabling traditional and AI-assisted decision-making workflows. It includes specialized modules like LLMClient
, an abstract class for AI interactions, and OpenAIClient
, an implementation example demonstrating its usage with openai. The framework integrates seamlessly with a web platform for efficient and interactive simulations.
- Node.js installed on your machine.
- OpenAI API key for AI-assisted decision-making.
- Git for cloning the repository.
- Universal Simulation Framework: Build your simulations using the base
Simulation
class, with support for integrating custom modules. - Dynamic Entity Generation: Simulate diverse entities with customizable attributes.
- AI-Assisted Decision-Making: Easily integrate AI models for decision-making processes, using the
LLMClient
andOpenAIClient
modules. - Custom Simulation Modules: Extend the framework by adding specific modules to fit various use cases such as training, evaluation, and AI alignment.
- Web Platform Integration: Seamlessly run and manage simulations on a web platform built for simulation execution and interaction.
Description: The Survival Simulation models global and national decision-making in a resource-constrained world. It demonstrates the delicate balance between cooperation and defection, where nations must decide whether to collaborate or claim resources to survive. The simulation tracks global resource levels and the collapse of nations based on their decisions.
- Simulation Type: Resource management, decision-making, global collapse.
- Primary Focus: Cooperation vs. defection dynamics among nations.
- Features:
- Dynamic nation generation with unique resource states.
- Resource depletion and its impact on global stability.
- AI-assisted decision-making for nations' actions.
Example Usage:
import { SurvivalSimulation } from "simiverse/simulations";
import { OpenAIClient } from "../llms/openai";
const simulation = new SurvivalSimulation(entities, environment, {
steps: 10,
type: "llm",
openaiApiKey: "your-api-key",
onStepComplete: (eventData) => console.log(eventData),
});
simulation.run();
-
Clone Repository:
git clone https://github.com/dev-diaries41/simiverse.git cd simiverse
-
Install Dependencies:
npm install
-
Configure Environment:
- Ensure you have an OpenAI API key.
- Create a
.env
file in the project root and add your API key:OPENAI_API_KEY=your_api_key_here
- Run the Simulation:
npm start
Here are some early ideas and potential features I may implement into the Simiverse framework in the future:
- 3D Avatar Creation: Generate 3D avatars from uploaded images for use in simulations.
- BCI Integration: Incorporate brain-computer interfaces for real-time neural feedback and decision-making.
- VR Support: Enable immersive real-time simulation interaction via VR headsets.
- Holographic Displays: Utilize 3D holographic displays for advanced, multi-dimensional data visualization. These ideas are in the early stages and will evolve as the framework continues to develop.