Skip to main content

A Python framework for building AI agents with advanced orchestration capabilities

Project description

nFactorial

Factorial is a Python framework for reliably running high-concurrency agents asynchronously. It's designed for production workloads where you need to process thousands of agent tasks concurrently with built-in retries, monitoring, and distributed execution.

Dashboard

Features

  • Distributed execution: Run agents across multiple workers and machines with Redis-based coordination
  • Fault tolerance: Automatic retries, backoff strategies, and recovery of dropped tasks from crashed workers
  • Real-time events: Stream progress updates and results via WebSocket or Redis pub/sub
  • In-flight agent task management: Cancel, steer, and monitor running tasks
  • Observability: Built-in metrics dashboard and comprehensive logging
  • Deferred tools: Support for long-running operations that complete outside the agent execution

Installation

pip install nfactorial

Quick Start

from factorial import Agent, Orchestrator, AgentWorkerConfig, gpt_41


def get_weather(location: str) -> str:
    return f"The weather in {location} is sunny and 72°F"


agent = Agent(
    instructions="You help users get weather information.",
    model=gpt_41,
    tools=[get_weather],
)

# Create orchestrator
orchestrator = Orchestrator(
    redis_host="localhost",
    redis_port=6379,
    redis_db=0,
    redis_max_connections=50,
)
orchestrator.register_runner(
    agent=agent, agent_worker_config=AgentWorkerConfig(workers=1)
)

# Run the system
if __name__ == "__main__":
    orchestrator.run()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nfactorial-0.1.4.tar.gz (43.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nfactorial-0.1.4-py3-none-any.whl (49.1 kB view details)

Uploaded Python 3

File details

Details for the file nfactorial-0.1.4.tar.gz.

File metadata

  • Download URL: nfactorial-0.1.4.tar.gz
  • Upload date:
  • Size: 43.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.0

File hashes

Hashes for nfactorial-0.1.4.tar.gz
Algorithm Hash digest
SHA256 3b70f9009300a3289827db6fb83773bf0b011820bb0b8e690ba66ccc4fbe69da
MD5 2a6c66c39669fde6b5325c2e52be7edc
BLAKE2b-256 e7a45b7d0654fbdaed189aa4bd461f810fd53ff161a8fc598ffecac39ead72b8

See more details on using hashes here.

File details

Details for the file nfactorial-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: nfactorial-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 49.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.0

File hashes

Hashes for nfactorial-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 2d030ff76a02a11b412399ef73d55672d59159f0702546baed224e39538c92af
MD5 c50fb94013cbb847e2b7a330699384f7
BLAKE2b-256 4d957797cbd5e484faa1d7ab93e04abe2eafc61eb9742c83ebc169a0f2e55d2b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page