aic-sdk - Python Bindings for ai-coustics SDK
Python wrapper for the ai-coustics audio enhancement, voice activity detection, and analysis SDK.
For comprehensive documentation, visit docs.ai-coustics.com.
[!NOTE] This SDK requires a license key. Generate your key at developers.ai-coustics.com.
Installation
pip install aic-sdk
Quick Start
import aic_sdk as aic
import numpy as np
import os
# Get your license key from the environment variable
license_key = os.environ["AIC_SDK_LICENSE"]
# Download and load a model (or download manually at https://artifacts.ai-coustics.io/)
model_path = aic.Model.download("quail-vf-2.2-l-16khz", "./models")
model = aic.Model.from_file(model_path)
# Get optimal configuration
config = aic.ProcessorConfig.optimal(model)
# Create and initialize processor in one step
processor = aic.Processor(model, license_key, config)
# Process audio (1D mono NumPy array)
audio_block = np.zeros(config.block_size, dtype=np.float32)
processed = processor.process(audio_block)
Usage
SDK Information
# Get SDK version
print(f"SDK version: {aic.get_sdk_version()}")
# Get compatible model version
print(f"Compatible model version: {aic.get_compatible_model_version()}")
Loading Models
Download models and find available IDs at artifacts.ai-coustics.io.
From File
model = aic.Model.from_file("path/to/model.aicmodel")
Download from CDN (Sync)
model_path = aic.Model.download("quail-vf-2.2-l-16khz", "./models")
model = aic.Model.from_file(model_path)
Download from CDN (Async)
model_path = await aic.Model.download_async("quail-vf-2.2-l-16khz", "./models")
model = aic.Model.from_file(model_path)
Model Information
# Get model ID
model_id = model.get_id()
# Get optimal sample rate for the model
optimal_rate = model.get_optimal_sample_rate()
# Get optimal block size for a specific sample rate
optimal_block_size = model.get_optimal_block_size(48000)
Configuring the Processor
# Get optimal configuration for the model
config = aic.ProcessorConfig.optimal(model, variable_block_size=False)
print(config) # ProcessorConfig(sample_rate=48000, block_size=480, variable_block_size=False)
# Or create from scratch
config = aic.ProcessorConfig(
sample_rate=48000,
block_size=480,
variable_block_size=False, # when True, calls may be shorter than block_size
)
# Option 1: Create and initialize in one step
processor = aic.Processor(model, license_key, config)
# Option 2: Create first, then initialize separately
processor = aic.Processor(model, license_key)
processor.initialize(config)
OpenTelemetry Configuration
Pass an OtelConfig to override telemetry settings for a single processor or VAD instance,
independently of the AIC_SDK_OTEL_ENABLE environment variable:
# Disable telemetry for this processor
processor = aic.Processor(model, license_key, otel_config=aic.OtelConfig(enable=False))
# Enable with a session ID and custom export interval
processor = aic.Processor(
model,
license_key,
otel_config=aic.OtelConfig(
enable=True, session_id="my-session", export_interval_ms=5_000
),
)
The same otel_config parameter is available on ProcessorAsync, Vad, and VadAsync.
Processing Audio
# Synchronous processing
import numpy as np
# Create audio block (1D mono NumPy array)
audio = np.zeros(config.block_size, dtype=np.float32)
# Process
processed = processor.process(audio)
Ending a Session
Telemetry sessions end automatically when their object is destroyed. To end one at a specific
lifecycle event, call processor.terminate_session(), vad.terminate_session(), or
analyzer.terminate_session(). Async processors and VADs expose terminate_session_async().
After explicit termination, that object cannot process or analyze more audio.
Processor Context
The processor context provides thread-safe access to processor parameters and state. You can create multiple contexts and use them from any thread for concurrent parameter updates.
# Get processor context
proc_ctx = processor.get_context()
# Get the delay applied to the audio in samples
delay = proc_ctx.get_audio_delay()
# Reset processor state (clears internal buffers)
proc_ctx.reset()
# Set enhancement parameters
proc_ctx.set_parameter(aic.ProcessorParameter.EnhancementLevel, 0.8)
proc_ctx.set_parameter(aic.ProcessorParameter.Bypass, 0.0)
# Get parameter values
level = proc_ctx.get_parameter(aic.ProcessorParameter.EnhancementLevel)
print(f"Enhancement level: {level}")
Async API
import asyncio
import numpy as np
import aic_sdk as aic
async def process_audio():
# Download and load model (or download manually at https://artifacts.ai-coustics.io/)
model_path = await aic.Model.download_async("quail-vf-2.2-l-16khz", "./models")
model = aic.Model.from_file(model_path)
# Get optimal config
config = aic.ProcessorConfig.optimal(model)
# Create and initialize async processor in one step
processor = aic.ProcessorAsync(model, "your-license-key", config)
# Get processor context
proc_ctx = processor.get_context()
# Process audio (1D mono NumPy array)
audio = np.zeros(config.block_size, dtype=np.float32)
result = await processor.process_async(audio)
# Process multiple blocks concurrently
blocks = [np.random.randn(config.block_size).astype(np.float32) for _ in range(4)]
results = await asyncio.gather(*[processor.process_async(block) for block in blocks])
asyncio.run(process_audio())
Voice Activity Detection (VAD)
VAD uses a separate Vad instance and a dedicated VAD model. Enhancement models are accepted by
Processor, while VAD models such as vad-2.1-xxs-16khz are accepted by Vad.
vad_model_path = aic.Model.download("vad-2.1-xxs-16khz", "./models")
vad_model = aic.Model.from_file(vad_model_path)
vad_config = aic.ProcessorConfig.optimal(vad_model)
vad = aic.Vad(vad_model, license_key, vad_config)
vad_ctx = vad.get_context()
# The context is thread-safe; multiple contexts can control the VAD from any thread.
# Sensitivity is a speech-probability threshold in the 0.0-1.0 range.
vad_ctx.set_parameter(aic.VadParameter.Sensitivity, 0.5)
vad_ctx.set_parameter(aic.VadParameter.SpeechHoldDuration, 0.05)
vad_ctx.set_parameter(aic.VadParameter.MinimumSpeechDuration, 0.0)
# Processing does not modify the audio and returns nothing; it only updates the prediction.
audio_block = np.zeros(vad_config.block_size, dtype=np.float32)
vad.process(audio_block)
print(f"Speech detected: {vad_ctx.is_speech_detected()}")
print(f"Raw probability: {vad_ctx.raw_vad_probability()}")
# How many samples the prediction lags behind the input. This delay is not applied to the
# audio, `Vad.process()` leaves the buffer untouched.
print(f"Prediction delay: {vad_ctx.get_prediction_delay()} samples")
# Clear state after a stream interruption.
vad_ctx.reset()
When enhancement and VAD run together, feed the VAD the original input audio, not the processor's enhanced output. Run both on the same block instead of chaining them:
audio_block = np.zeros(config.block_size, dtype=np.float32)
vad.process(audio_block) # reads the block, does not modify it
enhanced = processor.process(audio_block) # enhances the same original block
Enhancement is designed to change the signal, so running the VAD on its output means detecting speech in audio that no longer matches what the VAD model expects, and it stacks the processor's audio delay on top of the VAD's prediction delay.
VadAsync provides matching initialize_async(), process_async(), and
terminate_session_async() methods.
Audio Analysis
The analysis API runs the Tyto analysis model to score audio quality, predicting the likelihood
of failure of downstream models (speech-to-text, VAD, turn-taking, speech-to-speech). Each
AnalysisResult exposes seven scores in the 0.0–1.0 range (lower is less problematic, except
speaker_loudness): risk_score, speaker_reverb, speaker_loudness, interfering_speech,
noise, codec_degradation, and packet_loss.
Whole-file analysis
FileAnalyzer analyzes a mono buffer that is already loaded in memory, returning one result per
five-second window:
import numpy as np
import aic_sdk as aic
# Use an analysis model (Tyto), not an enhancement model.
model = aic.Model.from_file(aic.Model.download("tyto-1.1-l-16khz", "./models"))
analyzer = aic.FileAnalyzer(model, license_key)
# audio: 1D mono float32 NumPy array
sample_rate = 16000
results = analyzer.analyze(audio, sample_rate) # optional: step_samples=sample_rate * 5
for result in results:
print(f"Risk score: {result.risk_score}")
Streaming analysis
For streaming use, analyzer_pair() returns a Collector (buffers audio, safe to call from the
audio thread) and an Analyzer (runs the model off the audio thread):
collector, analyzer = aic.analyzer_pair(model, license_key)
config = aic.ProcessorConfig.optimal(model)
collector.initialize(config)
# Buffer audio (1D mono NumPy array) as it arrives.
collector.buffer(np.zeros(config.block_size, dtype=np.float32))
# Run the analysis off the audio thread.
result = analyzer.analyze_buffered()
print(f"Risk score: {result.risk_score}")
# End the analyzer telemetry session early when no more analysis is needed.
analyzer.terminate_session()
When to Use Sync vs Async
Processor(sync): Simple scripts, command-line tools, batch processingProcessorAsync(async): Web servers, real-time applications, concurrent stream processing
ProcessorAsync runs CPU-bound work on a dedicated Rayon
thread pool. By default the pool is sized to the number of logical cores reported
by the OS. Set the AIC_NUM_THREADS environment variable to override the worker
count, for example AIC_NUM_THREADS=2 caps concurrent processing at two threads.
Error Handling
The SDK provides specific exception types for different error conditions. All exceptions include a message attribute with details about the error.
Catching Specific Errors
import aic_sdk as aic
try:
processor = aic.Processor(model, license_key, config)
except aic.LicenseFormatInvalidError as e:
print(f"Invalid license format: {e.message}")
except aic.LicenseExpiredError as e:
print(f"License expired: {e.message}")
except aic.ModelInvalidError as e:
print(f"Invalid model: {e.message}")
Catching Multiple Error Types
try:
processor = aic.Processor(model, license_key, config)
except (aic.LicenseFormatInvalidError, aic.LicenseExpiredError) as e:
print(f"License error: {e.message}")
except (aic.ModelInvalidError, aic.ModelVersionUnsupportedError) as e:
print(f"Model error: {e.message}")
For a complete list of all available exception types and their descriptions, see the type stubs file.
Examples
See enhancement.py or enhancement_async.py for complete synchronous and asynchronous speech enhancement examples.
For a complete file enhancement example with parallel processing, see enhance_files.py.
For a voice-activity-detection example using a dedicated VAD model, see vad.py.
For an audio-analysis example that scores an audio file with the Tyto model, see analyze_file.py.
For a benchmarking example that tests how many concurrent processing sessions your CPU can support, see benchmark.py.
Documentation
- Full Documentation: docs.ai-coustics.com
- Python API Reference: See the type stubs for detailed type information
- Available Models: artifacts.ai-coustics.io
License
This Python wrapper is distributed under the Apache 2.0 license. The core C SDK is distributed under the proprietary AIC-SDK license.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aic_sdk-3.1.0.tar.gz.
File metadata
- Download URL: aic_sdk-3.1.0.tar.gz
- Upload date:
- Size: 1.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0bf10876bede317af84ad7455dcf780a848466ced704e6079f9877ec44f36562
|
|
| MD5 |
e73a2806a48978548a52c7ccf6ba9528
|
|
| BLAKE2b-256 |
b042c1d8fd7993bb940b8f0de82ce14bfa0efe779242b49919c49744807e1fd3
|
File details
Details for the file aic_sdk-3.1.0-cp314-cp314-win_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp314-cp314-win_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.14, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
17247b9a177cf0eb0f601479970639bf44ca37e18c976e2314f332579b9a7c56
|
|
| MD5 |
30f54d61b047f3b6188206322a31b5d5
|
|
| BLAKE2b-256 |
27b307f7e51185795707640dc6e55bf881682a4a992f83f0714c80a0aeef70ba
|
File details
Details for the file aic_sdk-3.1.0-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 3.7 MB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5cee9782fb1ed2beb6b218e199df1644b11627cb62649b9b1c05485f8bd23532
|
|
| MD5 |
32c0c54948328b53620f8e90107d844d
|
|
| BLAKE2b-256 |
fc75d9042f9e0fc7dc30f42bca094ced5863aacaeffbd4194e9628e43988a7f0
|
File details
Details for the file aic_sdk-3.1.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.14, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
813ef816ba66b424e01058243a243dca494ec3160be1e163f51c39ec4148fac4
|
|
| MD5 |
a2e2ec21d0299148e93ea75a80b457a7
|
|
| BLAKE2b-256 |
51e15baf9c75c195d9aa22afe21d6f4051fdcb4ecb9adadfd67246a207691aff
|
File details
Details for the file aic_sdk-3.1.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.14, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6743ac35a02948aaf1a0b8495d5cb5efc3c1695b5bdfe53461b801076d647a8
|
|
| MD5 |
b92117625fe0dbfeab707e02e23a8b07
|
|
| BLAKE2b-256 |
13f1bc5e54fc1d0b23bee06263afb9bfadf1f47324867a8dc3c4a3767fc50620
|
File details
Details for the file aic_sdk-3.1.0-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
359595d3c0383dcbaa825ebddbcc168cc14b9ab3e9ca651a6e2f8bfc08c91ff5
|
|
| MD5 |
9958dc491f6871d05e9fb0bb4d12467a
|
|
| BLAKE2b-256 |
45c5e8c860592dadc39efb04f4554582500916b8d7818ab7a5097485d719f713
|
File details
Details for the file aic_sdk-3.1.0-cp314-cp314-macosx_10_12_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp314-cp314-macosx_10_12_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.14, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
552b71459f75bea9798d96023639eff29cb9be4c2b05529e71f20837d5e58dea
|
|
| MD5 |
037404411954cb76c0bf8ea9d8f1c4c5
|
|
| BLAKE2b-256 |
93176a595716b25683f570643a8e0d53b4c81817c5b4486d44045b7b3cc1e1b9
|
File details
Details for the file aic_sdk-3.1.0-cp313-cp313-win_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp313-cp313-win_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.13, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3b955d947dedd59ab8796a740231d7b3a154429ad5cc3a8608f904b23495860e
|
|
| MD5 |
011c46b2da80d7487d5176b7234d5bd3
|
|
| BLAKE2b-256 |
8cc7815403239e8d7a782e1024047ff9730cd4552eac396e2bb0856914c0e4a3
|
File details
Details for the file aic_sdk-3.1.0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 3.7 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ceb09fa228acc1dd9234b18a96e1dc99a02743da5de757c4d78bbdb1f33f04c
|
|
| MD5 |
c822df8dc92b8bb72e298e4bf370ccdc
|
|
| BLAKE2b-256 |
de2a16cf09474509c6906edd1476a7ea14a35a11dfbe416b4edb6d0dcbb58763
|
File details
Details for the file aic_sdk-3.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d25a12c379ef24373b42a3de36e79c0fe482d8e3b29e75e2c4200611e068b63f
|
|
| MD5 |
3c816c3abe2e0f3f5c2409eee5d106cf
|
|
| BLAKE2b-256 |
21be7964e50a95b8f70e4375c9a237254d73db17b44e5e419acf43f6405bfd46
|
File details
Details for the file aic_sdk-3.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
152562a8efec472daec555ef3d1c65812e91c601a5d6578de9d19237e7376ca8
|
|
| MD5 |
f75a05ecb2597fa2d4693be54974c0fd
|
|
| BLAKE2b-256 |
eb106a862ce66fa8937f5f7bdd6c4525e819441b5e48b43501d68ac0dd856f2a
|
File details
Details for the file aic_sdk-3.1.0-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7464ff6cdbc7bcb2584c1770253cfb730331c7fb45afb9b3f3d5e249c67828a
|
|
| MD5 |
7cce6e4c26b66211034d4a43ef53f2c0
|
|
| BLAKE2b-256 |
7a125a7f1d5542c61444760a6672a08f295ffa1707a0ad3932f1a1333ae15346
|
File details
Details for the file aic_sdk-3.1.0-cp313-cp313-macosx_10_12_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp313-cp313-macosx_10_12_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.13, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec4ddc31e17a1310017fda428f3a2431efc72e2fdee999e03d8f6f2f7d861a6e
|
|
| MD5 |
274fcd85383e9b75682a0814799e5a2e
|
|
| BLAKE2b-256 |
c0531409b8193276d0b2ae03290423645a5a423e965b9829a9bee36c74440144
|
File details
Details for the file aic_sdk-3.1.0-cp312-cp312-win_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp312-cp312-win_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.12, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce7bd2cf9fae8e472cd8f5df7600b680cfd488d01e9d5e4afe82d509d74201cd
|
|
| MD5 |
84faf94c165300c2c234c3b9a6b75160
|
|
| BLAKE2b-256 |
e2f55c71fe22015a1b788af09e644d4584a8e4fe542090200cdfefae7b906fe1
|
File details
Details for the file aic_sdk-3.1.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 3.7 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9cf38efac52c443e2e883864db8e5717e4d542854e82cec1f65290f46b20221
|
|
| MD5 |
b09212a79e8d42e08728c3c533a5826d
|
|
| BLAKE2b-256 |
51a04d7bce7aada41f702d39db94e1b66a9c02d5d42586cf97cc2d129887cae1
|
File details
Details for the file aic_sdk-3.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
14a52e0942399f588be36dedcf4336133406dfb328f9e21830f2d3633503fd84
|
|
| MD5 |
739762a17b8806782dd2e02bf07b2135
|
|
| BLAKE2b-256 |
1815026e56bf4b76f0f6ea713a7d77eaca039e2dd1c96e52ba6ae5985bec62b8
|
File details
Details for the file aic_sdk-3.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e12ae1720264556a80bf988baf3f9eb25aae0a5e8ffddb6926c473d8066219c
|
|
| MD5 |
1baceb1cbefff1e59c13edf51871a75e
|
|
| BLAKE2b-256 |
607dd3e8bad88eaf0854c895fa094e3d493908dd9b69443793c77d0441a13c03
|
File details
Details for the file aic_sdk-3.1.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2fe8ff2eb82384792e41ddeb49b2563ae20439e966d40948421d6e441f3a06da
|
|
| MD5 |
e369741a413ba39e9b5623e2833e4273
|
|
| BLAKE2b-256 |
7f815187f25d003e77e80cb4580ce7d537fa6927f2046346c6ef5d4aeae6b26c
|
File details
Details for the file aic_sdk-3.1.0-cp312-cp312-macosx_10_12_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp312-cp312-macosx_10_12_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.12, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce8f1278c6c6167bb63cd1c30814f9032f63d33bc8afdd046ff412f0a1836294
|
|
| MD5 |
d3ea7ce104a52f0587b759d8e6f3639f
|
|
| BLAKE2b-256 |
4588c801ecb0193f41210998e6200cd977470e67d09203c7018ce2977d74e79e
|
File details
Details for the file aic_sdk-3.1.0-cp311-cp311-win_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp311-cp311-win_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.11, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
03fd0016e5cd6714b353af4c769621c3522f06844f473e2359f12d876a7d1e91
|
|
| MD5 |
cb862753be1d5e0905e665611affcee7
|
|
| BLAKE2b-256 |
384f3f17d0ffc7afb351408af9d8957579f3640e18a2e3501c3c15e71641e8cc
|
File details
Details for the file aic_sdk-3.1.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 3.7 MB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fa2d53249b7e31998ae0ab336fbe20727161381eae8a8724d47fe35941515f96
|
|
| MD5 |
796bc35477ec6d83cdb6f2792a22e07a
|
|
| BLAKE2b-256 |
0a75a497a18e4115c54088708ca23f0cdc44592781766fcd9e755835b88c981d
|
File details
Details for the file aic_sdk-3.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5495d34d96e4c9a095a14f4606b599443aaa25b1dcb0944cae2498f4192e5287
|
|
| MD5 |
0f46c062fba823986880490de07c4e69
|
|
| BLAKE2b-256 |
78fd4f7e15f1b1cabf37f5f52f066b3a44346c1fddbe049831972bfd40cc0d41
|
File details
Details for the file aic_sdk-3.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ae970326aae98d397dee3522c77b6f97b59e961451f16978409f6eff87656f6
|
|
| MD5 |
7ebb97be540be233aa60106320a12a8a
|
|
| BLAKE2b-256 |
47b34377b3d1feeb53c48597e725122bf2fdfea23a1ff92e1ef4e13c64d22d95
|
File details
Details for the file aic_sdk-3.1.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e0cb94344e021a08529f90250f4018547abc315151dc1a7d12c0ebcdf1ff0799
|
|
| MD5 |
dffd95c6f42f1addb7a9fc94fbc4ddba
|
|
| BLAKE2b-256 |
c6fe9b22c5fa4758c394b5b994f2e346eb75f9681b0a79ff289a1c0e51b2d0e3
|
File details
Details for the file aic_sdk-3.1.0-cp311-cp311-macosx_10_12_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp311-cp311-macosx_10_12_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.11, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a460832d87169b57246cef2e470924d677d6dec0bab94db2b0c934adec0e15e7
|
|
| MD5 |
0aa596ebdb1ba8ac842a4a3246f07b58
|
|
| BLAKE2b-256 |
d038edc148c8683a47195ca58d9e8bf79871d572205504726fb5c295b669862f
|
File details
Details for the file aic_sdk-3.1.0-cp310-cp310-win_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp310-cp310-win_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.10, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e045fca63c4e098a108f63649995cb217ae07be19aba8a8a6bc3013d9adedb7f
|
|
| MD5 |
8fe96415e08bca8db2d62c89f1c376ad
|
|
| BLAKE2b-256 |
15c97e822d791a4d1e5a454bb150524fa03fe335962e1cd63db9bfe16a765b95
|
File details
Details for the file aic_sdk-3.1.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 3.7 MB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57befda19b517f380b6b566ffe928ce2abb101f570e58ee01a638ac1f8ebf7b9
|
|
| MD5 |
6c0432e52360f39e42594d0317f816cf
|
|
| BLAKE2b-256 |
0c871dcc5be45b44d76d85e9b2280cdda72b28610d63d6939f1be0d0cc82465b
|
File details
Details for the file aic_sdk-3.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ef24957d97bee873858f0ff4395bd0ca91935b17c4af36087f56c811050f8ce0
|
|
| MD5 |
7a6a89b3bda7e4e54bb602cda209afa9
|
|
| BLAKE2b-256 |
8b208a24ec8e533ab72c8488ff4229ad36dadbcdc3644798212cc0a26d617bd8
|
File details
Details for the file aic_sdk-3.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88ecf5ee84512a018a3102c997854b8972b66c7d63171912be0c5692180541af
|
|
| MD5 |
a3426e2ddb86632933c28fa6b97d3283
|
|
| BLAKE2b-256 |
b8169f2b467ed81f741006b8b538b715ee92606472cce9948a7a8d9b0d96f597
|
File details
Details for the file aic_sdk-3.1.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.6 MB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb99911d4900c9526e2bb08ffb9fbe55b2a71efa816a1b22359d2e217d3f8794
|
|
| MD5 |
eb21d963ebe02a08e3f28f976d43d11e
|
|
| BLAKE2b-256 |
8ada9f837c42e0d668ae82cfbf444367cda58199e44b9ae11a9a95a527e22a54
|
File details
Details for the file aic_sdk-3.1.0-cp310-cp310-macosx_10_12_x86_64.whl.
File metadata
- Download URL: aic_sdk-3.1.0-cp310-cp310-macosx_10_12_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.10, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9bae2370f770723db6654a343bf71462a7e3365f78932bf8fd8d2f24626f91cc
|
|
| MD5 |
5a6e185da148e4274c4199cbeeaccc0f
|
|
| BLAKE2b-256 |
8346401ca61fa723524a65675b8be12dadd2bb75539934410d65c09451578a9e
|