Git Product home page Git Product logo

kitsai's Introduction

Unofficial Kits.AI API Implementation

kitsai is a Python package designed to streamline interactions with the Kits.AI API, offering convenient functionalities for voice models, voice conversions, vocal separations, and text-to-speech (TTS) tasks.

Installation

Install kitsai via pip:

pip install kitsai

Publish to PyPi

python setup.py sdist bdist_wheel
twine upload dist/*

Usage

Rate Limits

Current rate limits are set at 1000 GET requests per user each minute and 5 POST requests per user each minute for POST requests.

Rate limits are subject to change after our Alpha period.

Authentication

To utilize any functions within this package, authentication via your API key is necessary. Simply invoke the login function from the token module, providing your API key as an argument.

from kitsai import login

api_key = "YOUR_API_KEY_HERE"
login(api_key)

You can generate an API key by signing up on the https://app.kits.ai/api-access website.

Voice Models

Fetch Voice Models

Retrieve a list of available voice models.

from kitsai import fetch_voice_models

voice_models = fetch_voice_models(order="asc", page=1, per_page=10, my_models=False, instruments=False)

Fetch Voice Model by ID

Fetch details of a specific voice model using its ID.

from kitsai import fetch_voice_model_by_id

voice_model_id = 123
voice_model = fetch_voice_model_by_id(voice_model_id)

Voice Conversions

Create Voice Conversion

Initiate a voice conversion task with specified parameters.

from kitsai import create_voice_conversion

response = create_voice_conversion(
    voice_model_id=123,
    sound_file=open('input.wav', 'rb'),
    backing_sound_file=open('backing.wav', 'rb'),
    conversion_strength=0.5,
    model_volume_mix=0.8,
    pitch_shift=2,
    pre={
        "noiseGate": {
            "thresholdDb": -30,
            "ratio": 2,
            "attackMs": 10,
            "releaseMs": 20
        },
        "highPassFilter": {
            "cutoffFrequencyHz": 1000
        }
    }
)

Fetch Voice Conversion by ID

Retrieve details of a specific voice conversion task using its ID.

from kitsai import fetch_voice_conversion_by_id

voice_conversion = fetch_voice_conversion_by_id("JOB_ID_HERE")

Fetch Voice Conversions

Retrieve a list of voice conversion tasks.

from kitsai import fetch_voice_conversions

voice_conversions = fetch_voice_conversions(order="asc", page=1, per_page=10)

Vocal Separations

Create Vocal Separation

Initiate a vocal separation task with an audio input.

from kitsai import create_vocal_separation

response = create_vocal_separation(
    sound_file=open('input.wav', 'rb')
)

Fetch Vocal Separation by ID

Retrieve details of a specific vocal separation task using its ID.

from kitsai import fetch_vocal_separation_by_id

vocal_separation = fetch_vocal_separation_by_id("JOB_ID_HERE")

Fetch Vocal Separations

Retrieve a list of vocal separation tasks.

from kitsai import fetch_vocal_separations

vocal_separations = fetch_vocal_separations(order="asc", page=1, per_page=10)

Text-to-Speech (TTS)

Create TTS

Generate text-to-speech output using a specified voice model and input text.

from kitsai import create_tts

response = create_tts(
    voice_model_id=123,
    input_tts_text="Hello, how are you?"
)

Fetch TTS by ID

Retrieve details of a specific text-to-speech task using its ID.

from kitsai import fetch_tts_by_id

tts_job = fetch_tts_by_id("JOB_ID_HERE")

Fetch TTS

Retrieve a list of text-to-speech tasks.

from kitsai import fetch_tts

tts_jobs = fetch_tts(order="asc", page=1, per_page=10)

License

This project is licensed under the Attribution-NonCommercial 4.0 International - see the LICENSE file for details.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.