Skip to main content

Bond AI

Bond AI leverages OpenAI's Assistant APi to help develop Generative AI agents and chatbots with access to your own tools, APIs and data sources. Bond AI also has a web UI with a built-in chat interface and is extensible to other interfaces with access to these agents.

Features

  • Simple definition of agents with tools and data
  • Automatic discovery of agents
  • Built-in threads, tool access and data integration from the Assistants API
  • Google authentication support
  • Thread sharing between users
  • Modular design with agents, threads, and pages

Getting Started

Prerequisites

  • Python 3.13
  • Poetry

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/bond-ai.git
    cd bond-ai
    
  2. Install dependencies using Poetry:

    poetry config virtualenvs.in-project true
    
    poetry install
    
    poetry build
    
    poetry shell
    
    source $(poetry env info --path)/bin/activate
    
  3. Set up environment variables:

    gcloud auth application-default login

    gcloud config set project

    gcloud config get-value project

    Create a .env file in the project root directory and add the following variables:

    OPENAI_API_KEY=your_openai_api_key
    OPENAI_PROJECT=you_openai_project_id
    OPENAI_DEPLOYMENT=openai_model #(e.g. "gpt-4o-mini")
    
    # or
    # AZURE_OPENAI_API_KEY=your_azure_openai_api_key
    # AZURE_OPENAI_ENDPOINT=your_azure_openai_endpoint
    # AZURE_OPENAI_API_VERSION=api_version (e.g. 2024-08-01-preview)
    
    AUTH_ENABLED=True
    GOOGLE_AUTH_CREDS_PATH=path_to_your_google_auth_creds.json
    GOOGLE_AUTH_REDIRECT_URI=your_redirect_uri_for_this_app
    
    METADATA_DB_URL=database_url_for_metadata #(e.g. sqlite:///.metadata.db)
    

Running the Application

To start the application, run the following command:

python -m bond_ai.app.start --server.port=8080 --server.address=0.0.0.0

Running Tests

To run the tests, use the following command:

poetry run pytest

This will execute all the tests in the tests directory and provide a summary of the results.

The primary source code is located in the bond_ai directory, and the test code is in the tests directory. This project uses Poetry for dependency management and setup.

Contributing

We welcome contributions to the Bond AI project! To contribute, please follow these steps:

  1. Fork the repository on GitHub.
  2. Clone your forked repository to your local machine:
git clone https://github.com/yourusername/bond-ai.git
cd bond-ai
  1. Create a new branch for your feature or bugfix:
git checkout -b your-feature-branch
  1. Make your changes and commit them with a descriptive message:
git add .
git commit -m "Description of your changes"
  1. Push your changes to your forked repository:
git push origin your-feature-branch
  1. Open a pull request on the original repository and describe your changes in detail.

Thank you for contributing!

Metadata

Release files for bondable 0.1.15

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bondable 0.1.15
File Size Uploaded
bondable-0.1.15.tar.gz 24.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bondable 0.1.15
File Interpreter ABI Platform
bondable-0.1.15-py3-none-any.whl Python 3 none any Details

Total release size: 55.5 kB

Release files / bondable-0.1.15.tar.gz

Download URL bondable-0.1.15.tar.gz
Size 24.1 kB
Tags Source
SHA-256 checksum
How to use checksums
c24f39d90e7c44a6b3b5646fa08b98d824417e8bf66db5c88b28a9bdbfb1edb1
BLAKE2b-256 checksum
How to use checksums
c603a246e758093e57235a7f7a21858876faf77f5e7bdd2560636fa3720a9776
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.2 CPython/3.13.2 Darwin/23.5.0

Release files / bondable-0.1.15-py3-none-any.whl

Download URL bondable-0.1.15-py3-none-any.whl
Size 31.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
00f64575358972e504d28207d025adc6aa7be91bb639adaa606d29683c31a606
BLAKE2b-256 checksum
How to use checksums
6b6bd09f6aea577cceddd7a3cfb2cf9b149e13534aa213ec2b554fd5a0f7c34b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.2 CPython/3.13.2 Darwin/23.5.0

Release history Release notifications | RSS feed

This release

0.1.15 This release

2 release files

0.1.14

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.11

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page