Skip to main content

AISBF - AI Service Broker Framework || AI Should Be Free - A modular proxy server for managing multiple AI provider integrations

Project description

AISBF - AI Service Broker Framework || AI Should Be Free

A modular proxy server for managing multiple AI provider integrations with unified API interface.

Author

Stefy Lanza stefy@nexlab.net

Repository

Official repository: https://git.nexlab.net/nexlab/aisbf.git

Quick Start

Installation

From PyPI (Recommended)

pip install aisbf

From Source

python setup.py install

Usage

aisbf

Server starts on http://localhost:8000

Development

Building the Package

To build the package for PyPI distribution:

./build.sh

This creates distribution files in the dist/ directory.

Cleaning Build Artifacts

To remove all build artifacts and temporary files:

./clean.sh

PyPI Publishing

See PYPI.md for detailed instructions on publishing to PyPI.

Supported Providers

  • Google (google-genai)
  • OpenAI and openai-compatible endpoints (openai)
  • Anthropic (anthropic)
  • Ollama (direct HTTP)

Configuration

See config/providers.json and config/rotations.json for configuration examples.

API Endpoints

General Endpoints

  • GET / - Server status and provider list (includes providers, rotations, and autoselect)

Provider Endpoints

  • POST /api/{provider_id}/chat/completions - Chat completions for a specific provider
  • GET /api/{provider_id}/models - List available models for a specific provider

Rotation Endpoints

  • GET /api/rotations - List all available rotation configurations
  • POST /api/rotations/chat/completions - Chat completions using rotation (load balancing across providers)
  • GET /api/rotations/models - List all models across all rotation configurations

Autoselect Endpoints

  • GET /api/autoselect - List all available autoselect configurations
  • POST /api/autoselect/chat/completions - Chat completions using AI-assisted selection based on content analysis
  • GET /api/autoselect/models - List all models across all autoselect configurations

Error Handling

  • Rate limiting for failed requests
  • Automatic retry with provider rotation
  • Proper error tracking and logging

Donations

The project includes multiple donation options to support its development:

Web3/MetaMask Donation

Works on any website - The Web3 donation is completely independent of the current page Click the "🦊 Donate with MetaMask" button in the extension popup (only appears if MetaMask is detected) Supports both modern window.ethereum and legacy window.web3 providers Default donation: 0.1 ETH to 0xdA6dAb526515b5cb556d20269207D43fcc760E51 Users can modify the amount in MetaMask before confirming

PayPal Donation

Click the "💳 Donate with PayPal" button in the extension popup Opens PayPal donation page for info@nexlab.net Traditional payment method for users without cryptocurrency wallets Always available regardless of browser setup

Bitcoin Donation

Address: bc1qcpt2uutqkz4456j5r78rjm3gwq03h5fpwmcc5u Traditional BTC donation method

Documentation

See DOCUMENTATION.md for complete API documentation, configuration details, and development guides.

License

GNU General Public License v3.0

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

aisbf-0.2.7.tar.gz (39.0 kB view details)

Uploaded Source

Built Distribution

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

aisbf-0.2.7-py3-none-any.whl (58.6 kB view details)

Uploaded Python 3

File details

Details for the file aisbf-0.2.7.tar.gz.

File metadata

  • Download URL: aisbf-0.2.7.tar.gz
  • Upload date:
  • Size: 39.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for aisbf-0.2.7.tar.gz
Algorithm Hash digest
SHA256 f18b21b78b7ee5845c451d0e38e96a812065de6b197d77e5263a46e1af6abdc1
MD5 0655ae97d2b8ede2fd60ca607da20961
BLAKE2b-256 eb8655ad804b4abb412145f36f7a5df471b7bc0e2372d06f66525f8b5d6aeb8f

See more details on using hashes here.

File details

Details for the file aisbf-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: aisbf-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 58.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for aisbf-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 782434d3303c7c5e3effbc4afb2ccc83c7eb78ea396ea4721a9a0612676b7ffa
MD5 6ce3662ca180d3f78bd34b295ef354e0
BLAKE2b-256 e741c5fbcf273ed9b2e11929663ff30bf4d425d4d2fd8a9f44d7e4c2026306f1

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