Welcome to Sieve!
The fastest way to build AI features.
What is Sieve?
Sieve is a platform built to help discover, design, and run AI features at scale. AI development is moving away from being predominantly about training & finetuning, and more towards how people combine models together to make specific use cases work. Our platform is the best development experience built around this growing trend.
Some features include:
- Pre-built, production-ready apps and models you can use in a single click or API call
- Build complex apps that use many models in a few lines of code
- Instant no-code interfaces for every app on Sieve, with zero extra configuration
- Reliable, horizontally scaling infrastructure based on traffic
- Powerful distributed primitives like queues and async jobs to parallelize data processing
Getting Started
Every account comes with $20 of credit to get you started:
pip install sievedata
- Login with your API key
sieve login
Building a simple AI translation app
Let’s build a simple translation function on Sieve. We’ll take in an input file (video or audio) + the target language and return the translated transcript.
To start off, let's make a new directory and file
mkdir simple_translation && cd simple_translation
And copy the following code into simple_translation/main.py
:
import sieve
@sieve.function(name="simple_translation")
def simple_translation(file: sieve.File, target_language: str = "spa") -> str:
"""
:param file: File to translate
:param target_language: Language code to translate to. Defaults to "spa" for Spanish.
"""
transcribe = sieve.function.get("sieve/speech_transcriber")
translate = sieve.function.get("sieve/seamless_text2text")
transcript = transcribe.run(file)
translated_segments = []
for segment in transcript:
translate_job = translate.push(
segment["text"],
source_language="eng",
target_language=target_language
)
translated_segments.append(translate_job)
translated_transcript = ""
for translated_seg in translated_segments:
translated_transcript += translated_seg.result()
return translated_transcript
Deploy to Sieve
sieve deploy
Your build should only take a few seconds, after which you’ll see a link to your newly deployed function on the Sieve dashboard.
Run a job
Navigate to your function on the Sieve dashboard and upload a sample file to test out your app.
You can also call your function via API call or the Python client.
<your-org-name>
with your org name and <your-api-key>
with your API key.What just happened?
That was easy! We just built a simple AI translation app in a few lines of code. Let’s walk through it.
At its core, we used 2 Sieve functions to build this app:
- sieve/speech_transcriber: Transcription model, backed by OpenAI’s Whisper model.
- sieve/seamless_text2text: Translation model, developed by Meta.
Sieve makes it easy to use any public Sieve functions in the cloud, synchronously or asynchronously.
We wrote all of our logic for translating a file in a single function and defined a custom Sieve function with the @sieve.function
decorator.
Deploying our function with sieve deploy
lets us run this function via API and lets us visualize our inputs & outputs via the Sieve dashboard!
What’s next?
All you need to get started with Sieve is an account. From there, you can decide what you’d like to do next.
Run AI apps with API
Run a production ready app on Sieve
Complex Applications
Build complex apps like video dubbing
Custom Functions
Deploy your own functions
Support
If you need any assistance or have any questions, feel free to join our Discord community. Looking forward to see what you build!
Was this page helpful?