API Reference

Single Job Management

syndisco.Discussion

A job conducting a discussion between different actors (actors.Actor).

syndisco.Annotation

An annotation job applied on a single discussion.

syndisco.Logs

Stores and serializes the log entries of a discussion.

Multi-Job Management

syndisco.DiscussionExperiment

An experiment that creates, manages, and executes multiple synthetic discussions using LLM-based agents.

syndisco.AnnotationExperiment

An experiment that uses LLM annotators to label synthetic discussion logs.

Actors

syndisco.Actor

An abstract class representing an actor which responds according to an underlying LLM instance.

syndisco.Persona

A dataclass holding information about the synthetic persona of a LLM actor.

syndisco.ActorType

The purpose of the LLMActor, used to determine proper prompt structure

Models

syndisco.TransformersModel

HuggingFace Transformers model wrapper.

syndisco.OpenAIModel

OpenAI API-compatible model wrapper.

Turn Management

syndisco.RandomWeighted

Enable a participant to reply with a set probability, else randomly select another participant.

syndisco.RoundRobin

A simple turn manager which gives priority to the next user in the queue.

Utilities

syndisco.logging

Module handling logging for LLM discussion and annotation tasks.

syndisco.timing

Decorator which logs the execution time of a function.