Build automated decision making workflows by aggregating your AI models and data into one api.
Project description
The easiest way to build custom decision making workflows
Docs »
Examples
Join the waitlist
·
Report Bug
·
Community Discord
⭐ Can you show me an example?
In your code you can write:
Apollo.connect('postgres://username:password@hostnam...', ...) // Starts syncing content forever!
Apollo.use('OpenAI', "moderation", ...) // Connect to existing providers!
Apollo.rule('Phrase1', '>=', '0.8') // Create custom rules!
Apollo.use('Apollo', "violence", ...) // Connect with our internal models!
// Detect bad actors at scale!
Apollo.detectImage('Image1', 'contains', 'VERY_LIKELY') // Image Analysis/OCR
Apollo.detectSpeech('Audio1', 'contains', 'UNLIKELY') // Audio Processing
Apollo.detectVideo('Video1', 'contains', 'POSSIBLE') // Video Analysis
Apollo.detectText('Phrase1', 'contains', 'UNKNOWN') // Text Analysis
Apollo then takes care of:
- Detecting real-time changes in user experience
- Automated detection against image, video, audio or text
- Connecting policy to product
- Making sure your integration is robust, so you never again have to worry about stuck/stale data or false-positives
🧑💻 Cool, what can I build with it?
- Trust & Safety teams in companies use Apollo to build native in-app connections related to active response, content moderation, fraud detection, etc.
- Some automate their personal lives with Apollo by integrating against discord communities or other decentralized networks for safety
- Apollo can help you quickly build trust for hobby projects, communities or business
🚀 Interesting, how can I try it?
Let's setup your first Integration in 2 minutes!
It will pull from your local database (and keep it in sync).
To start:
# install the cli-toolkit
pip install apollo-sdk
# enter a python repl or create a python file, up to you! (repl is easiest)
python3
# import the package
from apollo.client import Apollo
# sync data from your database instance
# (we support supabase at the current moment or postgresql via uri format)
Apollo.connect("postgres://username:password@hostname:port/database_name")
# If you want to test out operation on your external connection
Apollo.fetch_tables()
Apollo.query("desc", "table", "column")
Test sending your content to our API!
...and create a workflow with a simple command:
# import the package
from apollo.client import Apollo
# Use our custom model to test building decisions
Apollo.use("apollo", token="YOUR_API_TOKEN_HERE")
# We support video, speech, image and text. Try text!
Apollo.detectText("Phrase1", "contains", "Threats")
That's all it takes!
That's all it takes! You can check out more on our notion page.
In practice, you probably want to use one of our native SDKs to interact with Apollo's API or use our custom browser client so you dont have to write code. If so, ping us at adrian@apolloapi.io!
Contributing
📦 pre-commit config
As an open source project, Apollo welcomes contributions from the community at large. This isn’t an exhaustive reference and is a living document subject to change as needed when the project formalizes any practice or pattern.
Clone the repo and start Apollo locally...
git clone https://github.com/apolloapi/apolloapi.git
cd apolloapi && python3 -m venv env && source env/bin/activate && pip install -r requirements.txt
- After installing system dependencies be sure to install pre-commit for lint checks
pip install pre-commit
pre-commit install
pre-commit run --all-files
Apollo uses commit messages for automated generation of project changelog. For every pull request we request contributors to be compliant with the following commit message notation.
<type>: <summary>
<body>
Accepted <type>
values:
- new = newly implemented user-facing features
- chg = changes in existing user-facing features
- fix = user-facing bugfixes
- oth = other changes which users should know about
- dev = any developer-facing changes, regardless of new/chg/fix status
Summary (The first line)
The first line should not be longer than 75 characters, the second line is always blank and other lines should be wrapped at 80 characters.
🔍 Neat, I would like to learn more
⭐ Follow our development by starring us here on GitHub ⭐
- Share feedback or ask questions on the Discord community
- Chat with a member of the team 👋
- Check our blog on Trust & Safety
- Look at our docs on how to get started here!
NOTES CLI TEST
- set env variables for provider (openai) either in .env file or by exports
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for apollo_sdk-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18c59919f943425a21b91d6a7ee7469f5b790be4741831abf77c8183fc1cf93d |
|
MD5 | 8bec1aab1cf459e38588d95bf5580659 |
|
BLAKE2b-256 | 26188bfd274b13286f7b255725064dd8cae583de678fb6098f344a2fc803d294 |